JP2021099862A - Improvement of dialog with electronic chat interface - Google Patents

Improvement of dialog with electronic chat interface Download PDF

Info

Publication number
JP2021099862A
JP2021099862A JP2021038250A JP2021038250A JP2021099862A JP 2021099862 A JP2021099862 A JP 2021099862A JP 2021038250 A JP2021038250 A JP 2021038250A JP 2021038250 A JP2021038250 A JP 2021038250A JP 2021099862 A JP2021099862 A JP 2021099862A
Authority
JP
Japan
Prior art keywords
session
content provider
user
chat
party content
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2021038250A
Other languages
Japanese (ja)
Other versions
JP7124151B2 (en
Inventor
スリラム・バルガフ・カルナティ
Bhargav Karnati Sriram
ヴァルン・サウンダララジャン
Soundararajan Varun
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.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Priority to JP2021038250A priority Critical patent/JP7124151B2/en
Publication of JP2021099862A publication Critical patent/JP2021099862A/en
Priority to JP2022128163A priority patent/JP7459185B2/en
Application granted granted Critical
Publication of JP7124151B2 publication Critical patent/JP7124151B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3343Query execution using phonetics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/02User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • Acoustics & Sound (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

To provide a method of improving dialog with an electronic chat interface, and a device and a communication server connected to a network.SOLUTION: A method includes: acquiring, by a communication server, a search result by receiving verbal input through a portable information terminal from a user; detecting that a web resource corresponding to one search result includes a user interface element that starts connecting to a live chat system based on web resource analysis provided by a third party content provider; thereby determining to provide live interactive assistance through a chat user interface; providing the user with an option to start a chat session when the search result is transmitted to the user, without requiring the user to make a first request to the web resource; receiving affirmation of starting a chat session; and starting the chat session between the user and an agent of the content provider.SELECTED DRAWING: Figure 1

Description

本文書は、リソースまたはコンテンツへのアクセスを提供するコンテンツプロバイダとユーザが通信できるチャットインタフェースに関する。チャットインタフェースは、コンテンツプロバイダにわたって一貫していないことがあり、異なる仕方で実装および提示されることがある。更には、従来のチャットインタフェースがモバイルデバイス上で提示されるときに、機能性の一部または全体が損失することもある。加えて、チャットセッションが切断されると、頼みとするものがほとんどない。 This document relates to a chat interface that allows users to communicate with content providers that provide access to resources or content. Chat interfaces may be inconsistent across content providers and may be implemented and presented in different ways. Moreover, some or all of the functionality may be lost when a traditional chat interface is presented on a mobile device. In addition, when a chat session is disconnected, there is little to rely on.

概して、本明細書に記載される主題の1つの革新的な態様は、通信サーバによって、ユーザからコンテンツの検索要求を受信するステップと、検索要求に応じて通信サーバによって、表示ウェブページ上の複数の選択可能なコンテンツ項目の形態で検索結果を得るステップであって、各々の選択可能なコンテンツ項目が、検索要求に関連付けられたそれぞれのウェブリソースへのリンクを含む、ステップとを含む方法で具象化可能である。本方法は、複数のウェブリソースの特性に関するデータベースから得られる情報に基づいて通信サーバによって、特定のウェブリソースが特定のウェブリソース上の特定のチャットユーザインタフェースを通じて特定のサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供すると判定するステップと、上記特定のウェブリソースに対して、表示ウェブページ上にチャットインタフェースを自動的に提供するステップであって、チャットインタフェースが、表示ウェブページ上のそれぞれの選択可能なコンテンツ項目に隣接した表示のために通信サーバによって描画および/または制御される、ステップとを含む。表示ウェブページからのチャットインタフェースとのユーザ対話に応答して、通信サーバは、ユーザと特定のウェブリソースに関連付けられた特定のサードパーティコンテンツプロバイダとの間のチャットセッションを開始する。 In general, one innovative aspect of the subject matter described herein is the step of receiving a content search request from a user by a communication server and multiple display on a web page by the communication server in response to the search request. Steps to obtain search results in the form of selectable content items in, each selectable content item embodied in a way that includes steps, including links to the respective web resources associated with the search request. It can be converted. This method provides live assistance by a particular third-party content provider through a particular chat user interface on a particular web resource by a communication server based on information obtained from a database of the characteristics of multiple web resources. A step that determines that the functionality is provided for the above, and a step that automatically provides a chat interface on the display web page for the specific web resource described above, wherein each of the chat interfaces is on the display web page. Includes steps that are drawn and / or controlled by the communication server for display adjacent to selectable content items. In response to a user interaction with a chat interface from a displayed web page, the communication server initiates a chat session between the user and a particular third-party content provider associated with a particular web resource.

これらおよび他の実施形態は各々、以下の特徴の1つまたは複数を任意選択で含むことができる。一部の実装例では、本方法は、複数のウェブリソースに関するデータベースエントリを有するデータベースにデータ設定する(populate)ステップを含む。データベースにデータ設定するステップは、上記複数のウェブページの各々に対して、通信サーバにおいて、それぞれのウェブリソースの特性を示すデータを受信するステップと、通信サーバによって、受信したデータに基づいて、それぞれのウェブリソースがそれぞれのウェブリソース上のチャットユーザインタフェースを通じてサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供すると検出するステップと、通信サーバによって、データベースに、それぞれのウェブリソースが同機能性を有することを示すエントリを記憶するステップとを含む。データベースにデータ設定するためのステップは、データベースにまだ含まれていないウェブページに対するデータを獲得するために定期的に行われる。 Each of these and other embodiments may optionally include one or more of the following features: In some implementations, the method includes populating a database that has database entries for multiple web resources. The steps for setting data in the database are a step of receiving data indicating the characteristics of each web resource on the communication server for each of the above-mentioned plurality of web pages, and a step of receiving data by the communication server, respectively. The steps to detect that a web resource provides functionality for live assistance by a third-party content provider through a chat user interface on each web resource, and the communication server provides the database with the same functionality for each web resource. Includes a step of storing an entry indicating that it has. Steps to populate the database are performed on a regular basis to acquire data for web pages that are not yet contained in the database.

一部の実装例では、チャットセッションは、通信サーバとユーザとの間の第1のセッション、および通信サーバとサードパーティコンテンツプロバイダとの間の第2のセッションを含む。一部の実装例では、本方法は、通信システムによって、所定の期間の間チャットセッションのアクティビティがないと検出するステップと、通信システムによって、第1のセッションまたは第2のセッションの少なくとも1つが終了したと検出するステップと、通信システムによって、チャットセッションのコンテキストデータに基づいて、ユーザがチャットセッションを完了していないと判定するステップと、データベースに、第1のセッションの全体を示すデータを記憶するステップと、通信システムによって、第2のセッションが終了したとの検出に応じて、チャットセッションの一部として通信サーバとサードパーティコンテンツプロバイダとの間の第3のセッションを開始するステップと、通信システムによって、サードパーティコンテンツプロバイダに、ユーザがサードパーティコンテンツプロバイダとのチャットセッションを再開できるように第1のセッションの少なくとも一部分を示すデータを提供するステップとを含むことができる。 In some implementations, the chat session includes a first session between the communication server and the user and a second session between the communication server and the third party content provider. In some implementations, the method detects by the communication system that there is no activity in the chat session for a given period of time, and the communication system terminates at least one of the first or second sessions. The step of detecting that the user has completed the chat session, the step of determining that the user has not completed the chat session based on the context data of the chat session by the communication system, and the data indicating the entire first session are stored in the database. A step and a communication system that initiates a third session between the communication server and a third-party content provider as part of a chat session in response to detection by the communication system that the second session has ended. This may include providing the third party content provider with data indicating at least a portion of the first session so that the user can resume the chat session with the third party content provider.

一部の実装例では、本方法は、通信サーバにおいて、ユーザから、チャットユーザインタフェースを通じて第1のセッションへの入力を受信するステップと、通信サーバによって、サードパーティコンテンツプロバイダに、第2のセッションへのユーザ入力を示すデータを提供するステップとを含む。一部の実装例では、特定のウェブリソースにアクセスする要求は音声入力を含む。一部の実装例では、本方法は、通信システムによって、ユーザから、第1のセッションにおいて第2の音声入力を受信するステップと、サードパーティコンテンツプロバイダに、第2のセッションにおいて第2の音声入力のテキスト表現を示すデータを提供するステップと、通信システムによって、サードパーティコンテンツプロバイダから、通信システムとサードパーティコンテンツプロバイダとの間の第2のセッションにおいてサードパーティコンテンツプロバイダからのテキスト入力を受信するステップと、通信システムによって、ユーザに、第1のセッションにおいてサードパーティコンテンツプロバイダからのテキスト入力の音声表現を示すデータを提供するステップとを含む。 In some implementations, the method involves receiving input from the user to the first session through the chat user interface on the communication server, and the communication server to a third-party content provider to the second session. Includes a step of providing data indicating user input of. In some implementations, the request to access a particular web resource involves voice input. In some implementations, the method involves receiving a second voice input from the user in a first session and a second voice input in a second session to a third-party content provider by means of a communication system. A step of providing data indicating a textual representation of the text input from a third-party content provider and a step of receiving text input from the third-party content provider in a second session between the communication system and the third-party content provider by the communication system. And the communication system includes a step of providing the user with data indicating a voice representation of the text input from the third party content provider in the first session.

一部の実装例では、チャットユーザインタフェースはチャットウィジェットである。一部の実装例では、特定のウェブリソースが特定のウェブリソース上の特定のチャットユーザインタフェースを通じて特定のサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供すると判定するステップは、通信システムによって、ウェブリソースにアクセスするステップと、通信システムによって、ウェブリソース上のウィジェットを特定するステップと、通信システムによって、ウェブリソース上のウィジェットのためのコードにおいて、ウェブリソースがウェブリソース上のチャットユーザインタフェースを通じてサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供することを示すタグを特定するステップとを含む。 In some implementations, the chat user interface is a chat widget. In some implementations, the step of determining that a particular web resource provides functionality for live assistance by a particular third-party content provider through a particular chat user interface on that particular web resource is determined by the communication system. The step of accessing the web resource, the step of identifying the widget on the web resource by the communication system, and the code for the widget on the web resource by the communication system, the web resource is third through the chat user interface on the web resource. Includes steps to identify tags that indicate that it provides functionality for live assistance by the party content provider.

一部の実装例では、ライブアシスタンスは、特定のサードパーティコンテンツプロバイダを代表する人間によって提供される。 In some implementations, live assistance is provided by a person representing a particular third-party content provider.

一部の実装例では、本方法は、特定のウェブリソースに対して開始される複数のチャットセッションの各々に対して、通信システムによって、特定のウェブリソースにユーザを導いたコンテンツ項目の一意の識別子に基づいて、チャットセッションに対するコンテンツ項目メトリック値を判定するステップを含む。本方法は、通信システムによって、コンテンツ項目メトリック値を使用して、コンテンツ項目メトリック値の提示を生成するステップと、通信システムによってサードパーティコンテンツプロバイダに、表示のために同提示を提供するステップとを含む。 In some implementations, the method is for each of multiple chat sessions initiated for a particular web resource, a unique identifier for the content item that led the user to the particular web resource by the communication system. Includes a step to determine the content item metric value for a chat session based on. The method comprises the steps of generating a presentation of the content item metric value using the content item metric value by the communication system and providing the third party content provider with the presentation for display by the communication system. Including.

一部の実装例では、特定のウェブリソースが特定のウェブリソース上の特定のチャットユーザインタフェースを通じて特定のサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供すると判定するステップは、通信システムによって、ウェブリソースにアクセスするステップと、通信システムによって、ウェブリソースがアクセスされているウィンドウと別である新たなウィンドウが開いたと判定するステップと、新たなウィンドウにおいて、ウェブリソースがウェブリソース上のチャットユーザインタフェースを通じてサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供することを示すテキスト語句を判定するステップとを含む。 In some implementations, the step of determining that a particular web resource provides functionality for live assistance by a particular third-party content provider through a particular chat user interface on that particular web resource is determined by the communication system. In the step of accessing the web resource, the step of determining that the communication system has opened a new window different from the window in which the web resource is accessed, and in the new window, the web resource is a chat user interface on the web resource. Includes steps to determine text terms that indicate that it provides functionality for live assistance by a third-party content provider through.

一部の実装例では、ユーザは、ネットワーク接続されたデバイスを通じてチャットセッションにアクセスする。ネットワーク接続されたデバイスはモバイルデバイスであることができる。ネットワーク接続されたデバイスはデスクトップデバイスであることができる。一部の実装例では、ネットワーク接続されたデバイスは画面を有しない。 In some implementations, the user accesses the chat session through a networked device. The networked device can be a mobile device. The networked device can be a desktop device. In some implementations, networked devices do not have a screen.

一部の実装例では、ユーザと特定のサードパーティコンテンツプロバイダとの間のチャットセッションを開始するステップは、通信サーバによって、サードパーティコンテンツプロバイダから、チャットセッションの第1のセッションに対する第1の一意のセション識別子を受信するステップと、通信サーバによって、サードパーティコンテンツプロバイダに、第2のセッションを促進するために第1の一意のセション識別子を提供するステップとを含む。 In some implementations, the step of initiating a chat session between a user and a particular third-party content provider is a first unique step from the third-party content provider to the first session of the chat session by the communication server. It includes a step of receiving a session identifier and a step of providing a third-party content provider with a first unique session identifier to facilitate a second session by means of a communication server.

本明細書に記載される主題の別の革新的な態様は、ネットワークに通信可能に接続されるデバイスと、ネットワークに通信可能に接続されるサードパーティコンテンツプロバイダサーバと、上記したような方法を実装するための動作を行う通信サーバとを含むシステムで具象化可能である。 Another innovative aspect of the subject matter described herein implements a device communicably connected to a network, a third-party content provider server communicably connected to the network, and methods as described above. It can be embodied in a system that includes a communication server that performs operations to do so.

本明細書に記載される主題の更に別の革新的な態様は、少なくとも1つのプロセッサによって実行されると、少なくとも1つのプロセッサに上記したような方法を実装するための動作を行わせる実行可能命令が符号化された少なくとも1つのコンピュータ可読記憶媒体で具象化可能である。 Yet another innovative aspect of the subject matter described herein is an executable instruction that, when executed by at least one processor, causes at least one processor to perform an operation to implement the method as described above. Can be embodied in at least one computer-readable storage medium encoded by.

本明細書に記載される主題の別の革新的な態様は、複数のウェブリソースの各々に対して、通信サーバにおいて、それぞれのウェブリソースの特性を示すデータを受信するステップと、通信サーバによって、受信したデータに基づいて、それぞれのウェブリソースがそれぞれのウェブリソース上のチャットユーザインタフェースを通じてサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供すると検出するステップと、通信サーバによって、データベースに、それぞれのウェブリソースが同機能性を有することを示すエントリを記憶するステップとを含む方法で具象化可能である。本方法は、通信サーバによって、ユーザから、特定のサードパーティコンテンツプロバイダによってホストされる特定のウェブリソースにアクセスする要求を受信するステップと、通信サーバによって、特定のウェブリソースを表すデータベースの記憶したエントリに基づいて、特定のウェブリソースが特定のウェブリソース上の特定のチャットユーザインタフェースを通じて特定のサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供すると判定するステップと、通信サーバによって、ユーザとサードパーティコンテンツプロバイダとの間のチャットセッションを開始するステップとを含む。 Another innovative aspect of the subject matter described herein is that for each of the plurality of web resources, the communication server receives data demonstrating the characteristics of each web resource, and by the communication server. Based on the data received, the steps to detect that each web resource provides functionality for live assistance by a third-party content provider through the chat user interface on each web resource, and the communication server to the database, respectively. It can be embodied in a way that includes a step of storing an entry indicating that the web resource of the server has the same functionality. In this method, the communication server receives a request from a user to access a specific web resource hosted by a specific third-party content provider, and the communication server stores a stored entry in the database that represents the specific web resource. Based on the steps that determine that a particular web resource provides functionality for live assistance by a particular third-party content provider through a particular chat user interface on a particular web resource, and by a communication server, users and third parties. Includes steps to initiate a chat session with the party content provider.

一部の実装例では、チャットセッションは、通信サーバとユーザとの間の第1のセッション、および通信サーバとサードパーティコンテンツプロバイダとの間の第2のセッションを含む。本方法は、通信サーバにおいて、ユーザから、チャットユーザインタフェースを通じて第1のセッションへの入力を受信するステップと、通信サーバによって、サードパーティコンテンツプロバイダに、第2のセッションへのユーザ入力を示すデータを提供するステップと、ユーザとサードパーティコンテンツプロバイダとの間のチャットセッションの状態情報を維持するステップとを含む。本方法は、通信システムによって、所定の期間の間アクティビティがないと検出するステップと、通信システムによって、第1のセッションまたは第2のセッションの少なくとも1つが終了したと検出するステップと、通信システムによって、チャットセッションのコンテキストデータに基づいて、ユーザがチャットセッションを完了していないと判定するステップと、データベースに、第1のセッションの全体を示すデータを記憶するステップと、通信システムによって、第2のセッションが終了したとの検出に応じて、チャットセッションの一部として通信サーバとサードパーティコンテンツプロバイダとの間の第3のセッションを開始するステップと、通信システムによって、サードパーティコンテンツプロバイダに、ユーザがサードパーティコンテンツプロバイダとのチャットセッションを再開できるように第1のセッションの少なくとも一部分を示すデータを提供するステップとを含むことができる。 In some implementations, the chat session includes a first session between the communication server and the user and a second session between the communication server and the third party content provider. In this method, the communication server receives the input to the first session from the user through the chat user interface, and the communication server provides the third-party content provider with data indicating the user input to the second session. Includes steps to provide and maintain state information for chat sessions between users and third-party content providers. The method comprises a step of detecting by the communication system that there is no activity for a predetermined period of time, a step of detecting by the communication system that at least one of the first or second sessions has ended, and by the communication system. , A step of determining that the user has not completed the chat session based on the context data of the chat session, a step of storing data indicating the entire first session in the database, and a second step by the communication system. In response to the detection that the session has ended, a step of initiating a third session between the communication server and the third-party content provider as part of the chat session and the communication system allow the user to the third-party content provider. It can include a step of providing data indicating at least a portion of the first session so that the chat session with the third party content provider can be resumed.

一部の実装例では、特定のウェブリソースにアクセスする要求は音声入力を備える。本方法は、通信システムによって、ユーザから、第1のセッションにおいて第2の音声入力を受信するステップと、サードパーティコンテンツプロバイダに、第2のセッションにおいて第2の音声入力のテキスト表現を示すデータを提供するステップと、通信システムによって、サードパーティコンテンツプロバイダから、通信システムとサードパーティコンテンツプロバイダとの間の第2のセッションにおいてサードパーティコンテンツプロバイダからのテキスト入力を受信するステップと、通信システムによって、ユーザに、第1のセッションにおいてサードパーティコンテンツプロバイダからのテキスト入力の音声表現を示すデータを提供するステップとを含む。 In some implementations, requests to access a particular web resource include voice input. The method provides data indicating a step of receiving a second voice input from the user in the first session and a text representation of the second voice input to the third party content provider in the second session by the communication system. The step of providing and the step of receiving text input from the third party content provider from the third party content provider by the communication system and the text input from the third party content provider in the second session between the communication system and the third party content provider by the communication system and the user by the communication system. Includes, in the first session, a step of providing data indicating a voice representation of text input from a third party content provider.

一部の実装例では、通信サーバによって、ユーザとサードパーティコンテンツプロバイダとの間のチャットセッションを開始するステップは、通信サーバによって、サードパーティコンテンツプロバイダから、チャットセッションの第1のセッションに対する第1の一意のセション識別子を受信するステップと、通信サーバによって、サードパーティコンテンツプロバイダに、第2のセッションを促進するために第1の一意のセション識別子を提供するステップとを含む。 In some implementations, the step of initiating a chat session between the user and the third-party content provider by the communication server is the first step from the third-party content provider to the first session of the chat session by the communication server. It includes a step of receiving a unique session identifier and a step of providing a third-party content provider with a first unique session identifier to facilitate a second session by means of a communication server.

一部の実装例では、同要求は、検索要求に応じて提示され、特定のウェブリソースにリンクするコンテンツ項目の選択に応じて提供される。チャットインタフェースは、検索要求に応答する結果、およびコンテンツ項目を表示するウェブページ上に提示可能である。 In some implementations, the request is presented in response to a search request and provided in response to a selection of content items that link to a particular web resource. The chat interface can be presented on a web page displaying the results in response to a search request and the content item.

一部の実装例では、チャットユーザインタフェースはチャットウィジェットである。一部の実装例では、それぞれのウェブリソースがそれぞれのウェブリソース上のチャットユーザインタフェースを通じてサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供すると検出するステップは、通信システムによって、ウェブリソースにアクセスするステップと、通信システムによって、ウェブリソース上のウィジェットを特定するステップと、通信システムによって、ウェブリソース上のウィジェットのためのコードにおいて、ウェブリソースがウェブリソース上のチャットユーザインタフェースを通じてサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供することを示すタグを特定するステップとを含む。 In some implementations, the chat user interface is a chat widget. In some implementations, the step of detecting that each web resource provides functionality for live assistance by a third-party content provider through a chat user interface on that web resource is accessed by the communication system. And by the communication system, the steps to identify the widget on the web resource, and by the communication system, in the code for the widget on the web resource, the web resource is sent by a third-party content provider through the chat user interface on the web resource. Includes steps to identify tags that indicate that it provides functionality for live assistance.

一部の実装例では、ライブアシスタンスは、特定のサードパーティコンテンツプロバイダを代表する人間によって提供される。一部の実装例では、本方法は、特定のウェブリソースに対して開始される複数のチャットセッションの各々に対して、通信システムによって、特定のウェブリソースにユーザを導いたコンテンツ項目の一意の識別子に基づいて、チャットセッションに対するコンテンツ項目メトリック値を判定するステップと、通信システムによって、コンテンツ項目メトリック値を使用して、コンテンツ項目メトリック値の提示を生成するステップと、通信システムによってサードパーティコンテンツプロバイダに、表示のために同提示を提供するステップとを含む。 In some implementations, live assistance is provided by a person representing a particular third-party content provider. In some implementations, the method is for each of multiple chat sessions initiated for a particular web resource, a unique identifier for the content item that led the user to the particular web resource by the communication system. To determine the content item metric value for a chat session based on, and to generate a presentation of the content item metric value by using the content item metric value by the communication system, and to a third-party content provider by the communication system. Includes steps to provide the same presentation for display.

一部の実装例では、それぞれのウェブリソースがそれぞれのウェブリソース上のチャットユーザインタフェースを通じてサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供すると検出するステップは、通信システムによって、ウェブリソースにアクセスするステップと、通信システムによって、ウェブリソースがアクセスされているウィンドウと別である新たなウィンドウが開いたと判定するステップと、新たなウィンドウにおいて、ウェブリソースがウェブリソース上のチャットユーザインタフェースを通じてサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供することを示すテキスト語句を判定するステップとを含む。 In some implementations, the step of detecting that each web resource provides functionality for live assistance by a third-party content provider through a chat user interface on that web resource is accessed by the communication system. And the step that the communication system determines that a new window has opened that is different from the window the web resource is accessing, and in the new window, the web resource has third-party content through the chat user interface on the web resource. Includes a step to determine a textual phrase indicating that it provides functionality for live assistance by the provider.

一部の実装例では、ユーザは、ネットワーク接続されたデバイスを通じてチャットセッションにアクセスする。ネットワーク接続されたデバイスはモバイルデバイスであることができる。ネットワーク接続されたデバイスはデスクトップデバイスであることができる。一部の実装例では、ネットワーク接続されたデバイスは画面を有しない。 In some implementations, the user accesses the chat session through a networked device. The networked device can be a mobile device. The networked device can be a desktop device. In some implementations, networked devices do not have a screen.

本明細書に記載される主題の更に別の革新的な態様は、ネットワークに通信可能に接続されるデバイスと、ネットワークに通信可能に接続されるサードパーティコンテンツプロバイダサーバと、動作を行う通信サーバとを含むシステムで具象化可能である。同動作は、複数のウェブリソースの各々に対して、それぞれのウェブリソースの特性を示すデータを受信することと、受信したデータに基づいて、それぞれのウェブリソースがそれぞれのウェブリソース上のチャットユーザインタフェースを通じてサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供すると検出することと、データベースに、それぞれのウェブリソースが同機能性を有することを示すエントリを記憶することとを含む。同動作は、ユーザから、特定のサードパーティコンテンツプロバイダによってホストされる特定のウェブリソースにアクセスする要求を受信することと、特定のウェブリソースを表すデータベースの記憶したエントリに基づいて、特定のウェブリソースが特定のウェブリソース上の特定のチャットユーザインタフェースを通じて特定のサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供すると判定することと、通信サーバによって、ユーザとサードパーティコンテンツプロバイダとの間のチャットセッションを開始することとを含む。 Yet another innovative aspect of the subject matter described herein is a device communicably connected to a network, a third-party content provider server communicatively connected to the network, and a communication server operating. It can be embodied in a system that includes. The behavior is to receive data indicating the characteristics of each web resource for each of the multiple web resources, and based on the received data, each web resource has a chat user interface on each web resource. Includes detecting that it provides functionality for live assistance by a third-party content provider through, and storing in the database an entry indicating that each web resource has the same functionality. The behavior is based on receiving a request from a user to access a particular web resource hosted by a particular third-party content provider and a stored entry in a database that represents the particular web resource. Determines that provides functionality for live assistance by a particular third-party content provider through a particular chat user interface on a particular web resource, and a communication server chats between the user and the third-party content provider. Includes starting a session.

本明細書に記載される主題の別の革新的な態様は、少なくとも1つのプロセッサによって実行されると、少なくとも1つのプロセッサに動作を行わせる実行可能命令が符号化された少なくとも1つのコンピュータ可読記憶媒体で具象化可能である。同動作は、複数のウェブリソースの各々に対して、それぞれのウェブリソースの特性を示すデータを受信することと、受信したデータに基づいて、それぞれのウェブリソースがそれぞれのウェブリソース上のチャットユーザインタフェースを通じてサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供すると検出することと、データベースに、それぞれのウェブリソースが同機能性を有することを示すエントリを記憶することとを含む。同動作は、ユーザから、特定のサードパーティコンテンツプロバイダによってホストされる特定のウェブリソースにアクセスする要求を受信することと、特定のウェブリソースを表すデータベースの記憶したエントリに基づいて、特定のウェブリソースが特定のウェブリソース上の特定のチャットユーザインタフェースを通じて特定のサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供すると判定することと、通信サーバによって、ユーザとサードパーティコンテンツプロバイダとの間のチャットセッションを開始することとを含む。 Another innovative aspect of the subject matter described herein is at least one computer-readable memory in which, when executed by at least one processor, an executable instruction that causes at least one processor to perform an operation is encoded. It can be embodied in a medium. The behavior is to receive data indicating the characteristics of each web resource for each of the multiple web resources, and based on the received data, each web resource has a chat user interface on each web resource. Includes detecting that it provides functionality for live assistance by a third-party content provider through, and storing in the database an entry indicating that each web resource has the same functionality. The behavior is based on receiving a request from a user to access a particular web resource hosted by a particular third-party content provider and a stored entry in a database that represents the particular web resource. Determines that provides functionality for live assistance by a particular third-party content provider through a particular chat user interface on a particular web resource, and a communication server chats between the user and the third-party content provider. Includes starting a session.

本明細書に記載される主題は、以下の利点の1つまたは複数を実現するように特定の実施形態で実装可能である。メッセージングセッションを開始および維持するための提案されるシステムは、チャットインタフェースの機能性を提供するリソースを特定して、それと対話するための効率的で最適化された技術を提供する。提案される技術は、一態様では、ユーザインタフェース端末またはリソースもしくはコンテンツプロバイダによって提供されるチャットインタフェース機能性上で、ユーザによって使用中のブラウザ機能、サービスプロバイダまたはオペレーティングシステムにかかわらず、シームレスで、信頼できかつスケーラブルなチャットインタフェースを可能にするために、制御または通信サーバ/ゲートウェイによって描画および管理されるチャットセッションを含むチャットインタフェースを実装する。本システムは、ユーザとコンテンツプロバイダとの間のチャットセッションを開始および維持するために使用されるコンピューティングリソースの数を削減する。本システムは、切断されたチャットセッションを再確立するためにユーザとゲートウェイとの間およびコンテンツプロバイダとゲートウェイとの間の別々のセッションを維持してセッションデータを記憶することによって、チャットインタフェースをよりロバストにする。加えて、ゲートウェイは、一時的な接続の損失の場合にセッションを開いておくことができ、したがってチャット接続の信頼性を改善する。チャットセッションを開いておくことができずかつ再確立されなければならなくても、ユーザは、間断なくかつ前に確立されたチャットセッションを通じて既に提供されている冗長データを入力しなければならないことなく、再確立されるチャットセッションを続けることができる。加えて、コンテンツプロバイダのページにユーザをリダイレクトすることなくチャットインタフェースを提供することによって、本システムは、ユーザがチャット機能性を探すことに関連したネットワークトラフィックを軽減する。ユーザが、各コンテンツプロバイダのページ内でメッセージング機能性を探すときに、またはコンテンツプロバイダから切断されたときに、フラストレーションを経験することなくコンテンツプロバイダと接続および通信することができるので、本システムは、コンピュータ関連技術、チャットインタフェースの機能を改善する。 The subject matter described herein can be implemented in a particular embodiment to achieve one or more of the following advantages: The proposed system for initiating and maintaining a messaging session provides an efficient and optimized technique for identifying and interacting with the resources that provide the functionality of the chat interface. The proposed technology, in one aspect, is seamless and reliable on the chat interface functionality provided by the user interface terminal or resource or content provider, regardless of the browser function, service provider or operating system being used by the user. Implement a chat interface that includes chat sessions drawn and managed by a control or communication server / gateway to enable a capable and scalable chat interface. The system reduces the number of computing resources used to initiate and maintain chat sessions between users and content providers. The system makes the chat interface more robust by maintaining separate sessions between the user and the gateway and between the content provider and the gateway to reestablish a disconnected chat session and storing session data. To. In addition, the gateway can keep sessions open in case of temporary connection loss, thus improving the reliability of chat connections. Even if a chat session cannot be kept open and must be reestablished, the user has to enter redundant data already provided through a previously established chat session without interruption. , You can continue the re-established chat session. In addition, by providing a chat interface without redirecting the user to the content provider's page, the system reduces network traffic associated with the user looking for chat functionality. The system allows users to connect and communicate with content providers without experiencing frustration when looking for messaging functionality within each content provider's page or when disconnected from the content provider. , Computer related technology, improve the function of chat interface.

更には、ゲートウェイシステムは、厳密な統合を必要とすることなく複数のコンテンツプロバイダにチャット機能性をスケーリングする能力を提供することによって、コンピュータ関連技術の機能を改善する。本システムは、コンテンツプロバイダがそれぞれのチャットインタフェースに一定の個別性および制御を維持するのを可能にする。画面の使用なくチャット会話を行う本システムの能力は、ハンズフリー通信を可能にして、ユーザの負担を軽減する。加えて、本システムは、統合アプリケーションで更なる作用を行うためにチャットを後処理することができる。例えば、チャット会話内の応答が「私達は午後5時に会う約束を予定した。」であれば、本システムは、自動的にカレンダーイベントがあると検出してカレンダーエントリを追加し、既存の競合についてユーザに尋ね、そして様々な他の関連タスクを行うことができる。チャット会話から生じる作用がログに記録可能および/または解析のために提供可能であり、その結果は将来のチャットインタフェース提示を左右するために使用可能である。ネットワーク接続が遅いユーザがもはやコンテンツプロバイダのウェブページを訪問してページが描画されるよう要求することを求められないので、ゲートウェイシステムは、ユーザ待ち時間を削減する。その代わりに、通信だけが伝送されて、ネットワークトラフィックおよびレイテンシを軽減する。 In addition, gateway systems improve the capabilities of computer-related technologies by providing multiple content providers with the ability to scale chat functionality without the need for tight integration. The system allows content providers to maintain a certain degree of individuality and control over their chat interfaces. The ability of this system to have chat conversations without using the screen enables hands-free communication and reduces the burden on the user. In addition, the system can post-process chats for further action in integrated applications. For example, if the response in the chat conversation is "We scheduled to meet at 5 pm", the system will automatically detect that there is a calendar event and add a calendar entry to the existing conflict. You can ask the user about and perform various other related tasks. The effects that result from chat conversations can be logged and / or provided for analysis, and the results can be used to influence future chat interface presentations. Gateway systems reduce user latency because users with slow network connections are no longer required to visit content provider web pages and request the pages to be rendered. Instead, only communication is carried, reducing network traffic and latency.

ユーザが様々なデバイスを通じてコンテンツプロバイダに連絡できる環境例のブロック図である。It is a block diagram of an environment example in which a user can contact a content provider through various devices. ユーザにチャットインタフェースを提供するために図示されるユーザインタフェース例である。It is an example of a user interface illustrated to provide a chat interface to a user. ユーザとサードパーティコンテンツプロバイダとの間のチャットセッションを開始および維持するための工程例のフローチャートである。It is a flowchart of a process example for starting and maintaining a chat session between a user and a third party content provider. コンピューティングシステム例のブロック図である。It is a block diagram of an example of a computing system.

様々な図面における同様の参照番号および記号は同様の要素を示す。 Similar reference numbers and symbols in various drawings indicate similar elements.

本文書は、ユーザとユーザが通信しているコンテンツプロバイダとの間にゲートウェイを設けることによって通信セッションの接続強度および品質を改善する方法、システムおよびデバイスを説明する。ゲートウェイは、ユーザの一方の通信インタフェースにおいて受信されるコンテンツ(例えばメッセージ)をコンテンツプロバイダの他方の通信インタフェースに中継し、そしてセッションデータを維持することなくユーザとコンテンツプロバイダとの間で直接1つのセッションを提供し、その結果ユーザかコンテンツプロバイダかの側での切断がチャットセッションを再確立する能力なくセッションを終了させてしまうよりもむしろ、ユーザとコンテンツプロバイダとの間の会話に関する関連データを保存することによってセッション情報を維持する。 This document describes methods, systems and devices that improve the connection strength and quality of communication sessions by providing a gateway between the user and the content provider with which the user is communicating. The gateway relays the content (eg, message) received on one of the user's communication interfaces to the other communication interface of the content provider, and one session directly between the user and the content provider without maintaining session data. As a result, the disconnection on the part of either the user or the content provider stores relevant data about the conversation between the user and the content provider, rather than ending the session without the ability to reestablish the chat session. Maintain session information by doing so.

一部の状況では、クライアントデバイス間の会話が中断または切断されることがあり、助力を得ようとするユーザおよび助力を与えようとするコンテンツプロバイダにとってのフラストレーションを引き起こす。例えば、インターネット接続問題を処理することに関するアシスタンスのためにインターネットプロバイダに電話している顧客が、自分が話していた担当者から切断されることがある。顧客はかけ直そうとすることができるが、異なる担当者と接続されれば顧客は再び状況を説明しなければならず、結果として顧客にとっての全体的に非効率かつ煩わしい経験となる。ここで、ゲートウェイは、ユーザおよびコンテンツプロバイダが切断より前に提供した情報および達成された進展を回復しようとして費やす時間量を削減するために、ユーザとコンテンツプロバイダとの間の会話に関する特定のデータを検出および記憶できる。これは、チャットインタフェースの故障(例えば、接続の損失または通信リンクの他の遮断)がある場合に、チャットインタフェースを使用して既に通信されたデータの損失を防止することによって、コンピュータ関連技術である電子チャットアプリケーション/機能性も改善する。 In some situations, conversations between client devices can be interrupted or disconnected, causing frustration for users seeking help and content providers seeking help. For example, a customer calling an Internet provider for assistance in handling an Internet connection problem may be disconnected from the person he or she was talking to. The customer can try to call back, but if connected with a different person, the customer will have to explain the situation again, resulting in an overall inefficient and annoying experience for the customer. Here, the gateway displays specific data about the conversation between the user and the content provider in order to reduce the amount of information the user and content provider provided prior to disconnection and the amount of time spent trying to recover the progress achieved. Can be detected and stored. This is a computer-related technology by preventing the loss of data already communicated using the chat interface in the event of a chat interface failure (eg, loss of connection or other blockage of communication links). Electronic chat application / functionality will also be improved.

電子文書とは、クライアントデバイスにおいて一組のコンテンツを提示するデータである。電子文書の例としては、ウェブページ、ワードプロセッシング文書、ポータブルドキュメントフォーマット(PDF)文書、画像、ビデオ、検索結果ページおよびフィードソースを含む。モバイル、タブレットまたはデスクトップコンピューティングデバイス上にインストールされるアプリケーションなどの、ネイティブアプリケーション(例えば、「アプリ」)も電子文書の例である。電子文書は、ユーザによる消費のために提示されるデジタルコンポーネントを含む。 An electronic document is data that presents a set of content on a client device. Examples of electronic documents include web pages, word processing documents, portable document format (PDF) documents, images, videos, search result pages and feed sources. Native applications (eg, "apps"), such as applications installed on mobile, tablet or desktop computing devices, are also examples of electronic documents. Electronic documents include digital components that are presented for consumption by the user.

本文書を通して使用されるように、用語「デジタルコンポーネント」はデジタルコンテンツまたはデジタル情報の個別の単位(例えば、ビデオクリップ、オーディオクリップ、マルチメディアクリップ、画像、テキストまたは別のコンテンツの単位)を指す。デジタルコンポーネントは、単一のファイルとしてまたは一群のファイルで物理メモリデバイスに電子的に記憶可能であり、そしてデジタルコンポーネントは、ビデオファイル、オーディオファイル、マルチメディアファイル、画像ファイルまたはテキストファイルの形態をとり、かつ広告情報を含むことができ、その結果広告は一種のデジタルコンポーネントである。一般に、デジタルコンポーネントは、単一のプロバイダまたはソース(例えば、広告主、出版社または他のコンテンツプロバイダ)によって定義される(または、によって提供される)が、複数のソースからのコンテンツの組合せであり得る。複数の異なるソースからのデジタルコンポーネントが単一の電子文書(例えば、一群の様々な異なるデジタルコンポーネント)へ組み合わせ可能であり、そして異なるソースからの様々なデジタルコンポーネントの部分が、検索結果(または他のコンテンツの部分)から抽出された情報の単一のデジタルコンポーネントへ組み合わせ可能である。 As used throughout this document, the term "digital component" refers to a unit of digital content or digital information (eg, a unit of video clip, audio clip, multimedia clip, image, text or other content). Digital components can be stored electronically on a physical memory device as a single file or as a set of files, and digital components take the form of video files, audio files, multimedia files, image files or text files. , And can contain advertising information, so that the advertisement is a kind of digital component. In general, a digital component is defined (or provided by) by a single provider or source (eg, an advertiser, publisher or other content provider), but is a combination of content from multiple sources. obtain. Digital components from multiple different sources can be combined into a single electronic document (eg, a group of different different digital components), and parts of different digital components from different sources can be found in search results (or other). It can be combined into a single digital component of the information extracted from the content part).

検索エンジンが、コンテンツプロバイダの様々なウェブページにリンクする結果にユーザを導くことができる。ユーザは、例えば、特定のコンテンツプロバイダに対する対応するウェブページに提供される電話番号に電話することによってコンテンツプロバイダに連絡できる。別の例では、ユーザは、特定のコンテンツプロバイダに対する対応するウェブページに列記される特定のアドレス宛でコンテンツプロバイダに電子メールまたは郵送することによってコンテンツプロバイダに連絡できる。 Search engines can guide users to results that link to various web pages of content providers. The user can contact the content provider, for example, by calling the telephone number provided on the corresponding web page for a particular content provider. In another example, a user can contact a content provider by emailing or mailing to the content provider at a specific address listed on the corresponding web page for that content provider.

一部の例では、ユーザは、特定のコンテンツプロバイダのウェブページに提供されるユーザインタフェースを通じてコンテンツプロバイダに連絡できる。ユーザインタフェースは、例えば、ユーザが特定のコンテンツプロバイダの担当者と通信できるチャットインタフェースであることができる。多くのウェブページが、チャットインタフェースにユーザを導くインタフェース要素の異なる配置を含む異なるフォーマットを有する。例えば、ウェブページは、チャットインタフェースにユーザを導くボタンを含むことができる。 In some examples, the user can contact the content provider through the user interface provided on the web page of the particular content provider. The user interface can be, for example, a chat interface that allows the user to communicate with a person in charge of a particular content provider. Many web pages have different formats, including different arrangements of interface elements that guide the user to the chat interface. For example, a web page can include a button that guides the user to a chat interface.

チャットインタフェースは一般に、ユーザが自分と通信している相手方に伝送されることになる入力を提供できるテキストボックスを含む。加えて、ユーザ入力を提出および編集するための他のユーザインタフェース要素が一般にチャットインタフェースに含まれることがあり;そのようなユーザインタフェース要素は、ユーザインタフェースメニューを進むことによってアクセスされなければならない小さな要素であり得る。例えば、通常使用されるインタフェース要素としては、メッセージを送信するもしくはキーボードを切り替えるための小さなボタン、またはピクチャもしくはビデオデータなどの、送信するべきコンテンツを選択するためのメニューを含む。 Chat interfaces typically include a text box that allows the user to provide input that will be transmitted to the other party communicating with him. In addition, other user interface elements for submitting and editing user input may generally be included in the chat interface; such user interface elements are small elements that must be accessed by navigating the user interface menu. Can be. For example, commonly used interface elements include small buttons for sending messages or switching keyboards, or menus for selecting content to send, such as pictures or video data.

一部のウェブページは、チャットインタフェースに達するためにウェブサイトツリーを進むことをユーザに求めることがある。例えば、ユーザがコンテンツプロバイダに連絡できるチャットインタフェースにユーザを導くユーザインタフェース要素が、コンテンツプロバイダのウェブサイトのメインページ以外のページに表示されることがある。ユーザインタフェース要素は、不明瞭な位置に設けられ、またはユーザがチャットインタフェースにアクセスするためにユーザインタフェース要素を選択するのに手間取るような大きさであり得る。 Some web pages may require users to navigate the website tree to reach the chat interface. For example, a user interface element that directs the user to a chat interface that allows the user to contact the content provider may appear on a page other than the main page of the content provider's website. The user interface element may be placed in an obscure position or sized so that the user has trouble selecting the user interface element to access the chat interface.

モバイルデバイス上の画面領域が一般にデスクトップクライアントデバイス上の画面領域より小さいので、チャットインタフェースは、モバイルデバイス上で使用するのが困難であり得る。例えば、スマートフォン上の画面領域は一般に、モニタ付きのデスクトップコンピュータ上の画面領域より小さい。デスクトップクライアントデバイス上で小さいユーザインタフェース要素は、モバイルデバイス上では何倍も小さくかつ選択するのがより困難であり得る。 Chat interfaces can be difficult to use on mobile devices, as the screen area on mobile devices is generally smaller than the screen area on desktop client devices. For example, the screen area on a smartphone is generally smaller than the screen area on a desktop computer with a monitor. Small user interface elements on desktop client devices can be many times smaller and more difficult to select on mobile devices.

一部の例では、ウェブページは、新たなウィンドウを開くチャットインタフェースへのリンクを提供できる。小さな画面付きのモバイルデバイス上で見ると、チャットインタフェースと対話することは困難であり得る。ユーザは、チャットインタフェースと対話するためにチャットインタフェースを操作することがほとんどできないかもしれず、ユーザにとってのフラストレーションを引き起こし、かつ多くのコンテンツプロバイダにとってチャットインタフェースを提供することの価値を低下させる。 In some examples, a web page can provide a link to a chat interface that opens a new window. When viewed on a mobile device with a small screen, it can be difficult to interact with the chat interface. The user may have little ability to interact with the chat interface to interact with it, causing frustration for the user and reducing the value of providing the chat interface for many content providers.

ユーザとコンテンツプロバイダ担当者との間でチャットセッションが開始されると、チャットセッションの切断は一般に、切断が発生したときのユーザとコンテンツプロバイダ担当者との間の会話の同じ箇所に達するために、ユーザが自分がコンテンツプロバイダに既に提供したあらゆる情報を提供しなければならないことを意味する。例えば、チャットセッションのためのチャットインタフェースを通じて、特定の種類のアマチュア無線に対するサポートを探しているユーザは、自分が使用しているアマチュア無線の製造業者の担当者に、自分の登録番号、自分の所望の放送周波数および自分が抱えている問題の記述を提供できる。製造業者の担当者とのユーザのチャットセッションが切断されれば、ユーザは一般に、製造業者のウェブページに進み、製造業者のチャットインタフェースに自分を導くユーザインタフェース要素を見つけ、そして一旦新たなチャットセッションが確立されると、製造業者の別の担当者に自分が既に提示した情報(すなわち、自分の登録番号、自分の所望の放送周波数および自分が抱えている問題の記述)の全てを再び提供しなければならない。 When a chat session is initiated between the user and the content provider representative, the chat session disconnection generally reaches the same point in the conversation between the user and the content provider representative when the disconnection occurs. This means that the user must provide any information that he or she has already provided to the content provider. For example, a user looking for support for a particular type of ham radio through a chat interface for a chat session can ask the person in charge of the ham radio manufacturer they are using, their registration number, their wishes. Can provide a description of your broadcast frequency and your problem. If a user's chat session with a manufacturer's representative is disconnected, the user generally goes to the manufacturer's web page, finds a user interface element that guides them to the manufacturer's chat interface, and once a new chat session. Once established, re-provide all of the information you have already presented to another person in the manufacturer (ie your registration number, your desired broadcast frequency and a description of your problem). There must be.

本文書は、ユーザとコンテンツプロバイダとの間のチャットセッションを行って復元するために使用されるコンピュータリソースの量を削減する方法、システムおよびデバイスを説明する。一部の状況では、コンテンツプロバイダのウェブサイトは、チャットインタフェースにユーザを導き、そしてユーザとコンテンツプロバイダの担当者との間のチャットセッションを開始するユーザインタフェース要素を含む。例えば、トラクタ会社のウェブサイトが、トラクタ会社のライブ担当者にユーザを接続するためのボタンを含むことができる。ボタンは、ナビゲーションメニュー項目として、顕著にはトラクタ会社のウェブサイトのサポートまたは連絡先ページ上の主要な特徴として、またはトラクタ会社のウェブサイトを訪問している間のユーザの行動に基づいて現れる作用提案としてを含め、様々な仕方で表示可能である。 This document describes methods, systems and devices that reduce the amount of computer resources used to perform and restore chat sessions between users and content providers. In some situations, the content provider's website contains a user interface element that guides the user to the chat interface and initiates a chat session between the user and the content provider representative. For example, a tractor company website can include a button to connect a user to a tractor company live rep. Buttons appear as navigation menu items, notably as a key feature on tractor company website support or contact pages, or based on user behavior while visiting the tractor company website. It can be displayed in various ways, including as a suggestion.

システムが、トラクタ会社などのコンテンツプロバイダが担当者とチャットするオプションを提供すると特定し、そしてコンテンツプロバイダのウェブサイトがチャットインタフェースを使用するオプションを提供することを示すデータを記憶する。ライブチャットセッションまたは回答のライブラリがメッセージング機械学習モデルを使用して構築された自動化チャットセッションなど、チャットセッションの機能性を提供するとしてウェブサイトが一旦特定されると、システムは、ウェブページがチャット機能性を提供することを示すことができる。例えば、システムは、ウェブサイトが現れる検索結果において、ウェブサイトがチャットセッションの機能性を提供することを示すことができる。 The system identifies that a content provider, such as a tractor company, offers an option to chat with a representative, and stores data indicating that the content provider's website offers an option to use a chat interface. Once a website is identified as providing chat session functionality, such as a live chat session or an automated chat session where a library of answers is built using a messaging machine learning model, the system allows the web page to chat. It can be shown to provide sex. For example, the system can indicate in the search results that the website appears that the website provides the functionality of a chat session.

メッセージング機械学習モデルは、入力としてユーザからのおよびコンテンツプロバイダからの応答データを受けるモデルでよい。メッセージング機械学習モデルは、決定木、線形回帰モデル、ロジスティック回帰モデル、ニューラルネットワーク、分類器、サポートベクトルマシン、帰納的論理プログラミング、モデルの集合(例えば、バギング、ブースティング、ランダムフォレスト等などの技術を使用する)、遺伝的アルゴリズム、ベイジアンネットワーク等など、各種のモデルのいずれかを使用してよく、そして深層学習、パーセプトロン、結合規則、帰納論理学、クラスタリング、最大エントロピー分類、学習分類等など、各種の手法を使用して訓練可能である。一部の例では、メッセージング機械学習モデルは教師あり学習を使用してよい。他の例では、メッセージング機械学習モデルは教師なし学習を使用する。 The messaging machine learning model may be a model that receives response data from the user and from the content provider as input. Messaging machine learning models include technologies such as decision trees, linear regression models, logistic regression models, neural networks, classifiers, support vector machines, inductive logic programming, and sets of models (eg, bagging, boosting, random forest, etc.) You can use any of a variety of models such as), genetic algorithms, Bayesian networks, etc., and various types such as deep learning, perceptrons, binding rules, inductive logic, clustering, maximum entropy classification, learning classification, etc. It is possible to train using the method of. In some examples, the messaging machine learning model may use supervised learning. In another example, the messaging machine learning model uses unsupervised learning.

ウェブページは、ユーザがコンテンツプロバイダとのチャットセッションを開始できるユーザインタフェース要素を提供できる。一旦ユーザがユーザインタフェース要素をコンテンツプロバイダとのチャットセッションを開始するように選択すると、システムは、チャットセッションを開始および促進するときに、使用するチャットセッションの特性を識別する。例えば、システムは、ユーザがチャットインタフェースに入力を提供するクライアントデバイスに対するデバイス識別子、クライアントデバイスとコンテンツプロバイダの特定の担当者との間の特定のセッションに対するセション識別子、およびコンテンツプロバイダの特定の担当者がチャットインタフェースにデータを入力するデバイスに対するデバイス識別子を記憶できる。 A web page can provide a user interface element that allows a user to initiate a chat session with a content provider. Once the user chooses the user interface element to initiate a chat session with the content provider, the system identifies the characteristics of the chat session to use when initiating and facilitating the chat session. For example, the system may have a device identifier for the client device that the user provides input to the chat interface, a session identifier for a particular session between the client device and a particular contact for the content provider, and a particular contact for the content provider. Can store device identifiers for devices that enter data into the chat interface.

システムは、ユーザとコンテンツプロバイダとの間のチャットセッションのためのゲートウェイとして作用できる。システムは、ユーザとの第1のチャットセッションおよびコンテンツプロバイダとの第2の別のチャットセッションを行い、そして第1のチャットセッションおよび第2のチャットセッションにおいて提供される入力を示すデータを使用してユーザとコンテンツプロバイダとの間でメッセージを中継する。 The system can act as a gateway for chat sessions between users and content providers. The system conducts a first chat session with the user and a second chat session with the content provider, and uses data indicating the inputs provided in the first and second chat sessions. Relay messages between users and content providers.

本文書を通してテキストチャットインタフェースが論じられることになるが、本明細書で論じられる技術は、携帯情報端末などのコンピューティングデバイスを使用して開始される音声チャットセッションに適用可能である。例えば、携帯情報端末は、携帯情報端末のマイクロホンを通してユーザからオーディオ入力(例えば、口頭のクエリまたはコマンド)を受信し、そして携帯情報端末のスピーカによって出力されるオーディオを使用して、ユーザに検索結果および/または他の情報を提供してよい。携帯情報端末がディスプレイを含む、またはディスプレイもしくはディスプレイ上に情報を提示する別のデバイスに接続される(例えば、無線でもしくは有線で)コンピューティングデバイスで実装されれば、携帯情報端末は、検索結果および/またはオーディオ入力に関連する他の情報の1つまたは複数などの視覚情報も提示できる。携帯情報端末(PDA)が複数の異なる物理デバイス(例えば、移動電話、タブレット、オーディオ/ビデオストリーミングデバイス、テーブルトップPDAユニットおよび/または他のデバイス)にわたって実装可能であること、ならびに入力がデバイスの1つ(例えば、テーブルトップPDAユニット)によって受信可能であり、そしてオーディオおよび/またはビジュアル出力がデバイスの異なる1つ(例えば、移動電話)によって提示可能であることに留意されたい。同様に、クエリまたはコマンドに応じて提供されている情報の一部がデバイスの1つによって出力されてよい(例えば、テーブルトップPDAユニットによって出力される音声情報)一方で、情報の異なる部分(例えば、視覚情報)はデバイスの異なる1つ(例えば、移動電話またはオーディオ/ビデオストリーミングデバイスを含むディスプレイ)によって提示可能である。 Although text chat interfaces will be discussed throughout this document, the techniques discussed herein are applicable to voice chat sessions initiated using computing devices such as personal digital assistants. For example, a personal digital assistant receives audio input (eg, verbal query or command) from a user through the personal digital assistant's microphone, and uses the audio output by the personal digital assistant's speaker to search the user for search results. And / or other information may be provided. If the personal digital assistant is implemented in a computing device that includes a display or is connected to a display or another device that presents information on the display (eg, wirelessly or by wire), the personal digital assistant will search results. Visual information, such as one or more of the other information associated with the and / or audio input, can also be presented. A personal digital assistant (PDA) can be implemented across multiple different physical devices (eg, mobile phones, tablets, audio / video streaming devices, tabletop PDA units and / or other devices), and the input is one of the devices. Note that it can be received by one (eg, a tabletop PDA unit) and the audio and / or visual output can be presented by a different one of the devices (eg, a mobile phone). Similarly, some of the information provided in response to a query or command may be output by one of the devices (eg, audio information output by a tabletop PDA unit), while different parts of the information (eg, eg). , Visual information) can be presented by a different device (eg, a display including a mobile phone or audio / video streaming device).

オーディオ出力および/または視覚情報の一部として、PDAはユーザがチャットセッションを開始するオプションを提示できる。例えば、PDAは、ユーザにより多くの情報を提供できるエージェントに接続する、またはそれとチャットすることを望むかどうかをユーザに聞こえるように尋ねてよく、そしてユーザは、エージェントに接続する自分の要望を肯定して音声で応答できる(例えば、語「はい」または語「エージェントと接続して」と話すことによって)。ユーザがエージェントに接続する自分の要望を肯定することに応じて、PDAは、テキストチャットセッションを開始(例えば、モバイルデバイスを使用して)ならびに/またはエージェントに電話呼び出しを開始できる(例えば、インターネットプロトコル電話を経由して音声電話をかけるように構成される、例えば、モバイルデバイスおよび/もしくはテーブルトップPDAユニットを使用して)。ユーザがエージェントに接続されると、本文書を通して論じられる技術は、チャットセッション(例えば、テキストまたは音声)の状態を維持するために使用可能であり、それによって、たとえチャットセッションが中断されても、チャットセッションがシームレスに続けられることを可能にする。音声チャットセッションの場合、音声対話をテキストへ変換するために音声認識技術が使用可能であり、その結果本明細書で論じられる技術は、それらの状況でも使用可能である。 As part of the audio output and / or visual information, the PDA can offer the option for the user to initiate a chat session. For example, a PDA may ask the user if he or she wants to connect to or chat with an agent that can provide more information to the user, and the user affirms his or her desire to connect to the agent. Can respond by voice (for example, by speaking the word "yes" or the word "connect with an agent"). In response to the user affirming his or her desire to connect to the agent, the PDA can initiate a text chat session (eg, using a mobile device) and / or initiate a phone call to the agent (eg, Internet Protocol). It is configured to make a voice call over the phone, eg, using a mobile device and / or a tabletop PDA unit). When a user is connected to an agent, the techniques discussed throughout this document can be used to maintain the state of the chat session (eg, text or voice), thereby even if the chat session is interrupted. Allows chat sessions to continue seamlessly. For voice chat sessions, voice recognition techniques can be used to convert voice dialogues into text, and as a result the techniques discussed herein can also be used in those situations.

図1は、ユーザがコンテンツプロバイダと通信できる環境例100のブロック図である。環境例100は、モバイルデバイス102、クライアントデバイス104、画面のないアシスタントデバイス106(例えば、テーブルトップPDAユニット)、ゲートウェイ110、ウェブページ例120およびコンテンツプロバイダシステム130を含む。デバイス102、104および106は、ゲートウェイ110に、およびローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、インターネットまたはその組合せなどのネットワークを通じてコンテンツプロバイダシステム130に接続される。 FIG. 1 is a block diagram of an environment example 100 in which a user can communicate with a content provider. The environment example 100 includes a mobile device 102, a client device 104, a screenless assistant device 106 (eg, a tabletop PDA unit), a gateway 110, a web page example 120, and a content provider system 130. Devices 102, 104 and 106 are connected to the gateway 110 and to the content provider system 130 through networks such as local area networks (LANs), wide area networks (WANs), the Internet or combinations thereof.

モバイルデバイス102、クライアントデバイス104および画面のないアシスタントデバイス106は、各々ネットワークを通じてリソースを要求して受けることが可能である電子デバイスである。モバイルデバイス例102としては、携帯電話、スマートフォン、タブレット、およびユーザがネットワークを通じてコンテンツプロバイダに接続できる他の携帯型モバイルデバイスを含む。クライアントデバイス例104としては、パーソナルコンピュータ、モバイルワークステーションおよびラップトップコンピュータを含む。デバイス102、104および106は、ネットワークを通じたデータの送受信を促進するために、ウェブブラウザなどのユーザアプリケーションを典型的に含むが、クライアントデバイス104によって実行されるネイティブアプリケーションもネットワークを通じたデータの送受信を促進できる。 The mobile device 102, the client device 104, and the screenless assistant device 106 are electronic devices that can request and receive resources through the network, respectively. Examples of mobile devices 102 include mobile phones, smartphones, tablets, and other portable mobile devices that allow users to connect to content providers over a network. Client device example 104 includes personal computers, mobile workstations and laptop computers. Devices 102, 104 and 106 typically include user applications such as web browsers to facilitate the transmission and reception of data over the network, while native applications executed by client device 104 also transmit and receive data over the network. Can be promoted.

デバイス102、104または106は、ネットワークを通じて、検索エンジンなどの検索システムに検索クエリを提出できる。応答して、検索システムは、検索クエリに関連している電子文書を特定するために検索インデックスにアクセスする。検索システムは、検索結果の形態で電子文書を特定し、そして検索結果ページでデバイス102、104または106に検索結果を返す。 The device 102, 104 or 106 can submit a search query to a search system such as a search engine over the network. In response, the search system accesses the search index to identify the electronic documents associated with the search query. The search system identifies the electronic document in the form of search results and returns the search results to device 102, 104 or 106 on the search results page.

検索結果は、特定の検索クエリに応答(例えば、関連)している電子文書を特定する検索システムによって生成されるデータであり、かつクライアントデバイスに検索結果とのユーザ対話に応じて指定されたネットワーク位置(例えば、URL)からデータを要求させるアクティブリンク(例えば、ハイパーテキストリンク)を含む。検索結果例としては、ウェブページタイトル、ウェブページから抽出されたテキストのスニペットまたは画像の一部分、およびウェブページのURLを含むことができる。別の検索結果例としては、ダウンロード可能なアプリケーションのタイトル、ダウンロード可能なアプリケーションを説明するテキストのスニペット、ダウンロード可能なアプリケーションのユーザインタフェースを描く画像、および/またはアプリケーションがデバイス102、104もしくは106にダウンロード可能である位置へのURLを含むことができる。 Search results are data generated by a search system that identifies electronic documents that are responding to (eg, related to) a particular search query, and the network specified to the client device in response to user interaction with the search results. Includes an active link (eg, a hypertext link) that requests data from a location (eg, a URL). Examples of search results can include a web page title, a snippet or part of an image of text extracted from the web page, and a URL of the web page. Other search result examples include the title of the downloadable application, a text snippet describing the downloadable application, an image depicting the user interface of the downloadable application, and / or the application downloaded to device 102, 104 or 106. It can include a URL to a possible location.

一部の状況では、検索システムは、提出された検索クエリに関連しているダウンロード可能なアプリケーションについての情報を提示するために、アプリケーションがクライアントデバイスにおけるインストールのためにダウンロード可能であるアプリケーションストア(またはオンラインポータル)の一部であることができる、またはそれと対話できる。他の電子文書の様に、検索結果ページは、デジタルコンポーネント(例えば、ビデオクリップ、オーディオクリップ、画像、または広告としてフォーマット可能である他のデジタルコンポーネント)が提示可能である1つまたは複数のデジタルコンポーネントスロットを含むことができる。 In some situations, the search system is an application store (or application store) where the application is downloadable for installation on the client device in order to provide information about the downloadable application associated with the submitted search query. Can be part of an online portal) or can interact with it. Like other electronic documents, a search results page is one or more digital components that can be presented with digital components (eg, video clips, audio clips, images, or other digital components that can be formatted as advertisements). Can include slots.

ゲートウェイ110は、チャットセッションを促進し、そしてバックエンドおよびフロントエンドを含む。ゲートウェイ110のバックエンドは、チャットセッションのためのインフラストラクチャを提供し、そしてコンテンツプロバイダおよびユーザと別々に通信する。例えば、バックエンドは、クライアントデバイスを通じてユーザによって入力されたデータを使用してコンテンツプロバイダとのチャットセッションを行う他に、コンテンツプロバイダの担当者によって入力されたデータを使用してユーザとのチャットセッションを行うことができる。バックエンドインタフェースは、特定のスクリプトアプリケーションプログラミングインタフェース(API)、特定のアンドロイドアプリケーションパッケージ(.apk)または様々な他の適切なパッケージなど、ユーザまたはコンテンツプロバイダが同意する共通フォーマットまたはパッケージであることができる。 Gateway 110 facilitates chat sessions and includes backends and frontends. The gateway 110 backend provides the infrastructure for chat sessions and communicates separately with content providers and users. For example, the backend uses the data entered by the user through the client device to have a chat session with the content provider, as well as the data entered by the content provider representative to have a chat session with the user. It can be carried out. The backend interface can be a common format or package that the user or content provider agrees on, such as a particular script application programming interface (API), a particular android application package (.apk) or various other suitable packages. ..

ゲートウェイ110のフロントエンドは、ユーザおよびコンテンツプロバイダの一方が他方に伝送および提示されることになる入力を提供できるインタフェースであることができる。例えば、フロントエンドは、ユーザおよびコンテンツプロバイダに別々に提示されるチャットインタフェースであることができる。フロントエンドは、ユーザに合わせておよびコンテンツプロバイダに合わせてカスタマイズ可能であり、かつデフォルトプロフィール設定を有することができるかユーザまたはコンテンツプロバイダによって調節可能かである。例えば、ユーザに対するフロントエンドはより大きなテキストボックスおよび太字体を含むことができる一方で、コンテンツプロバイダに対するフロントエンドは、ユーザのデバイスのリモートアクセスおよび制御などの追加機能を含むことができる。 The front end of gateway 110 can be an interface on which one of the user and the content provider can provide the input to be transmitted and presented to the other. For example, the front end can be a chat interface that is presented separately to the user and content provider. The front end can be customized for the user and for the content provider, and can have default profile settings or can be adjusted by the user or content provider. For example, the front end for the user can include a larger text box and bold font, while the front end for the content provider can include additional features such as remote access and control of the user's device.

ゲートウェイ110は、メッセージング機能性を提供する各ウェブページを特定し、そしてウェブページが同機能性を提供することを示すデータを記憶する。メッセージング機能性を提供するウェブページの特定は一般に、検索要求の実行時によりもむしろウェブページが検索結果として提示される前に行われる。 The gateway 110 identifies each web page that provides messaging functionality and stores data indicating that the web page provides that functionality. Identification of a web page that provides messaging functionality is generally done before the web page is presented as search results, rather than when the search request is executed.

メッセージング機能性を提供するウェブページは一般に、チャットセッションを開始するボタンなど、ユーザがメッセージングセッションを開始できるユーザインタフェース要素を含む。例えば、ウェブページ120は、ユーザがコンテンツプロバイダとのチャットセッションを開始するように選択できるボタン122を含むのを図示される。ウェブページ120は、主要なテキスト語句など、メッセージング機能性が提供またはサポートされているという様々な他の表示も含むことができる。例えば、ウェブページ120は、「今誰かとチャットする」と読めるテキストを含む。 Web pages that provide messaging functionality typically include user interface elements that allow the user to initiate a messaging session, such as a button to initiate a chat session. For example, the web page 120 is illustrated to include a button 122 that allows the user to choose to initiate a chat session with the content provider. Web page 120 can also include various other indications that messaging functionality is provided or supported, such as key text terms. For example, web page 120 contains text that reads "chat with someone now."

ゲートウェイ110は、ユーザが特定のユーザインタフェース要素を選択すると新たなウィンドウを開かせるコードスニペットなど、ウェブページ120の或るスクリプト特徴を検出することによっても、ウェブページ120がメッセージングまたはチャット機能性を提供すると特定できる。ウェブページ120がチャット機能性を提供するかどうかを判定するために使用されてよいウェブページ120の別の特徴は、ウェブページ120が、異なるウェブサイトまたはプロバイダにリンクする、ウェブページ120に表示されるウィジェットを含むかどうかである。例えば、ウェブページ120は、それが公知のチャットサービスプロバイダと通信するウィジェットを提供していれば、おそらくチャット機能性を提供している。ウィジェットは、特定のクライアントデバイス、特定の事例、等に対する識別子など、他の通信情報に加えて特定のセッションに対する識別子を含むことができる。 Gateway 110 also provides messaging or chat functionality by detecting certain script features of web page 120, such as code snippets that open a new window when the user selects a particular user interface element. Then it can be identified. Another feature of the web page 120 that may be used to determine if the web page 120 provides chat functionality is that the web page 120 is displayed on the web page 120, which links to a different website or provider. Whether to include a widget. For example, web page 120 probably provides chat functionality if it provides a widget that communicates with a known chat service provider. The widget can include an identifier for a particular session in addition to other communication information, such as an identifier for a particular client device, a particular case, etc.

メッセージングサービスを提供すると知られている或るドメインへのリンクなどの特徴も、ウェブページ120がおそらくメッセージング機能性を提供していることを示す。例えば、ウェブページが公知の自動化チャットサービスにリンクしていれば、ゲートウェイ110は、ウェブページ120をメッセージング機能性をサポートするとして標記できる。 Features such as a link to a domain known to provide messaging services also indicate that web page 120 probably provides messaging functionality. For example, if the web page links to a known automated chat service, the gateway 110 can mark the web page 120 as supporting messaging functionality.

ゲートウェイ110が初期検索要求を受信すると、ゲートウェイ110は、提示される検索結果がメッセージング機能性を提供するかどうかを判定するために記憶データにアクセスする。特定のウェブページがメッセージング機能性を提供していれば、ゲートウェイ110は、提供されるメッセージング機能性の種類を示し、かつ選択されると、検索結果ウェブページにユーザを導くことなくメッセージングセッションを開始する、検索結果と共に提示されることになるユーザインタフェース要素を生成する。 When the gateway 110 receives the initial search request, the gateway 110 accesses the stored data to determine whether the presented search results provide messaging functionality. If a particular web page provides messaging functionality, gateway 110 indicates the type of messaging functionality provided and, when selected, initiates a messaging session without directing the user to the search results web page. Generates a user interface element that will be presented with the search results.

コンテンツプロバイダシステム130は、特定のコンテンツプロバイダと関連付けられ、そして検索クエリに応じてリソースを提供するネットワーク宛先であることができる。例えば、コンテンツプロバイダシステム130は、ユーザが特定のクエリに対して検索するときにダウンロードできる、ファイルなどのリソースをホストできる。コンテンツプロバイダシステム130は、コンテンツプロバイダの担当者がユーザと対話できるユーザインタフェースを含む。一部の例では、ユーザインタフェースはチャットインタフェースであり、それを通じて担当者はユーザとリアルタイムに通信できる。 The content provider system 130 can be a network destination that is associated with a particular content provider and provides resources in response to search queries. For example, the content provider system 130 can host resources such as files that users can download when searching for a particular query. The content provider system 130 includes a user interface that allows the person in charge of the content provider to interact with the user. In some examples, the user interface is a chat interface through which personnel can communicate with the user in real time.

ゲートウェイ110は、ユーザとコンテンツプロバイダとの間のチャットセッションを開始および維持するために使用されるコンピューティングリソースの数を削減する。加えて、ユーザがコンテンツプロバイダのウェブページに進む必要性を低減することによって、ゲートウェイ110は、ユーザがチャット機能性を探すことに、およびコンテンツプロバイダのウェブページに関するデータを伝送しなければならないことに関連したネットワークトラフィックを軽減する。 Gateway 110 reduces the number of computing resources used to initiate and maintain chat sessions between users and content providers. In addition, by reducing the user's need to navigate to the content provider's web page, the gateway 110 states that the user must look for chat functionality and transmit data about the content provider's web page. Reduce associated network traffic.

図2は、ユーザとコンテンツプロバイダとの間のチャットセッションのためのユーザインタフェース例200である。チャットセッションは、システム100など、ネットワークによって通信可能に接続される少なくとも2つのデバイスを含むシステムによって行われ得る。チャットセッションは、ゲートウェイ110などの通信ゲートウェイによって開始、促進および維持可能である。 FIG. 2 is an example user interface 200 for a chat session between a user and a content provider. A chat session can be conducted by a system, such as system 100, that includes at least two devices communicatively connected by a network. Chat sessions can be initiated, facilitated and maintained by a communication gateway such as gateway 110.

検索クエリ202は、ユーザが関連結果を見ることに関心があるクエリを示す、検索エンジンなどの検索システムにユーザによって入力されたデータである。検索エンジンは、検索結果ページに結果210、220、230および240を提供できる。結果210、220、230および240の各々は、検索クエリ202に関連しており、一部の実装例では、検索クエリ202への関連性に基づいてランク付け可能である。 The search query 202 is data entered by the user into a search system such as a search engine that indicates a query in which the user is interested in seeing the relevant results. The search engine can provide the results 210, 220, 230 and 240 on the search results page. Each of the results 210, 220, 230 and 240 is associated with search query 202 and, in some implementations, can be ranked based on relevance to search query 202.

結果210、220、230および240は各々、関連コンテンツプロバイダとのチャットインタフェースにユーザを導くそれぞれのユーザインタフェース要素212、222、232および242を含む。ユーザインタフェース要素212、222、232および242は、各要素が提示される関連コンテンツプロバイダのウェブページに合わせてカスタマイズ可能である。カスタマイズは、フォント、テキストサイズまたは色など、特定の関連ウェブページの様々な属性に基づくことができる。例えば、ユーザインタフェース要素212、222、232および242は各々、それぞれの検索結果ウェブページ210、220、230および240に関連付けられたテーマを有する。 Results 210, 220, 230 and 240 each include user interface elements 212, 222, 232 and 242 that guide the user to a chat interface with the relevant content provider. User interface elements 212, 222, 232 and 242 can be customized for the associated content provider's web page on which each element is presented. Customization can be based on various attributes of a particular related web page, such as font, text size or color. For example, user interface elements 212, 222, 232 and 242 have themes associated with their respective search result web pages 210, 220, 230 and 240, respectively.

ユーザがユーザインタフェース要素212、222、232または242の1つを選択すると、ゲートウェイ110は、ユーザと対応する検索結果ウェブページ210、220、230または240を提供するコンテンツプロバイダとの間のチャットセッションを開始する。図2に図示される例では、ユーザは、検索結果ウェブページ210に関連付けられたユーザインタフェース要素212を選択する。チャットセッションはこのように描画され、したがってゲートウェイによって管理される。これは、ゲートウェイまたはゲートウェイに関連付けられたサーバが、ユーザおよび/またはコンテンツプロバイダによって現在使用中である特定のブラウザ、オペレーティングシステムおよび任意の他のユーザデバイスもしくはシステムにかかわらず、シームレスな方式でチャットセッションに関連付けられたスケーラビリティ、セキュリティ、信頼性およびストレージを保証するために、制御および任意の必要とされるプロトコルおよびデータ構造を実装することを可能にする。 When the user selects one of the user interface elements 212, 222, 232 or 242, the gateway 110 establishes a chat session between the user and the content provider providing the corresponding search result web pages 210, 220, 230 or 240. Start. In the example illustrated in FIG. 2, the user selects the user interface element 212 associated with the search result web page 210. Chat sessions are drawn this way and are therefore managed by the gateway. This is a seamless chat session regardless of the particular browser, operating system and any other user device or system that the gateway or server associated with the gateway is currently using by the user and / or content provider. Allows you to implement control and any required protocols and data structures to ensure the scalability, security, reliability and storage associated with.

一旦ユーザがユーザインタフェース要素212を選択すると、ゲートウェイ110は、検索結果ウェブページ210を提供するコンテンツプロバイダとのチャットセッションを開始する。ゲートウェイ110は、ウェブページ120および要素212を選択したユーザを識別し、そしてウェブページ120およびユーザの識別子を示すデータを記憶する。ゲートウェイ110は、セッションの長さ、ユーザとのチャットセッションに対する第1のセション識別子、コンテンツプロバイダとのチャットセッションに対する第2の別のセション識別子など、チャットセッションの様々な他の属性も記憶できる。 Once the user selects the user interface element 212, the gateway 110 initiates a chat session with the content provider that provides the search results web page 210. The gateway 110 identifies the user who selected the web page 120 and element 212, and stores data indicating the web page 120 and the user's identifier. The gateway 110 can also store various other attributes of the chat session, such as session length, a first session identifier for a chat session with a user, and a second session identifier for a chat session with a content provider.

ゲートウェイ110が多くの異なるユーザとコンテンツプロバイダとの間の多くの異なる会話を管理するときにユーザとコンテンツプロバイダとの間のセッションを維持するために、ゲートウェイ110は、ユーザとの1つのセッションからコンテンツプロバイダとの別のセッションに応答を導く。ゲートウェイ110は、ユーザとコンテンツプロバイダとの間でメッセージを適切に転送するために、セション識別子を示す記憶データを使用する。 In order to maintain a session between the user and the content provider when the gateway 110 manages many different conversations between many different users and the content provider, the gateway 110 provides content from one session with the user. Guide the response to another session with the provider. The gateway 110 uses stored data indicating a session identifier in order to properly transfer a message between the user and the content provider.

ゲートウェイ110は、様々なフォーマットの入力を受信し、入力をフォーマットし、そしてユーザとコンテンツプロバイダとの間のチャットセッションに入力を提供できる。例えば、ユーザは、コンテンツプロバイダとのチャットを開始するために特定の電話番号にテキストメッセージを送信できる。特定の電話番号はコンテンツプロバイダと関連付け可能であり、そして特定の電話番号でのテキストメッセージの受信は、コンテンツプロバイダとのチャットセッションの開始を引き起こすことができる。例えば、特定の電話番号でのテキストメッセージの受信は、システムをゲートウェイ110と交信し、そしてチャットセッションへの入力としてユーザ入力を提供するように起動できる。ユーザがコンテンツプロバイダから応答を受信すると、ゲートウェイ110は、ユーザにテキストメッセージとして応答を提供できる。ユーザはまた、テキストメッセージ、または電子メール、または様々な他の適切な通信方法を通じてコンテンツプロバイダに応答を提供できる。 The gateway 110 can receive input in various formats, format the input, and provide the input for a chat session between the user and the content provider. For example, a user can send a text message to a particular phone number to initiate a chat with a content provider. A particular phone number can be associated with a content provider, and receiving a text message at a particular phone number can trigger the start of a chat session with the content provider. For example, receiving a text message at a particular phone number can be invoked to communicate the system with gateway 110 and provide user input as input to a chat session. When the user receives the response from the content provider, the gateway 110 can provide the user with the response as a text message. The user can also provide a response to the content provider via text message, or email, or various other suitable communication methods.

ゲートウェイ110は、様々なフォーマットのユーザかコンテンツプロバイダかからの入力を処理できる。例えば、ユーザがモバイルデバイス102を使用してゲートウェイ110と対話し、そしてユーザインタフェース要素212をコンテンツプロバイダとの電子メール会話を開始するように選択すれば、コンテンツプロバイダとのチャットセッションが開始可能であり、そしてユーザ入力および応答は電子メールクライアントインタフェース内で提示可能である。 The gateway 110 can process input from users or content providers in various formats. For example, a chat session with a content provider can be initiated if the user uses the mobile device 102 to interact with the gateway 110 and chooses user interface element 212 to initiate an email conversation with the content provider. , And user input and responses can be presented within the email client interface.

一部の実装例では、従来の会話があれば、ゲートウェイ110は、ユーザが入力を提供できる電話番号などの特定の識別子を提供できる。例えば、ユーザがコンテンツプロバイダに既に接続されている場合、ユーザ入力が、テキストメッセージアプリケーションまたは電子メールクライアントなどの異なるアプリケーションに提供されば、ゲートウェイ110は、コンテンツプロバイダに応じてユーザ入力を検出できる。ユーザの入力は次いで、会話に提供されることになる入力に変換可能である。 In some implementations, with traditional conversation, gateway 110 can provide a particular identifier, such as a telephone number, to which the user can provide input. For example, if the user is already connected to the content provider and the user input is provided to a different application such as a text message application or an email client, the gateway 110 can detect the user input depending on the content provider. The user's input can then be translated into the input that will be provided for the conversation.

セッションが確立されるとき、ウェブページ210にユーザを導くことなくチャットインタフェースが提示可能であり、それによってネットワーク呼び出しの数および/またはチャットセッションを確立するために転送されるデータを削減する。例えば、チャットインタフェースは、検索結果ページ204に提示可能である。上記したように、チャットインタフェースは、ユーザがデータを入力できるユーザインタフェース要素を含むことができる。例えば、チャットインタフェースは、ユーザがコンテンツプロバイダに提供されることになる応答または質問を入力できるテキストボックス、およびユーザが入力を提出できるボタンを含むことができる。ファイル添付、画面共有等など、チャットインタフェース内に追加のインタフェース要素が設けられ得る。 When a session is established, a chat interface can be presented without directing the user to web page 210, thereby reducing the number of network calls and / or the data transferred to establish the chat session. For example, the chat interface can be presented on search result page 204. As mentioned above, the chat interface can include user interface elements from which the user can enter data. For example, the chat interface can include a text box where the user can enter a response or question that will be provided to the content provider, and a button where the user can submit input. Additional interface elements may be provided within the chat interface, such as file attachments, screen sharing, etc.

チャットインタフェースは、ヘッドレスレンダリングなどの様々なレンダリング方法を使用して検索結果ページ204内に描画可能である。チャットインタフェースは、ユーザまたはコンテンツプロバイダからの入力を受信し、そして伝送のためにゲートウェイ110に入力を提供する。 The chat interface can be rendered within search result page 204 using various rendering methods such as headless rendering. The chat interface receives input from the user or content provider and provides input to gateway 110 for transmission.

セッションが確立されると、コンテンツプロバイダと交信するチャットインタフェース方法に対して、クリックスルー率、コンバージョン率、平均トラフィック、アクセスの時間等などの特定のメトリックが計算可能である。例えば、チャット機能性ユーザインタフェース要素に関連付けられたクリックスルー率が計算可能である。一部の実装例では、コンテンツプロバイダは、計算されたメトリックを使用して生成される報告にアクセスできる。例えば、コンテンツプロバイダは、チャットインタフェース方法の性能に関する報告、および報告されたメトリックに基づいてチャットインタフェースのためのキャンペーン予算を調整することを検討できる。 Once the session is established, certain metrics such as click-through rate, conversion rate, average traffic, access time, etc. can be calculated for the chat interface method of communicating with the content provider. For example, the click-through rate associated with a chat functionality user interface element can be calculated. In some implementation examples, content providers have access to reports generated using calculated metrics. For example, content providers may consider adjusting the campaign budget for chat interfaces based on reports on the performance of chat interface methods and the reported metrics.

ゲートウェイ110が画面のないアシスタントデバイス106と共に使用されると、画面のないアシスタントデバイス106は、モバイルデバイス102および固定クライアントデバイス104と同じチャットセッションのためのインフラストラクチャを使用してユーザとコンテンツプロバイダとの間の会話を促進できる。しかしながら、画面のないアシスタントデバイス106が画面を含まないので、データを受信および出力する方法は追加のステップを含む。画面のないアシスタントデバイス106は、音声入力またはタッチ入力などの様々な種類の適切な入力を受信できる。例えば、画面のないアシスタントデバイス106は、画面のないアシスタントデバイス106のマイクロホンを通して口頭のコマンドを受信できる。口頭のコマンドは処理可能であり、そして音声入力を表すテキストデータが抽出可能である。一部の実装例では、画面のないアシスタントデバイス106が音声入力を処理する一方で、他の実装例では、ゲートウェイ110またはリモートシステムが音声入力を処理する。 When the gateway 110 is used with the screenless assistant device 106, the screenless assistant device 106 uses the same infrastructure for chat sessions as the mobile device 102 and the fixed client device 104 to interact with the user and the content provider. Can facilitate conversations between. However, since the screenless assistant device 106 does not include a screen, the method of receiving and outputting data involves additional steps. The screenless assistant device 106 can receive various types of suitable inputs, such as voice or touch inputs. For example, the screenless assistant device 106 can receive verbal commands through the microphone of the screenless assistant device 106. Verbal commands can be processed, and textual data representing voice input can be extracted. In some implementations, the screenless assistant device 106 processes the voice input, while in other implementations the gateway 110 or the remote system processes the voice input.

ゲートウェイ110は次いで、コンテンツプロバイダとのセッションへの入力としてテキストデータを使用できる。ゲートウェイ110がコンテンツプロバイダから応答を受信すると、応答は、画面のないアシスタントデバイス106への入力が提供されたのと同じフォーマットで出力されるように処理可能である。例えば、画面のないアシスタントデバイス106が音声入力を受信した場合、画面のないアシスタントデバイス106は、音声データを含む出力用のデータを受信できる。 Gateway 110 can then use the text data as input to a session with the content provider. When the gateway 110 receives a response from the content provider, the response can be processed to be output in the same format as the input to the screenless assistant device 106 was provided. For example, when the screenless assistant device 106 receives the voice input, the screenless assistant device 106 can receive the output data including the voice data.

システム100の例証的な使用法では、ユーザは、「ABC社のカスタマーサービスと話したい」と言うことによってモバイルデバイス102に音声入力を提供できる。モバイルデバイス102は次いで、ユーザがメッセージングセッションを開始するのを可能にするユーザインタフェース要素と一緒にメッセージング機能性を提供するとして特定されるウェブページを含んでよい検索結果を表示できる。 In an exemplary use of system 100, the user can provide voice input to the mobile device 102 by saying "I want to talk to ABC customer service." The mobile device 102 can then display search results that may include a web page identified as providing messaging functionality along with a user interface element that allows the user to initiate a messaging session.

ユーザは、異なるデバイス上でコンテンツプロバイダとの会話を続けることができる。例えば、ユーザがモバイルデバイス102上でコンテンツプロバイダとのメッセージングセッションを開始した場合、ユーザは、画面のないアシスタントデバイス106上でコンテンツプロバイダとの会話を続けることができる。ゲートウェイ110は、ユーザが入力を提供しているまたはメッセージングセッションにアクセスしているデバイスを検出し、そしてテキスト、音声、ピクチャ等などの適切な出力方法を選択できる。 The user can continue the conversation with the content provider on different devices. For example, if the user initiates a messaging session with the content provider on the mobile device 102, the user can continue the conversation with the content provider on the screenless assistant device 106. The gateway 110 can detect the device the user is providing input to or accessing the messaging session and can select the appropriate output method such as text, voice, picture, etc.

ユーザとのおよびコンテンツプロバイダとの別々のセッションを使用してチャットセッションを維持することによって、ゲートウェイ110は、ユーザかコンテンツプロバイダかによって既に提供された情報を再入力および提供するために必要とされるコンピューティングリソースの量を削減する。例えば、ユーザは、間断なく、かつ既に確立されたチャットセッションを通じて既に入力されている冗長データを入力しなければならないことなく、チャットセッションを続けることができる。加えて、ゲートウェイ110は、ユーザとコンテンツプロバイダとの間のセッションを別々に維持することによってチャットセッションのロバスト性を改善し、その結果いずれのセッションの一時的な切断でもチャットセッションを終了させない。 By maintaining a chat session using separate sessions with the user and with the content provider, the gateway 110 is required to re-enter and provide the information already provided by the user or the content provider. Reduce the amount of computing resources. For example, a user can continue a chat session without interruption and without having to enter redundant data that has already been entered through an already established chat session. In addition, the gateway 110 improves the robustness of the chat session by keeping the sessions between the user and the content provider separate, so that the chat session is not terminated by the temporary disconnection of any session.

一部の例では、ゲートウェイ110は、ユーザとコンテンツプロバイダとの間の会話が行われるにつれて会話からのデータを記憶することによって会話を保存する。ユーザおよびコンテンツプロバイダが切断されれば、ゲートウェイ110は、ユーザとコンテンツプロバイダとの間の会話を再確立するために、ユーザおよびコンテンツプロバイダが切断された箇所までの会話に対する記憶データの少なくとも一部を使用する。 In some examples, the gateway 110 stores the conversation by storing data from the conversation as the conversation between the user and the content provider takes place. If the user and content provider are disconnected, the gateway 110 will reestablish at least some of the stored data for the conversation up to where the user and content provider were disconnected in order to reestablish the conversation between the user and the content provider. use.

チャットセッションが再確立されると、ゲートウェイ110は、ユーザとの既に行われた会話の箇所までコンテンツプロバイダに追いつくために、ユーザからの更なる入力なくコンテンツプロバイダとの会話を行う(またはコンテンツプロバイダに前のチャットセッションを提供する)ことができる。例えば、ゲートウェイ110は、ユーザが接続されるコンテンツプロバイダの次の担当者がユーザの状況を通知され、そのためユーザが既に提供された情報を繰り返すことなく担当者との自分の会話を続けることができるように、ユーザのデバイス情報および問題記述を示す記憶データを自動的に提供できる。ゲートウェイ110は、ユーザの既に提供された回答を使用して訓練された機械学習モデルを使用してコンテンツプロバイダの応答に対する回答を自律的に決定できる。機械学習モデルは、コンテンツプロバイダの応答を入力として受け、そして様々な適切な応答を出力できる。 When the chat session is reestablished, the gateway 110 engages in a conversation with the content provider (or to the content provider) without further input from the user in order to catch up with the content provider to the point of the conversation that has already taken place with the user. Can provide a previous chat session). For example, the gateway 110 allows the next person in charge of the content provider to which the user is connected to be notified of the user's status so that the user can continue his or her conversation with the person without repeating the information already provided. As such, stored data indicating the user's device information and problem description can be automatically provided. The gateway 110 can autonomously determine the answer to the content provider's response using a machine learning model trained using the answer already provided by the user. The machine learning model can take the response of the content provider as input and output various appropriate responses.

一部の例では、ゲートウェイ110は、従来のメッセージングサービスプロバイダと統合され、そしてユーザが会話を離れたときなどの特定の箇所からユーザが会話を再び続けるのを可能にする特定のセッションデータを記憶することによってサーバ側統合を行う。例えば、一旦ゲートウェイ110が新たなメッセージングセッションを確立すると、ゲートウェイ110は、異なるコンテンツプロバイダ担当者に記憶データを提供できる。 In some examples, the gateway 110 integrates with a traditional messaging service provider and stores specific session data that allows the user to continue the conversation from a particular location, such as when the user leaves the conversation. By doing so, server-side integration is performed. For example, once the gateway 110 establishes a new messaging session, the gateway 110 can provide stored data to different content provider personnel.

一部の実装例では、ゲートウェイ110は、前の会話の箇所まで新たな担当者を更新することができない。例えば、特定の情報に対する新たな担当者の応答が前の担当者の応答と異なることがあり、そしてゲートウェイ110は、ユーザが前に担当者に提供することができた情報の全てをゲートウェイ110が提供できる方向に会話を進めることができないかもしれない。ゲートウェイ110がユーザが既に提供した情報の全てを提供することができないとき、ゲートウェイ110は、ユーザなしで行われる会話に対するコンテキストをユーザに提供できる。 In some implementations, gateway 110 is unable to update new personnel up to the point of the previous conversation. For example, the new contact's response to certain information may differ from the previous contact's response, and the gateway 110 will provide the gateway 110 with all the information that the user could have previously provided to the contact. You may not be able to proceed in the direction you can provide. When the gateway 110 is unable to provide all of the information already provided by the user, the gateway 110 can provide the user with context for conversations that take place without the user.

ゲートウェイ110は、セッションデータまたはユーザ入力を記憶することによって、クライアント側統合も行うことができる。ゲートウェイ110は、会話が追いつかれたまたはゲートウェイ110ができる限りの更新されたときにユーザに記憶データを提供でき、その結果ユーザはコンテンツプロバイダ担当者の状況の理解に対するコンテキストを有する。 The gateway 110 can also perform client-side integration by storing session data or user input. The gateway 110 can provide the user with stored data when the conversation is caught up or the gateway 110 is updated as much as possible, so that the user has a context for understanding the situation of the content provider personnel.

ゲートウェイ110は、ユーザが無活動であるまたは手が空いていないときを検出できる。例えば、ユーザが会議に出かけるまたはコンテンツプロバイダ担当者に通知することなく自分のデバイスをから離れれば、ゲートウェイ110は同事例を無活動と標記できる。ゲートウェイ110は、現在の会話の様々な特性に基づいて、ユーザが無活動であるかどうかを判定できる。そのような特性は、コンテンツプロバイダの最後の応答とユーザの最後の応答との間で経過する閾値期間、ユーザによって入力される或る語句、コンテンツプロバイダによって入力される或る語句、またはゲートウェイ110がアクセスするユーザに関連付けられた様々なイベントデータを含む。例えば、ユーザの会話中に会議がスケジュールされていれば、ゲートウェイ110は、ユーザが閾値時間量内に応答しない場合、ユーザが会議中であると判定できる。 The gateway 110 can detect when the user is inactive or free. For example, if the user leaves his device without going to a meeting or notifying a content provider representative, the gateway 110 can mark the case as inactive. The gateway 110 can determine if the user is inactive based on various characteristics of the current conversation. Such characteristics include the threshold period elapsed between the content provider's last response and the user's last response, some words entered by the user, some words entered by the content provider, or the gateway 110. Contains various event data associated with the accessing user. For example, if the meeting is scheduled during the user's conversation, the gateway 110 can determine that the user is in a meeting if the user does not respond within the threshold time amount.

会話が無活動と標記されると、ゲートウェイ110は、コンテンツプロバイダにユーザが不在であると通知できる。例えば、ユーザが無活動であると検出されれば、ゲートウェイ110は、コンテンツプロバイダ担当者に数分の間待って接続したままでいるよう依頼する応答を、ユーザに代わってコンテンツプロバイダ担当者に提供できる。 If the conversation is marked as inactive, the gateway 110 can notify the content provider that the user is absent. For example, if the user is detected to be inactive, the gateway 110 provides the content provider contact on behalf of the user with a response asking the content provider contact to wait a few minutes and stay connected. it can.

一部の例では、ゲートウェイ110は、事例を無活動の代わりに解決済と標記できる。例えば、ユーザが閾値時間量の間応答しないが、ユーザによって提供される応答において、ユーザが「すばらしい、これで十分、ありがとう」と応答するなど、コンテンツプロバイダがユーザの問題を解決したというしるしがあれば、ゲートウェイ110は同会話を解決済と標記できる。ゲートウェイ110またはユーザがコンテンツプロバイダと通信しているデバイス102、104もしくは106は、ユーザまたはコンテンツプロバイダからの入力に、問題が解決されたかどうかを明らかにするよう要求することもできる。例えば、画面のないアシスタントデバイス106は、ユーザとコンテンツプロバイダとの間の会話と別に、問題が解決されたかどうかを尋ねる音声出力をユーザに提供できる。ユーザが肯定応答を提供すれば、画面のないアシスタントデバイス106は応答をゲートウェイ110に提供でき、そしてゲートウェイ110は会話を解決済と標記でき、ユーザからの更なる応答を促すまたはその他引き出すことはない。 In some examples, gateway 110 can mark the case as resolved instead of inactive. For example, the content provider has solved the user's problem, for example, the user does not respond for the threshold amount of time, but the user responds "great, this is enough, thank you" in the response provided by the user. For example, the gateway 110 can mark the conversation as resolved. The gateway 110 or the device 102, 104 or 106 with which the user is communicating with the content provider may also require input from the user or content provider to clarify whether the problem has been resolved. For example, the screenless assistant device 106 can provide the user with audio output asking if the problem has been resolved, apart from the conversation between the user and the content provider. If the user provides an acknowledgment, the screenless assistant device 106 can provide the response to gateway 110, which can mark the conversation as resolved and does not prompt or otherwise elicit further response from the user. ..

一部の例では、ゲートウェイ110は、ユーザが一時的に手が空いていないだけであれば、コンテンツプロバイダ担当者との会話を維持しようとすることができる。例えば、ユーザがモバイルデバイス102で電話を受ければ、ゲートウェイ110は、「すぐに戻ります、お待ちいただけますか」など、ユーザに代わってコンテンツプロバイダに応答を提供できる。ゲートウェイ110は次いで、ユーザの次の応答までチャットセッションを維持しようとすることができる。 In some examples, the gateway 110 may attempt to maintain a conversation with the content provider representative if the user is only temporarily free. For example, if the user receives a call on the mobile device 102, the gateway 110 can provide a response to the content provider on behalf of the user, such as "I'll be back soon, can you wait?" Gateway 110 can then attempt to maintain the chat session until the user's next response.

図3は、ユーザとサードパーティコンテンツプロバイダとの間のチャットセッションを開始および維持するための工程例300のフローチャートである。一部の実装例では、工程300は、システム100などのメッセージングシステムによって実装可能である。例えば、工程300は、図1のゲートウェイ110によって実装可能である。一部の実装例では、工程300は、非一時的コンピュータ可読媒体に記憶される命令として実装可能であり、そして命令が1つまたは複数のサーバによって実行されると、命令は、1つまたは複数のサーバに工程300の動作を行わせることができる。 FIG. 3 is a flowchart of Step Example 300 for starting and maintaining a chat session between a user and a third party content provider. In some implementation examples, step 300 can be implemented by a messaging system such as system 100. For example, step 300 can be implemented by the gateway 110 of FIG. In some implementations, step 300 can be implemented as an instruction stored on a non-temporary computer-readable medium, and when the instruction is executed by one or more servers, the instruction is one or more. The server can be made to perform the operation of step 300.

工程300が開始すると、複数のウェブリソースの各々に対して、通信サーバがそれぞれのウェブリソースの特性を示すデータを受信する(302)。例えば、ゲートウェイ110は、ウェブページが特定の語句、ウィジェット、コードのスニペット等を含むかどうかを含め、特定のウェブページの特性を示すデータを受信できる。 When step 300 starts, for each of the plurality of web resources, the communication server receives data indicating the characteristics of each web resource (302). For example, the gateway 110 can receive data that characterizes a particular web page, including whether the web page contains a particular phrase, widget, code snippet, and so on.

工程300は続いて、複数のウェブリソースの各々に対して、通信サーバが、受信したデータに基づいて、それぞれのウェブリソースがそれぞれのウェブリソース上のチャットユーザインタフェースを通じてサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供すると検出する304。一部の例では、チャットユーザインタフェースはチャットウィジェットである。ライブアシスタンスは、特定のサードパーティコンテンツプロバイダの人間の担当者によって提供可能である。チャットユーザインタフェースは、検索要求に応答する結果、およびコンテンツ項目を表示するウェブページ上に提示可能である。一部の例では、ユーザは、ネットワーク接続されたデバイスを通じてチャットセッションにアクセスする。ネットワーク接続されたデバイスは、モバイルデバイス、デスクトップデバイス、または様々な他のネットワーク接続されたデバイスのいずれかであることができる。一部の例では、ネットワーク接続されたデバイスは画面を有しない。 Step 300 is followed by for each of the plurality of web resources, based on the data received by the communication server, each web resource provides live assistance by a third party content provider through a chat user interface on each web resource. 304 to detect that it provides functionality for. In some examples, the chat user interface is a chat widget. Live assistance can be provided by a human representative of a particular third party content provider. The chat user interface can be presented on a web page displaying the results in response to a search request and the content item. In some examples, the user accesses the chat session through a networked device. The networked device can be either a mobile device, a desktop device, or various other networked devices. In some examples, networked devices do not have a screen.

一部の例では、検出することは、ウェブリソースにアクセスすることと、ウェブリソースがアクセスされているウィンドウと別である新たなウィンドウが開いたと判定することと、新たなウィンドウにおいて、ウェブリソースがウェブリソース上のチャットユーザインタフェースを通じてサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供することを示すテキスト語句を判定することとを含む。 In some examples, detecting is accessing a web resource, determining that a new window has opened that is separate from the window in which the web resource is being accessed, and in the new window the web resource is Includes determining text terms that indicate that it provides functionality for live assistance by a third-party content provider through a chat user interface on a web resource.

一部の例では、検出することは、ウェブリソースにアクセスすることと、ウェブリソース上のウィジェットを特定することと、ウェブリソース上のウィジェットのためのコードにおいて、ウェブリソースがウェブリソース上のチャットユーザインタフェースを通じてサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供することを示すタグを特定することとを含む。 In some examples, detecting is accessing a web resource, identifying a widget on the web resource, and in the code for the widget on the web resource, the web resource is a chat user on the web resource. Includes identifying tags that indicate that it provides functionality for live assistance by third-party content providers through the interface.

工程300は続いて、複数のウェブリソースの各々に対して、通信サーバが、データベースに、それぞれのウェブリソースが同機能性を有することを示すエントリを記憶する(306)。例えば、ゲートウェイ110は、データベースに、特定のウェブページがメッセージング機能性を有することを示すエントリを記憶できる。 Step 300 subsequently stores, for each of the plurality of web resources, an entry in the database indicating that each web resource has the same functionality (306). For example, the gateway 110 can store in the database an entry indicating that a particular web page has messaging functionality.

工程300は続いて、通信サーバが、ユーザから、特定のサードパーティコンテンツプロバイダによってホストされる特定のウェブリソースにアクセスする要求を受信する(308)。例えば、ユーザは、特定のコンテンツプロバイダに関連付けられたウェブリソースにユーザを導く検索結果リンクを選択できる。一部の例では、要求は、検索要求に応じて提示され、特定のウェブリソースにリンクするコンテンツ項目の選択に応じて提供される。一部の例では、特定のウェブリソースにアクセスする要求は音声入力を備える。 Step 300 subsequently receives a request from the user to access a particular web resource hosted by a particular third party content provider (308). For example, a user can select a search result link that directs the user to a web resource associated with a particular content provider. In some examples, the request is presented in response to a search request and is provided in response to a selection of content items that link to a particular web resource. In some examples, requests to access a particular web resource include voice input.

工程300は続いて、通信サーバが、特定のウェブリソースを表すデータベースの記憶したエントリに基づいて、特定のウェブリソースが特定のウェブリソース上の特定のチャットユーザインタフェースを通じて特定のサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供すると判定する(310)。 Step 300 is followed by a communication server performing live by a particular third-party content provider through a particular chat user interface on a particular web resource, based on a stored entry in a database representing the particular web resource. Determined to provide functionality for assistance (310).

工程300は続いて、通信サーバがユーザとサードパーティコンテンツプロバイダとの間のチャットセッションを開始する(312)。例えば、ゲートウェイ110は、ユーザとコンテンツプロバイダとの間のチャットセッションを開始できる。一部の例では、チャットセッションは、通信サーバとユーザとの間の第1のセッション、および通信サーバとサードパーティコンテンツプロバイダとの間の第2のセッションを含む。一部の例では、開始することは、サードパーティコンテンツプロバイダから、チャットセッションの第1のセッションに対する第1の一意のセション識別子を受信することと、通信サーバによって、サードパーティコンテンツプロバイダに、第2のセッションを促進するために第1の一意のセション識別子を提供することとを含む。 Step 300 then initiates a chat session between the user and the third party content provider by the communication server (312). For example, the gateway 110 can initiate a chat session between the user and the content provider. In some examples, the chat session includes a first session between the communication server and the user and a second session between the communication server and the third party content provider. In some examples, initiating is to receive a first unique session identifier for the first session of the chat session from the third party content provider and to the third party content provider by the communication server. Includes providing a first unique session identifier to facilitate a session of.

一部の例では、工程300は、チャットユーザインタフェースを通じて第1のセッションへの入力を受信することと、サードパーティコンテンツプロバイダに、第2のセッションへのユーザ入力を示すデータを提供することとを含む。工程300は、特定のウェブリソースに対して開始される複数のチャットセッションの各々に対して、特定のウェブリソースにユーザを導いたコンテンツ項目の一意の識別子に基づいて、チャットセッションに対するコンテンツ項目メトリック値を判定することと、コンテンツ項目メトリック値を使用して、コンテンツ項目メトリック値の提示を生成することと、サードパーティコンテンツプロバイダに、表示のために同提示を提供することとを更に含む。例えば、コンテンツ項目メトリック値は、チャット機能性に関連付けられたクリックスルー率を含むことができる。 In some examples, step 300 receives input to the first session through the chat user interface and provides the third party content provider with data indicating user input to the second session. Including. Step 300 is a content item metric value for a chat session based on the unique identifier of the content item that led the user to the particular web resource for each of the plurality of chat sessions initiated for the particular web resource. Further includes determining, using the content item metric value to generate a presentation of the content item metric value, and providing the third party content provider with the same presentation for display. For example, the content item metric value can include a click-through rate associated with chat functionality.

一部の例では、工程300は、所定の期間の間アクティビティがないと、および第1のセッションまたは第2のセッションの少なくとも1つが終了したと検出することを含む。工程300は、チャットセッションのコンテキストデータに基づいて、ユーザがチャットセッションを完了していないと判定することと、データベースに、第1のセッションの全体を示すデータを記憶することとを含む。工程300は続いて、第2のセッションが終了したとの検出に応じて、チャットセッションの一部として通信サーバとサードパーティコンテンツプロバイダとの間の第3のセッションを開始し、そして通信システムによって、サードパーティコンテンツプロバイダに、ユーザがサードパーティコンテンツプロバイダとのチャットセッションを再開できるように第1のセッションの少なくとも一部分を示すデータを提供できる。 In some examples, step 300 includes detecting that there is no activity for a predetermined period of time and that at least one of the first or second sessions has ended. Step 300 includes determining that the user has not completed the chat session based on the context data of the chat session, and storing data indicating the entire first session in the database. Step 300 then initiates a third session between the communication server and the third party content provider as part of the chat session in response to the detection that the second session has ended, and by the communication system. The third party content provider can be provided with data indicating at least a portion of the first session so that the user can resume the chat session with the third party content provider.

一部の例では、工程300は、ユーザから第1のセッションにおいて第2の音声入力を受信することを更に含む。工程300は続いて、サードパーティコンテンツプロバイダに、第2のセッションにおいて第2の音声入力のテキスト表現を示すデータを提供する。工程300は続いて、通信システムによって、サードパーティコンテンツプロバイダから、通信システムとサードパーティコンテンツプロバイダとの間の第2のセッションにおいてサードパーティコンテンツプロバイダからのテキスト入力を受信する。工程300は続いて、ユーザに、第1のセッションにおいてサードパーティコンテンツプロバイダからのテキスト入力の音声表現を示すデータを提供できる。 In some examples, step 300 further comprises receiving a second voice input from the user in the first session. Step 300 subsequently provides the third party content provider with data indicating a textual representation of the second voice input in the second session. Step 300 subsequently receives text input from the third-party content provider through the communication system in a second session between the communication system and the third-party content provider. Step 300 can subsequently provide the user with data indicating a voice representation of the text input from the third party content provider in the first session.

図4は、上記した動作を行うために使用可能であるコンピュータシステム例400のブロック図である。システム400は、プロセッサ410、メモリ420、記憶デバイス430および入出力デバイス440を含む。部品410、420、430、440の各々は、例えば、システムバス450を使用して相互接続可能である。プロセッサ410は、システム400内での実行のための命令を処理することが可能である。一実装例では、プロセッサ410はシングルスレッドプロセッサである。別の実装例では、プロセッサ410はマルチスレッドプロセッサである。プロセッサ410は、メモリ420にまたは記憶デバイス430に記憶される命令を処理することが可能である。 FIG. 4 is a block diagram of a computer system example 400 that can be used to perform the above operations. The system 400 includes a processor 410, a memory 420, a storage device 430 and an input / output device 440. Each of the components 410, 420, 430, 440 can be interconnected using, for example, the system bus 450. Processor 410 is capable of processing instructions for execution within system 400. In one implementation, processor 410 is a single-threaded processor. In another implementation, processor 410 is a multithreaded processor. Processor 410 is capable of processing instructions stored in memory 420 or in storage device 430.

メモリ420は、システム400内の情報を記憶する。一実装例では、メモリ420はコンピュータ可読媒体である。一実装例では、メモリ420は揮発性メモリユニットである。別の実装例では、メモリ420は不揮発性メモリユニットである。 The memory 420 stores information in the system 400. In one implementation example, the memory 420 is a computer-readable medium. In one implementation example, the memory 420 is a volatile memory unit. In another implementation, the memory 420 is a non-volatile memory unit.

記憶デバイス430は、システム400のための大容量記憶を提供することが可能である。一実装例では、記憶デバイス430はコンピュータ可読媒体である。様々な異なる実装例で、記憶デバイス430としては、例えば、ハードディスクデバイス、光ディスクデバイス、複数のコンピューティングデバイスによってネットワークを通じて共有される記憶デバイス(例えば、クラウド記憶デバイス)、または何らかの他の大容量記憶デバイスを含むことができる。 The storage device 430 can provide a large amount of storage for the system 400. In one implementation, the storage device 430 is a computer-readable medium. In a variety of different implementations, the storage device 430 may include, for example, a hard disk device, an optical disk device, a storage device shared over a network by multiple computing devices (eg, a cloud storage device), or some other mass storage device. Can be included.

入出力デバイスは、システム400のための入出力動作を提供する。一実装例では、入出力デバイスは、1つまたは複数のネットワークインタフェースデバイス、例えばイーサネット(登録商標)カード、シリアル通信デバイス、例えばRS−232ポート、および/または無線インタフェースデバイス、例えば802.11カードを含むことができる。別の実装例では入出力デバイスは、入力データを受けて他の入出力デバイス、例えばキーボード、プリンタおよびディスプレイデバイス460に出力データを送るように構成されるドライバデバイスを含むことができる。しかしながら、モバイルコンピューティングデバイス、モバイル通信デバイス、セットトップボックステレビクライアントデバイス等など、他の実装例も使用可能である。 The input / output device provides input / output operations for system 400. In one implementation, the I / O device may be one or more network interface devices such as Ethernet® cards, serial communication devices such as RS-232 ports, and / or wireless interface devices such as 802.11 cards. Can include. In another example implementation, the input / output device may include a driver device that is configured to receive the input data and send the output data to other input / output devices such as a keyboard, printer and display device 460. However, other implementation examples such as mobile computing devices, mobile communication devices, set-top box TV client devices, etc. can also be used.

処理システム例が図4に記載されたが、本明細書に記載される主題および機能動作の実装例は、他の種類のデジタル電子回路網で、または本明細書に開示される構造およびそれらの構造等価物を含め、コンピュータソフトウェア、ファームウェアもしくはハードウェアで、またはそれらの1つもしくは複数の組合せで実装可能である。 Examples of processing systems are shown in FIG. 4, but implementation examples of the subject matter and functional operations described herein are in other types of digital electronic networks, or the structures and theirs disclosed herein. It can be implemented in computer software, firmware or hardware, including structural equivalents, or in one or more combinations thereof.

電子文書(簡略して単に文書と称することにする)は必ずしもファイルに対応するわけではない。文書は、他の文書を保持するファイルの一部分に、当該文書に専用の単一のファイルに、または複数の連係ファイルに記憶されてよい。 Electronic documents (for short, simply referred to as documents) do not necessarily correspond to files. A document may be stored in a portion of a file holding another document, in a single file dedicated to the document, or in multiple linked files.

本明細書に記載される主題および動作の実施形態は、デジタル電子回路網で、または本明細書に開示される構造およびそれらの構造等価物を含め、コンピュータソフトウェア、ファームウェアもしくはハードウェアで、またはそれらの1つもしくは複数の組合せで実装可能である。本明細書に記載される主題の実施形態は、1つまたは複数のコンピュータプログラム、すなわち、データ処理装置による実行のために、またはその動作を制御するために1つまたは複数のコンピュータ記憶媒体に符号化されたコンピュータプログラム命令の1つまたは複数のモジュールとして実装可能である。代替的に、または加えて、プログラム命令は、データ処理装置による実行のために適切な受信器装置に伝送するための情報を符号化するために発生される人工発生伝搬信号、例えば機械発生電気、光または電磁信号上に符号化可能である。コンピュータ記憶媒体は、コンピュータ可読記憶デバイス、コンピュータ可読記憶基板、ランダムもしくはシリアルアクセスメモリアレイもしくはデバイス、またはそれらの1つもしくは複数の組合せであることができる、またはそれに含まれ得る。その上、コンピュータ記憶媒体が伝搬信号でないのに対して、コンピュータ記憶媒体は、人工発生伝搬信号に符号化されるコンピュータプログラム命令の供給源または供給先であることができる。コンピュータ記憶媒体は、1つまたは複数の別々の物理部品または媒体(例えば、複数のCD、ディスクまたは他の記憶デバイス)であることもできる、またはそれに含まれ得る。 Embodiments of the subject matter and operations described herein are in digital electronic networks, or in computer software, firmware or hardware, including the structures and their structural equivalents disclosed herein, or them. It can be implemented in one or a combination of two or more. Embodiments of the subject matter described herein are encoded in one or more computer programs, i.e., one or more computer storage media for execution by a data processor or to control its operation. It can be implemented as one or more modules of computer program instructions. Alternatively, or in addition, a program instruction is an artificially generated propagating signal, eg, machine-generated electricity, generated to encode information to be transmitted to a suitable receiver device for execution by a data processing device. It can be encoded on an optical or electromagnetic signal. The computer storage medium can be, or can be included in, a computer readable storage device, a computer readable storage board, a random or serial access memory array or device, or a combination thereof. Moreover, the computer storage medium can be the source or destination of the computer program instructions encoded in the artificially generated propagation signal, whereas the computer storage medium is not the propagation signal. The computer storage medium can also be, or can be included in, one or more separate physical components or media (eg, multiple CDs, discs or other storage devices).

本明細書に記載される動作は、1つまたは複数のコンピュータ可読記憶デバイスに記憶されたまたは他のソースから受信されたデータに対してデータ処理装置によって行われる動作として実装可能である。 The operations described herein can be implemented as operations performed by a data processor on data stored in one or more computer-readable storage devices or received from other sources.

用語「データ処理装置」は、例として、プログラマブルプロセッサ、コンピュータ、システムオンチップまたは以上の複数のものもしくは組合せを含め、データを処理するための全ての種類の装置、デバイスおよび機械を包含する。装置は、専用論理回路網、例えば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)を含むことができる。装置は、ハードウェアに加えて、当該コンピュータプログラムのための実行環境を作成するコード、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、クロスプラットフォーム実行時環境、仮想マシンまたはそれらの1つもしくは複数の組合せを構成するコードも含むことができる。装置および実行環境は、ウェブサービス、分散コンピューティングおよびグリッドコンピューティングインフラストラクチャなどの様々な異なるコンピューティングモデルインフラストラクチャを実現できる。 The term "data processor" includes all types of devices, devices and machines for processing data, including, for example, programmable processors, computers, system-on-chips or a plurality or combinations thereof. The device can include a dedicated logic network, such as an FPGA (Field Programmable Gate Array) or an ASIC (Application Specific Integrated Circuit). The device, in addition to the hardware, is the code that creates the execution environment for the computer program, such as processor firmware, protocol stack, database management system, operating system, cross-platform runtime environment, virtual machine or one of them. Alternatively, the code that constitutes a plurality of combinations can also be included. Equipment and execution environments can implement a variety of different computing model infrastructures such as web services, distributed computing and grid computing infrastructures.

コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプトまたはコードとしても知られている)は、コンパイラ型またはインタープリタ型言語、宣言型または手続き型言語を含め、任意の形式のプログラミング言語で書かれ得、そしてそれは、スタンドアロンプログラムとして、またはモジュール、コンポーネント、サブルーチン、オブジェクトもしくはコンピューティング環境での使用に適する他のユニットとしてを含め、任意の形式に展開可能である。コンピュータプログラムは、ファイルシステムにおけるファイルに対応してよいが、しなくてもよい。プログラムは、他のプログラムもしくはデータ(例えば、マークアップ言語文書に記憶される1つもしくは複数のスクリプト)を保持するファイルの一部分に、当該プログラムに専用の単一のファイルに、または複数の連係ファイル(例えば、1つもしくは複数のモジュール、サブプログラムもしくはコードの一部分を記憶するファイル)に記憶可能である。コンピュータプログラムは、展開されて1つのコンピュータ上で、または1つのサイトに設けられるもしくは複数のサイトにわたって分散されて通信ネットワークによって相互接続される複数のコンピュータ上で実行可能である。 Computer programs (also known as programs, software, software applications, scripts or code) can be written in any form of programming language, including compiler or interpreted languages, declarative or procedural languages, and It can be deployed in any format, including as a stand-alone program or as a module, component, subroutine, object or other unit suitable for use in a computing environment. Computer programs may or may not correspond to files in the file system. A program may be part of a file that holds another program or data (eg, one or more scripts stored in a markup language document), a single file dedicated to that program, or multiple linked files. It can be stored in (for example, a file that stores one or more modules, subprograms, or parts of code). Computer programs can be deployed and run on one computer, or on multiple computers that are located at one site or distributed across multiple sites and interconnected by communication networks.

本明細書に記載される工程および論理フローは、1つまたは複数コンピュータプログラムを実行して、入力データを操作して出力を生成することによって作用を行う1つまたは複数のプログラマブルコンピュータによって行われ得る。工程および論理フローは、専用論理回路網、例えば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)によっても行われ得、そして装置もそれとして実装可能である。 The steps and logic flows described herein can be performed by one or more programmable computers that operate by running one or more computer programs and manipulating input data to produce output. .. Processes and logic flows can also be performed by dedicated logic networks, such as FPGAs (Field Programmable Gate Arrays) or ASICs (Application Specific Integrated Circuits), and devices can be implemented as such.

コンピュータプログラムの実行に適するプロセッサは、例として、汎用および専用マイクロプロセッサ両方を含む。一般に、プロセッサは、リードオンリメモリまたはランダムアクセスメモリまたは両方から命令およびデータを受けることになる。コンピュータの必須要素は、命令に従って作用を行うためのプロセッサ、ならびに命令およびデータを記憶するための1つまたは複数のメモリデバイスである。一般に、コンピュータは更に、データを記憶するための1つまたは複数の大容量記憶デバイス、例えば、磁気、光磁気ディスクまたは光ディスクを含む、または作動的に結合されて、それからデータを受けるもしくはそれにデータを転送するもしくは両方行うことになる。しかしながら、コンピュータは、そのようなデバイスを有する必要はない。その上、コンピュータは、別のデバイス、例えば、いくつか挙げると、移動電話、携帯情報端末(PDA)、モバイルオーディオもしくはビデオプレーヤ、ゲームコンソール、全地球測位システム(GPS)受信器、またはポータブル記憶デバイス(例えば、ユニバーサルシリアルバス(USB)フラッシュドライブ)に埋め込み可能である。コンピュータプログラム命令およびデータを記憶するのに適するデバイスとしては、例として、半導体メモリデバイス、例えば、EPROM、EEPROMおよびフラッシュメモリデバイス;磁気ディスク、例えば、内部ハードディスクまたはリムーバブルディスク;光磁気ディスク;ならびにCD ROMおよびDVD−ROMディスクを含め、全ての形態の不揮発性メモリ媒体およびメモリデバイスを含む。プロセッサおよびメモリは、専用論理回路網によって補足、またはそれに組み込み可能である。 Processors suitable for running computer programs include, for example, both general purpose and dedicated microprocessors. In general, the processor will receive instructions and data from read-only memory and / or random access memory. Essential elements of a computer are a processor for acting according to instructions and one or more memory devices for storing instructions and data. In general, a computer also includes or is operatively coupled with one or more mass storage devices for storing data, such as magnetic, magneto-optical disks or optical disks, from which it receives or receives data. You will either transfer or both. However, the computer does not need to have such a device. Moreover, computers are other devices, such as mobile phones, personal digital assistants (PDAs), mobile audio or video players, game consoles, Global Positioning System (GPS) receivers, or portable storage devices, to name a few. It can be embedded in (for example, a universal serial bus (USB) flash drive). Suitable devices for storing computer program instructions and data include, for example, semiconductor memory devices such as EPROM, EEPROM and flash memory devices; magnetic disks such as internal hard disks or removable disks; magneto-optical disks; and CD ROMs. And includes all forms of non-volatile memory media and memory devices, including DVD-ROM disks. Processors and memory can be supplemented or embedded in a dedicated logic network.

ユーザとの対話を提供するために、本明細書に記載される主題の実施形態は、ユーザに情報を表示するためのディスプレイデバイス、例えば、CRT(陰極線管)またはLCD(液晶ディスプレイ)モニタ、ならびにユーザがコンピュータに入力を提供できるキーボードおよびポインティングデバイス、例えば、マウスまたはトラックボールを有するコンピュータに実装可能である。ユーザとの対話を提供するために他の種類のデバイスも使用可能であり、例えば、ユーザに提供されるフィードバックは任意の形態の感覚フィードバック、例えば、視覚フィードバック、聴覚フィードバックまたは触覚フィードバックであることができ、そしてユーザからの入力は、音響、音声または触覚入力を含め、任意の形態で受け取り可能である。加えて、コンピュータは、ユーザによって使用されるデバイスに文書を送信し、それから文書を受信することによって、例えば、ユーザのクライアントデバイス上のウェブブラウザから受信される要求に応じてウェブブラウザにウェブページを送信することによって、ユーザと対話できる。 To provide interaction with the user, embodiments of the subject matter described herein include display devices for displaying information to the user, such as a CRT (cathode tube) or LCD (liquid crystal display) monitor, as well. It can be implemented on a computer with a keyboard and pointing device that allows the user to provide input to the computer, such as a mouse or trackball. Other types of devices can also be used to provide user interaction, for example, the feedback provided to the user may be any form of sensory feedback, such as visual feedback, auditory feedback or tactile feedback. Yes, and input from the user can be received in any form, including acoustic, voice or tactile input. In addition, the computer sends a document to the device used by the user and then receives the document, for example, sending a web page to the web browser in response to a request received from the web browser on the user's client device. You can interact with the user by sending.

本明細書に記載される主題の実施形態は、バックエンド部品を、例えば、データサーバとして含む、あるいはミドルウェア部品、例えば、アプリケーションサーバを含む、あるいはフロントエンド部品、例えば、ユーザが本明細書に記載される主題の実装例と対話できるグラフィカルユーザインタフェースもしくはウェブブラウザを有するクライアントコンピュータ、または1つもしくは複数のそのようなバックエンド、ミドルウェアもしくはフロントエンド部品の任意の組合せを含む、コンピューティングシステムで実装可能である。システムの部品は、デジタルデータ通信の任意の形態または媒体、例えば、通信ネットワークによって相互接続可能である。通信ネットワークの例としては、ローカルエリアネットワーク(「LAN」)およびワイドエリアネットワーク(「WAN」)、インターネットワーク(例えば、インターネット)ならびにピアツーピアネットワーク(例えば、アドホックピアツーピアネットワーク)を含む。 Embodiments of the subject matter described herein include a back-end component, eg, as a data server, or a middleware component, eg, an application server, or a front-end component, eg, a user described herein. Can be implemented on a computing system, including a client computer with a graphical user interface or web browser capable of interacting with an example implementation of the subject, or any combination of one or more such backends, middleware or frontend components. Is. The components of the system can be interconnected by any form or medium of digital data communication, such as a communication network. Examples of communication networks include local area networks (“LAN”) and wide area networks (“WAN”), internetworks (eg, the Internet) and peer-to-peer networks (eg, ad hoc peer-to-peer networks).

コンピューティングシステムは、クライアントおよびサーバを含むことができる。クライアントおよびサーバは、一般に互いから離れており、典型的に通信ネットワークを通じて対話する。クライアントおよびサーバの関係は、それぞれのコンピュータ上で動いており、互いにクライアント−サーバ関係を有するコンピュータプログラムによって生じる。一部の実施形態では、サーバはクライアントデバイスにデータ(例えば、HTMLページ)を伝送する(例えば、クライアントデバイスと対話しているユーザにデータを表示してユーザからユーザ入力を受信する目的で)。クライアントデバイスにおいて生成されるデータ(例えば、ユーザ対話の結果)は、サーバにおいてクライアントデバイスから受信可能である。 The computing system can include clients and servers. Clients and servers are generally separated from each other and typically interact through communication networks. The client-server relationship runs on each computer and is caused by computer programs that have a client-server relationship with each other. In some embodiments, the server transmits data (eg, HTML pages) to the client device (eg, for the purpose of displaying the data to the user interacting with the client device and receiving user input from the user). The data generated on the client device (eg, the result of the user dialogue) can be received from the client device on the server.

本明細書が多くの具体的な実装詳細を含むのに対して、これらは、いかなる発明のまたは特許請求され得るものの範囲へも限定としてでなく、むしろ特定の発明の特定の実施形態に固有の特徴の記述として解釈されるべきである。別々の実施形態の文脈で本明細書に記載される或る特徴が、組合せて単一の実施形態でも実装可能である。反対に、単一の実施形態の文脈で記載される様々な特徴が、別々に複数の実施形態でも、または任意の適切な下位組合せでも実装可能である。その上、特徴が或る組合せで作用すると上記され、しかもそのように最初に特許請求されるが、特許請求された組合せからの1つまたは複数の特徴が、一部の場合には、同組合せから削除可能であり、そして特許請求された組合せは、下位組合せまたは下位組合せの変形とされ得る。 Whereas this specification contains many specific implementation details, they are not limited to the scope of any invention or claims, but rather are specific to a particular embodiment of a particular invention. It should be interpreted as a description of the features. Certain features described herein in the context of different embodiments can be combined and implemented in a single embodiment. Conversely, the various features described in the context of a single embodiment can be implemented separately in multiple embodiments or in any suitable subcombination. Moreover, it is mentioned above that the features work in a combination, and so first claimed, but one or more features from the claimed combination, in some cases, the same combination. The combination that can be removed from and claimed can be a subcombination or a variant of the subcombination.

同様に、動作が特定の順序で図面に描かれるのに対して、これは、そのような動作が図示される特定の順序でもしくは順番に行われること、または望ましい結果を達成するために、全ての例示された動作が行われることを必要とすると理解されるべきでない。或る状況では、マルチタスキングおよび並列処理が有利であり得る。その上、上記した実施形態における様々なシステム部品の分離は、全ての実施形態においてそのような分離を必要とすると理解されるべきでなく、そして記載されたプログラムコンポーネントおよびシステムが一般に単一のソフトウェア製品に共に統合または複数のソフトウェア製品に実装可能であることが理解されるべきである。 Similarly, while the actions are drawn in the drawing in a particular order, this is all done so that such actions are performed in the particular order or sequence shown, or to achieve the desired result. It should not be understood that the illustrated behavior of is required to be performed. In some situations, multitasking and parallelism can be advantageous. Moreover, the separation of various system components in the above embodiments should not be understood as requiring such separation in all embodiments, and the program components and systems described are generally single software. It should be understood that both can be integrated into a product or implemented in multiple software products.

このように、主題の特定の実施形態が記載された。他の実施形態は以下の請求項の範囲内である。一部の場合には、請求項に列挙される作用は異なる順序で行われて、それでも望ましい結果を達成できる。加えて、添付の図に描かれる工程は、望ましい結果を達成するために、必ずしも図示される特定の順序または順番を必要とするわけではない。或る実装例では、マルチタスキングおよび並列処理が有利であり得る。 Thus, specific embodiments of the subject have been described. Other embodiments are within the scope of the following claims. In some cases, the actions listed in the claims may be performed in a different order and still achieve the desired result. In addition, the steps depicted in the accompanying figures do not necessarily require the particular order or order shown to achieve the desired result. In some implementations, multitasking and parallelism can be advantageous.

100 システム
102 モバイルデバイス、
104 クライアントデバイス
106 画面のないアシスタントデバイス
110 ゲートウェイ
120 ウェブページ
122 ボタン
130 コンテンツプロバイダシステム
200 ユーザインタフェース
202 検索クエリ
204 検索結果ページ
210 検索結果ウェブページ
220 検索結果ウェブページ
230 検索結果ウェブページ
240 検索結果ウェブページ
212 ユーザインタフェース要素
222 ユーザインタフェース要素
232 ユーザインタフェース要素
242 ユーザインタフェース要素
400 コンピュータシステム
402 プロセッサ
404 メモリ
406 記憶デバイス
100 systems 102 mobile devices,
104 Client device 106 Screenless assistant device 110 Gateway 120 Web page 122 Button 130 Content provider system 200 User interface 202 Search query 204 Search result page 210 Search result web page 220 Search result web page 230 Search result web page 240 Search result web page 212 User Interface Element 222 User Interface Element 232 User Interface Element 242 User Interface Element 400 Computer System 402 Processor 404 Memory 406 Storage Device

Claims (39)

通信サーバによって、ユーザから、コンテンツの検索要求を受信するステップと、
前記検索要求に応じて前記通信サーバによって、表示ウェブページ上の複数の選択可能なコンテンツ項目の形態で検索結果を得るステップであって、各々の選択可能なコンテンツ項目が、前記検索要求に関連付けられたそれぞれのウェブリソースへのリンクを含む、ステップと、
複数のウェブリソースの特性に関するデータベースから得られる情報に基づいて前記通信サーバによって、特定のウェブリソースが前記特定のウェブリソース上の特定のチャットユーザインタフェースを通じて特定のサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供すると判定するステップと、
前記特定のウェブリソースに対して、前記表示ウェブページ上にチャットインタフェースを自動的に提供するステップであって、前記チャットインタフェースが、前記表示ウェブページ上の前記各々の選択可能なコンテンツ項目に隣接した表示のために前記通信サーバによって描画および/または制御される、ステップとを含み、
前記表示ウェブページからの前記チャットインタフェースとのユーザ対話に応答して、前記通信サーバによって、前記ユーザと、前記特定のウェブリソースに関連付けられた前記特定のサードパーティコンテンツプロバイダとの間のチャットセッションを開始する、
方法。
The step of receiving a content search request from the user by the communication server,
A step of obtaining search results in the form of a plurality of selectable content items on a display web page by the communication server in response to the search request, and each selectable content item is associated with the search request. Steps and steps, including links to their respective web resources
For live assistance by a particular third-party content provider through a particular chat user interface on the particular web resource by said communication server based on information obtained from a database of the characteristics of multiple web resources. Steps to determine that it provides functionality and
A step of automatically providing a chat interface on the display web page for the particular web resource, wherein the chat interface is adjacent to each of the selectable content items on the display web page. Including steps that are drawn and / or controlled by the communication server for display.
In response to a user interaction with the chat interface from the display web page, the communication server provides a chat session between the user and the particular third-party content provider associated with the particular web resource. Start,
Method.
複数のウェブリソースに関するデータベースエントリを有するデータベースにデータ設定するステップであって、
前記複数のウェブページの各々に対して、
前記通信サーバにおいて、それぞれのウェブリソースの特性を示すデータを受信するステップと、
前記通信サーバによって、前記受信したデータに基づいて、前記それぞれのウェブリソースが前記それぞれのウェブリソース上のチャットユーザインタフェースを通じてサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供すると検出するステップと、
前記通信サーバによって、前記データベースに、前記それぞれのウェブリソースが前記機能性を有することを示すエントリを記憶するステップとを含む、データ設定するステップを更に含み、
前記データベースにデータ設定するための前記ステップが、前記データベースにまだ含まれていないウェブページに対するデータを獲得するために定期的に行われる、請求項1に記載の方法。
A step to populate a database with database entries for multiple web resources.
For each of the plurality of web pages
In the communication server, a step of receiving data indicating the characteristics of each web resource, and
A step of detecting by the communication server that, based on the received data, each of the web resources provides functionality for live assistance by a third-party content provider through a chat user interface on each of the web resources.
The communication server further comprises setting data in the database, including storing an entry indicating that each of the web resources has said functionality.
The method of claim 1, wherein the steps for populating the database are performed periodically to acquire data for a web page that is not yet included in the database.
前記チャットセッションが、i)前記通信サーバと前記ユーザとの間の第1のセッション、およびii)前記通信サーバと前記サードパーティコンテンツプロバイダとの間の第2のセッションを備える、請求項1に記載の方法。 The first aspect of claim 1, wherein the chat session comprises i) a first session between the communication server and the user, and ii) a second session between the communication server and the third party content provider. the method of. 通信システムによって、所定の期間の間前記チャットセッションのアクティビティがないと検出するステップと、
前記通信システムによって、前記第1のセッションまたは前記第2のセッションの少なくとも1つが終了したと検出するステップと、
前記通信システムによって、前記チャットセッションのコンテキストデータに基づいて、前記ユーザが前記チャットセッションを完了していないと判定するステップと、
前記データベースに、前記第1のセッションの全体を示すデータを記憶するステップと、
前記通信システムによって、前記第2のセッションが終了したとの検出に応じて、前記チャットセッションの一部として前記通信サーバと前記サードパーティコンテンツプロバ
イダとの間の第3のセッションを開始するステップと、
前記通信システムによって、前記サードパーティコンテンツプロバイダに、前記ユーザが前記サードパーティコンテンツプロバイダとの前記チャットセッションを再開できるように前記第1のセッションの少なくとも一部分を示す前記データを提供するステップとを含む、
請求項3に記載の方法。
A step of detecting that the chat session is inactive for a predetermined period of time by the communication system.
A step of detecting that at least one of the first session or the second session has been completed by the communication system.
A step of determining that the user has not completed the chat session based on the context data of the chat session by the communication system.
A step of storing data indicating the entire first session in the database, and
A step of initiating a third session between the communication server and the third-party content provider as part of the chat session in response to detection by the communication system that the second session has ended.
The communication system comprises providing the third party content provider with the data indicating at least a portion of the first session so that the user can resume the chat session with the third party content provider.
The method according to claim 3.
前記通信サーバにおいて、前記ユーザから、前記チャットユーザインタフェースを通じて前記第1のセッションへの入力を受信するステップと、
前記通信サーバによって、前記サードパーティコンテンツプロバイダに、前記第2のセッションへの前記ユーザ入力を示すデータを提供するステップとを含む、
請求項3に記載の方法。
A step of receiving an input to the first session from the user through the chat user interface in the communication server.
The communication server comprises providing the third party content provider with data indicating the user input to the second session.
The method according to claim 3.
前記特定のウェブリソースにアクセスする前記要求が音声入力を備える、請求項3に記載の方法。 The method of claim 3, wherein the request to access the particular web resource comprises voice input. 通信システムによって、前記ユーザから、前記第1のセッションにおいて第2の音声入力を受信するステップと、
前記サードパーティコンテンツプロバイダに、前記第2のセッションにおいて前記第2の音声入力のテキスト表現を示すデータを提供するステップと、
前記通信システムによって、前記サードパーティコンテンツプロバイダから、前記通信システムと前記サードパーティコンテンツプロバイダとの間の前記第2のセッションにおいて前記サードパーティコンテンツプロバイダからのテキスト入力を受信するステップと、
前記通信システムによって、前記ユーザに、前記第1のセッションにおいて前記サードパーティコンテンツプロバイダからの前記テキスト入力の音声表現を示すデータを提供するステップとを含む、
請求項6に記載の方法。
A step of receiving a second voice input from the user in the first session by the communication system.
A step of providing the third party content provider with data indicating a textual representation of the second voice input in the second session.
A step of receiving text input from the third-party content provider from the third-party content provider by the communication system in the second session between the communication system and the third-party content provider.
The communication system comprises providing the user with data indicating a voice representation of the text input from the third party content provider in the first session.
The method according to claim 6.
前記チャットユーザインタフェースがチャットウィジェットである、請求項1に記載の方法。 The method according to claim 1, wherein the chat user interface is a chat widget. 前記判定するステップが、
通信システムによって、前記ウェブリソースにアクセスするステップと、
前記通信システムによって、前記ウェブリソース上のウィジェットを特定するステップと、
前記通信システムによって、前記ウェブリソース上の前記ウィジェットのためのコードにおいて、前記ウェブリソースが前記ウェブリソース上のチャットユーザインタフェースを通じてサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供することを示すタグを特定するステップとを含む、請求項8に記載の方法。
The determination step is
The step of accessing the web resource by the communication system and
A step of identifying a widget on the web resource by the communication system,
A tag indicating that the web resource provides functionality for live assistance by a third party content provider through a chat user interface on the web resource in the code for the widget on the web resource by the communication system. 8. The method of claim 8, comprising:
前記ライブアシスタンスが前記特定のサードパーティコンテンツプロバイダを代表する人間によって提供される、請求項1に記載の方法。 The method of claim 1, wherein the live assistance is provided by a person representing the particular third party content provider. 前記特定のウェブリソースに対して開始される複数のチャットセッションの各々に対して、通信システムによって、前記特定のウェブリソースに前記ユーザを導いた前記コンテンツ項目の一意の識別子に基づいて、前記チャットセッションに対するコンテンツ項目メトリック値を判定するステップと、
前記通信システムによって、前記コンテンツ項目メトリック値を使用して、前記コンテンツ項目メトリック値の提示を生成するステップと、
前記通信システムによって前記サードパーティコンテンツプロバイダに、表示のために前記提示を提供するステップとを含む、
請求項1に記載の方法。
For each of the plurality of chat sessions initiated for the particular web resource, the chat session is based on the unique identifier of the content item that led the user to the particular web resource by the communication system. Steps to determine the content item metric value for
A step of generating a presentation of the content item metric value by using the content item metric value by the communication system.
A step of providing the presentation for display to the third party content provider by the communication system.
The method according to claim 1.
前記判定するステップが、
通信システムによって、前記ウェブリソースにアクセスするステップと、
前記通信システムによって、前記ウェブリソースがアクセスされているウィンドウと別である新たなウィンドウが開いたと判定するステップと、
前記新たなウィンドウにおいて、前記ウェブリソースが前記ウェブリソース上のチャットユーザインタフェースを通じてサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供することを示すテキスト語句を判定するステップとを含む、請求項1に記載の方法。
The determination step is
The step of accessing the web resource by the communication system and
A step of determining that the communication system has opened a new window different from the window in which the web resource is being accessed.
1. The new window comprises the step of determining a textual phrase indicating that the web resource provides functionality for live assistance by a third party content provider through a chat user interface on the web resource. The method described in.
前記ユーザが、ネットワーク接続されたデバイスを通じて前記チャットセッションにアクセスする、請求項1に記載の方法。 The method of claim 1, wherein the user accesses the chat session through a networked device. 前記ネットワーク接続されたデバイスがモバイルデバイスである、請求項13に記載の方法。 13. The method of claim 13, wherein the networked device is a mobile device. 前記ネットワーク接続されたデバイスがデスクトップデバイスである、請求項13に記載の方法。 13. The method of claim 13, wherein the networked device is a desktop device. 前記ネットワーク接続されたデバイスが画面を有しない、請求項13に記載の方法。 13. The method of claim 13, wherein the networked device does not have a screen. 前記開始するステップが、
前記通信サーバによって、前記サードパーティコンテンツプロバイダから、前記チャットセッションの前記第1のセッションに対する第1の一意のセション識別子を受信するステップと、
前記通信サーバによって、前記サードパーティコンテンツプロバイダに、前記第2のセッションを促進するために前記第1の一意のセション識別子を提供するステップとを含む、請求項1に記載の方法。
The step to start is
A step of receiving a first unique session identifier for the first session of the chat session from the third party content provider by the communication server.
The method of claim 1, comprising the step of providing the third party content provider with the first unique session identifier to facilitate the second session by means of the communication server.
ネットワークに通信可能に接続されるデバイスと、
前記ネットワークに通信可能に接続されるサードパーティコンテンツプロバイダサーバと、
請求項1から17のいずれか一項に記載の方法を実装するための動作を行う通信サーバとを備える、
システム。
Devices that are communicatively connected to the network and
A third-party content provider server that is communicably connected to the network
A communication server that performs an operation for implementing the method according to any one of claims 1 to 17 is provided.
system.
少なくとも1つのプロセッサによって実行されると、前記少なくとも1つのプロセッサに請求項1から17のいずれか一項に記載の方法を実装するための動作を行わせる実行可能命令が符号化された少なくとも1つのコンピュータ可読記憶媒体。 At least one encoded executable instruction that, when executed by at least one processor, causes the at least one processor to perform an operation to implement the method according to any one of claims 1 to 17. Computer-readable storage medium. 複数のウェブリソースの各々に対して、
通信サーバにおいて、それぞれのウェブリソースの特性を示すデータを受信するステップと、
前記通信サーバによって、前記受信したデータに基づいて、前記それぞれのウェブリソースが前記それぞれのウェブリソース上のチャットユーザインタフェースを通じてサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供すると検出するステップと、
前記通信サーバによって、データベースに、前記それぞれのウェブリソースが前記機能性を有することを示すエントリを記憶するステップと、
前記通信サーバによって、ユーザから、特定のサードパーティコンテンツプロバイダによってホストされる特定のウェブリソースにアクセスする要求を受信するステップと、
前記通信サーバによって、前記特定のウェブリソースを表す前記データベースの記憶したエントリに基づいて、前記特定のウェブリソースが前記特定のウェブリソース上の特定のチャットユーザインタフェースを通じて前記特定のサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供すると判定するステップと、
前記通信サーバによって、前記ユーザと前記サードパーティコンテンツプロバイダとの間のチャットセッションを開始するステップとを含む、
方法。
For each of multiple web resources
In the communication server, the step of receiving data showing the characteristics of each web resource,
A step of detecting by the communication server that, based on the received data, each of the web resources provides functionality for live assistance by a third-party content provider through a chat user interface on each of the web resources.
A step of storing an entry in the database by the communication server indicating that each of the web resources has the functionality.
The step of receiving a request from a user to access a specific web resource hosted by a specific third-party content provider by the communication server.
Based on the stored entries in the database representing the particular web resource by the communication server, the particular web resource is live by the particular third party content provider through a particular chat user interface on the particular web resource. Steps to determine that it provides functionality for assistance, and
The communication server includes a step of initiating a chat session between the user and the third party content provider.
Method.
前記チャットセッションが、i)前記通信サーバと前記ユーザとの間の第1のセッション、およびii)前記通信サーバと前記サードパーティコンテンツプロバイダとの間の第2のセッションを備える、請求項20に記載の方法。 20. The chat session comprises i) a first session between the communication server and the user, and ii) a second session between the communication server and the third party content provider. the method of. 前記通信サーバにおいて、前記ユーザから、前記チャットユーザインタフェースを通じて前記第1のセッションへの入力を受信するステップと、
前記通信サーバによって、前記サードパーティコンテンツプロバイダに、前記第2のセッションへの前記ユーザ入力を示すデータを提供するステップと、
前記ユーザと前記サードパーティコンテンツプロバイダとの間の前記チャットセッションの状態情報を維持するステップとを含む、
請求項21に記載の方法。
A step of receiving an input to the first session from the user through the chat user interface in the communication server.
A step of providing the third party content provider with data indicating the user input to the second session by the communication server.
A step of maintaining state information of the chat session between the user and the third party content provider.
21. The method of claim 21.
通信システムによって、所定の期間の間アクティビティがないと検出するステップと、
前記通信システムによって、前記第1のセッションまたは前記第2のセッションの少なくとも1つが終了したと検出するステップと、
前記通信システムによって、前記チャットセッションのコンテキストデータに基づいて、前記ユーザが前記チャットセッションを完了していないと判定するステップと、
前記データベースに、前記第1のセッションの全体を示すデータを記憶するステップと、
前記通信システムによって、前記第2のセッションが終了したとの検出に応じて、前記チャットセッションの一部として前記通信サーバと前記サードパーティコンテンツプロバイダとの間の第3のセッションを開始するステップと、
前記通信システムによって、前記サードパーティコンテンツプロバイダに、前記ユーザが前記サードパーティコンテンツプロバイダとの前記チャットセッションを再開できるように前記第1のセッションの少なくとも一部分を示す前記データを提供するステップとを含む、
請求項21に記載の方法。
A step in which the communication system detects that there is no activity for a given period of time,
A step of detecting that at least one of the first session or the second session has been completed by the communication system.
A step of determining that the user has not completed the chat session based on the context data of the chat session by the communication system.
A step of storing data indicating the entire first session in the database, and
A step of initiating a third session between the communication server and the third-party content provider as part of the chat session in response to detection by the communication system that the second session has ended.
The communication system comprises providing the third party content provider with the data indicating at least a portion of the first session so that the user can resume the chat session with the third party content provider.
21. The method of claim 21.
前記特定のウェブリソースにアクセスする前記要求が音声入力を備える、請求項21に記載の方法。 21. The method of claim 21, wherein the request to access the particular web resource comprises voice input. 通信システムによって、前記ユーザから、前記第1のセッションにおいて第2の音声入力を受信するステップと、
前記サードパーティコンテンツプロバイダに、前記第2のセッションにおいて前記第2の音声入力のテキスト表現を示すデータを提供するステップと、
前記通信システムによって、前記サードパーティコンテンツプロバイダから、前記通信システムと前記サードパーティコンテンツプロバイダとの間の前記第2のセッションにおいて前記サードパーティコンテンツプロバイダからのテキスト入力を受信するステップと

前記通信システムによって、前記ユーザに、前記第1のセッションにおいて前記サードパーティコンテンツプロバイダからの前記テキスト入力の音声表現を示すデータを提供するステップとを含む、
請求項24に記載の方法。
A step of receiving a second voice input from the user in the first session by the communication system.
A step of providing the third party content provider with data indicating a textual representation of the second voice input in the second session.
A step of receiving text input from the third-party content provider from the third-party content provider by the communication system in the second session between the communication system and the third-party content provider.
The communication system comprises providing the user with data indicating a voice representation of the text input from the third party content provider in the first session.
24. The method of claim 24.
前記開始するステップが、
前記通信サーバによって、前記サードパーティコンテンツプロバイダから、前記チャットセッションの前記第1のセッションに対する第1の一意のセション識別子を受信するステップと、
前記通信サーバによって、前記サードパーティコンテンツプロバイダに、前記第2のセッションを促進するために前記第1の一意のセション識別子を提供するステップとを含む、請求項21に記載の方法。
The step to start is
A step of receiving a first unique session identifier for the first session of the chat session from the third party content provider by the communication server.
21. The method of claim 21, comprising the step of providing the third party content provider with the first unique session identifier to facilitate the second session by means of the communication server.
前記要求が、i)検索要求に応じて提示され、ii)前記特定のウェブリソースにリンクするコンテンツ項目の選択に応じて提供される、請求項20に記載の方法。 20. The method of claim 20, wherein the request is provided in response to i) a search request and ii) a selection of content items that link to the particular web resource. 前記チャットユーザインタフェースが、i)前記検索要求に応答する結果およびii)前記コンテンツ項目を表示するウェブページ上に提示される、請求項27に記載の方法。 27. The method of claim 27, wherein the chat user interface is presented on a web page that i) responds to the search request and ii) displays the content item. 前記チャットユーザインタフェースがチャットウィジェットである、請求項20に記載の方法。 The method of claim 20, wherein the chat user interface is a chat widget. 前記検出するステップが、
通信システムによって、前記ウェブリソースにアクセスするステップと、
前記通信システムによって、前記ウェブリソース上のウィジェットを特定するステップと、
前記通信システムによって、前記ウェブリソース上の前記ウィジェットのためのコードにおいて、前記ウェブリソースが前記ウェブリソース上のチャットユーザインタフェースを通じてサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供することを示すタグを特定するステップとを含む、請求項29に記載の方法。
The step to detect is
The step of accessing the web resource by the communication system and
A step of identifying a widget on the web resource by the communication system,
A tag indicating that the web resource provides functionality for live assistance by a third party content provider through a chat user interface on the web resource in the code for the widget on the web resource by the communication system. 29. The method of claim 29, comprising:
前記ライブアシスタンスが前記特定のサードパーティコンテンツプロバイダを代表する人間によって提供される、請求項20に記載の方法。 20. The method of claim 20, wherein the live assistance is provided by a person representing the particular third party content provider. 前記特定のウェブリソースに対して開始される複数のチャットセッションの各々に対して、通信システムによって、前記特定のウェブリソースに前記ユーザを導いたコンテンツ項目の一意の識別子に基づいて、前記チャットセッションに対するコンテンツ項目メトリック値を判定するステップと、
前記通信システムによって、前記コンテンツ項目メトリック値を使用して、前記コンテンツ項目メトリック値の提示を生成するステップと、
前記通信システムによって前記サードパーティコンテンツプロバイダに、表示のために前記提示を提供するステップとを含む、
請求項20に記載の方法。
For each of the plurality of chat sessions initiated for the particular web resource, the chat session is based on the unique identifier of the content item that led the user to the particular web resource by the communication system. Steps to determine the content item metric value and
A step of generating a presentation of the content item metric value by using the content item metric value by the communication system.
A step of providing the presentation for display to the third party content provider by the communication system.
The method of claim 20.
前記検出するステップが、
通信システムによって、前記ウェブリソースにアクセスするステップと、
前記通信システムによって、前記ウェブリソースがアクセスされているウィンドウと別である新たなウィンドウが開いたと判定するステップと、
前記新たなウィンドウにおいて、前記ウェブリソースが前記ウェブリソース上のチャッ
トユーザインタフェースを通じてサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供することを示すテキスト語句を判定するステップとを含む、請求項20に記載の方法。
The step to detect is
The step of accessing the web resource by the communication system and
A step of determining that the communication system has opened a new window different from the window in which the web resource is being accessed.
20. The new window comprises the step of determining a textual phrase indicating that the web resource provides functionality for live assistance by a third party content provider through a chat user interface on the web resource. The method described in.
前記ユーザが、ネットワーク接続されたデバイスを通じて前記チャットセッションにアクセスする、請求項20に記載の方法。 20. The method of claim 20, wherein the user accesses the chat session through a networked device. 前記ネットワーク接続されたデバイスがモバイルデバイスである、請求項34に記載の方法。 34. The method of claim 34, wherein the networked device is a mobile device. 前記ネットワーク接続されたデバイスがデスクトップデバイスである、請求項34に記載の方法。 34. The method of claim 34, wherein the networked device is a desktop device. 前記ネットワーク接続されたデバイスが画面を有しない、請求項34に記載の方法。 34. The method of claim 34, wherein the networked device does not have a screen. ネットワークに通信可能に接続されるデバイスと、
前記ネットワークに通信可能に接続されるサードパーティコンテンツプロバイダサーバと、
通信サーバであって、
複数のウェブリソースの各々に対して、
それぞれのウェブリソースの特性を示すデータを受信することと、
前記受信したデータに基づいて、前記それぞれのウェブリソースが前記それぞれのウェブリソース上のチャットユーザインタフェースを通じてサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供すると検出することと、
データベースに、前記それぞれのウェブリソースが前記機能性を有することを示すエントリを記憶することと、
ユーザから、特定のサードパーティコンテンツプロバイダによってホストされる特定のウェブリソースにアクセスする要求を受信することと、
前記特定のウェブリソースを表す前記データベースの記憶したエントリに基づいて、前記特定のウェブリソースが前記特定のウェブリソース上の特定のチャットユーザインタフェースを通じて前記特定のサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供すると判定することと、
前記通信サーバによって、前記ユーザと前記サードパーティコンテンツプロバイダとの間のチャットセッションを開始することとを含む動作を行う、通信サーバとを備える、
システム。
Devices that are communicatively connected to the network and
A third-party content provider server that is communicably connected to the network
It ’s a communication server,
For each of multiple web resources
Receiving data showing the characteristics of each web resource
Detecting that each of the web resources provides functionality for live assistance by a third-party content provider through the chat user interface on each of the web resources, based on the data received.
To store an entry in the database indicating that each of the web resources has the functionality.
Receiving requests from users to access certain web resources hosted by certain third-party content providers,
A feature for live assistance by the particular third-party content provider through a particular chat user interface on the particular web resource, based on a stored entry in the database representing the particular web resource. Determining to provide sex and
The communication server comprises a communication server that performs operations including initiating a chat session between the user and the third-party content provider.
system.
少なくとも1つのプロセッサによって実行されると、前記少なくとも1つのプロセッサに、
複数のウェブリソースの各々に対して、
通信サーバにおいて、それぞれのウェブリソースの特性を示すデータを受信することと、
前記通信サーバによって、前記受信したデータに基づいて、前記それぞれのウェブリソースが前記それぞれのウェブリソース上のチャットユーザインタフェースを通じてサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供すると検出することと、
前記通信サーバによって、データベースに、前記それぞれのウェブリソースが前記機能性を有することを示すエントリを記憶することと、
前記通信サーバによって、ユーザから、特定のサードパーティコンテンツプロバイダによってホストされる特定のウェブリソースにアクセスする要求を受信することと、
前記通信サーバによって、前記特定のウェブリソースを表す前記データベースの記憶し
たエントリに基づいて、前記特定のウェブリソースが前記特定のウェブリソース上の特定のチャットユーザインタフェースを通じて前記特定のサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供すると判定することと、
前記通信サーバによって、前記ユーザと前記サードパーティコンテンツプロバイダとの間のチャットセッションを開始することとを含む動作を行わせる、実行可能命令が符号化された少なくとも1つのコンピュータ可読記憶媒体。
When executed by at least one processor, the at least one processor
For each of multiple web resources
Receiving data showing the characteristics of each web resource on the communication server,
The communication server detects that, based on the received data, each of the web resources provides functionality for live assistance by a third-party content provider through a chat user interface on each of the web resources.
The communication server stores an entry in the database indicating that each of the web resources has the functionality.
The communication server receives a request from a user to access a particular web resource hosted by a particular third-party content provider.
Based on the stored entries in the database representing the particular web resource by the communication server, the particular web resource is live by the particular third party content provider through a particular chat user interface on the particular web resource. Determining that it provides functionality for assistance,
An executable instruction-encoded at least one computer-readable storage medium that causes the communication server to perform operations, including initiating a chat session between the user and the third-party content provider.
JP2021038250A 2017-06-13 2021-03-10 Improved interaction with the electronic chat interface Active JP7124151B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2021038250A JP7124151B2 (en) 2017-06-13 2021-03-10 Improved interaction with the electronic chat interface
JP2022128163A JP7459185B2 (en) 2017-06-13 2022-08-10 Improved interaction with electronic chat interfaces

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
PCT/US2017/037258 WO2018231208A1 (en) 2017-06-13 2017-06-13 Improving interaction with electronic chat interfaces
JP2019540576A JP6855584B2 (en) 2017-06-13 2017-06-13 Improved interaction with the electronic chat interface
JP2021038250A JP7124151B2 (en) 2017-06-13 2021-03-10 Improved interaction with the electronic chat interface

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2019540576A Division JP6855584B2 (en) 2017-06-13 2017-06-13 Improved interaction with the electronic chat interface

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2022128163A Division JP7459185B2 (en) 2017-06-13 2022-08-10 Improved interaction with electronic chat interfaces

Publications (2)

Publication Number Publication Date
JP2021099862A true JP2021099862A (en) 2021-07-01
JP7124151B2 JP7124151B2 (en) 2022-08-23

Family

ID=59091678

Family Applications (3)

Application Number Title Priority Date Filing Date
JP2019540576A Active JP6855584B2 (en) 2017-06-13 2017-06-13 Improved interaction with the electronic chat interface
JP2021038250A Active JP7124151B2 (en) 2017-06-13 2021-03-10 Improved interaction with the electronic chat interface
JP2022128163A Active JP7459185B2 (en) 2017-06-13 2022-08-10 Improved interaction with electronic chat interfaces

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2019540576A Active JP6855584B2 (en) 2017-06-13 2017-06-13 Improved interaction with the electronic chat interface

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2022128163A Active JP7459185B2 (en) 2017-06-13 2022-08-10 Improved interaction with electronic chat interfaces

Country Status (5)

Country Link
EP (1) EP3559825A1 (en)
JP (3) JP6855584B2 (en)
KR (2) KR102390939B1 (en)
CN (2) CN110268400B (en)
WO (1) WO2018231208A1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11165734B1 (en) * 2020-06-10 2021-11-02 Snap Inc. Messaging system share-to-chat
CN113010074A (en) * 2021-04-22 2021-06-22 海信电子科技(深圳)有限公司 Webpage Video control bar display method and display equipment
CN115811622B (en) * 2021-09-15 2024-09-17 花瓣云科技有限公司 Live broadcast interaction method, electronic equipment and system

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008276460A (en) * 2007-04-27 2008-11-13 Rakuten Inc Message transmission/receipt system, server device, terminal device, sever processing program, terminal processing device, and information providing method
US20110055207A1 (en) * 2008-08-04 2011-03-03 Liveperson, Inc. Expert Search
US20130311339A1 (en) * 2012-05-17 2013-11-21 Leo Jeremias Chat enabled online marketplace systems and methods
CN104317796A (en) * 2014-08-29 2015-01-28 北京奇虎科技有限公司 Multi-user interaction method, multi-user interaction server and multi-user interaction system based on searching
US20150235289A1 (en) * 2012-05-17 2015-08-20 Leo Jeremias Computer system and methods for chat enabled online search
JP2016100018A (en) * 2014-11-26 2016-05-30 Line株式会社 Communication method, content display method, recording medium, and computer program

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003092628A (en) * 2001-07-13 2003-03-28 Ketsu Aoki Phone relay service method
JP4809010B2 (en) * 2005-07-25 2011-11-02 ヤフー株式会社 Information retrieval system
US20070162605A1 (en) * 2006-01-07 2007-07-12 Chalasani Nanchariah R Distributed instant messaging
US7761321B2 (en) * 2006-02-22 2010-07-20 24/7 Customer, Inc. System and method for customer requests and contact management
US7987275B2 (en) * 2007-09-18 2011-07-26 International Business Machines Corporation Method, apparatus and computer program product implementing a chat application proxy and a chat application wrapper in a chat system
JP2010277207A (en) * 2009-05-27 2010-12-09 Nec Corp Portable terminal, retrieval engine system and information provision service method to be used for the same
WO2011140278A1 (en) * 2010-05-04 2011-11-10 Live Matrix, Inc. Temporal indices of the web that associate index elements with metadata
US9641480B2 (en) 2012-02-05 2017-05-02 Apple Inc. Automated participant account determination for a communication session
US20130275862A1 (en) * 2012-04-16 2013-10-17 Hosni I. Adra System and Method for Providing a Product-Based Chat Session
US9392421B2 (en) * 2012-05-23 2016-07-12 Qualcomm Incorporated Systems and methods for group communication using a mobile device with mode depending on user proximity or device position
CN105099858B (en) * 2014-05-14 2019-03-26 腾讯科技(深圳)有限公司 Network instant communication session method and system
KR102386739B1 (en) * 2014-12-08 2022-04-15 삼성전자주식회사 Terminal device and data processing method thereof
CN104866560B (en) * 2015-05-18 2018-10-23 百度在线网络技术(北京)有限公司 Resource information sharing method and its terminal device and server
KR20160113568A (en) * 2016-09-20 2016-09-30 네이버 주식회사 Method, system and recording medium for transaction processing using real time conversation
KR101772361B1 (en) * 2017-03-06 2017-08-28 라인 가부시키가이샤 Method, system and recording medium for providing content in messenger

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008276460A (en) * 2007-04-27 2008-11-13 Rakuten Inc Message transmission/receipt system, server device, terminal device, sever processing program, terminal processing device, and information providing method
US20110055207A1 (en) * 2008-08-04 2011-03-03 Liveperson, Inc. Expert Search
US20130311339A1 (en) * 2012-05-17 2013-11-21 Leo Jeremias Chat enabled online marketplace systems and methods
US20150235289A1 (en) * 2012-05-17 2015-08-20 Leo Jeremias Computer system and methods for chat enabled online search
CN104317796A (en) * 2014-08-29 2015-01-28 北京奇虎科技有限公司 Multi-user interaction method, multi-user interaction server and multi-user interaction system based on searching
JP2016100018A (en) * 2014-11-26 2016-05-30 Line株式会社 Communication method, content display method, recording medium, and computer program

Also Published As

Publication number Publication date
WO2018231208A1 (en) 2018-12-20
JP7124151B2 (en) 2022-08-23
KR20210102503A (en) 2021-08-19
JP2020518039A (en) 2020-06-18
CN110268400B (en) 2023-08-15
KR102291621B1 (en) 2021-08-19
JP7459185B2 (en) 2024-04-01
CN110268400A (en) 2019-09-20
CN117131255A (en) 2023-11-28
KR20190099072A (en) 2019-08-23
EP3559825A1 (en) 2019-10-30
KR102390939B1 (en) 2022-04-26
JP2022166160A (en) 2022-11-01
JP6855584B2 (en) 2021-04-07

Similar Documents

Publication Publication Date Title
CN110892382B (en) Systems, methods, and apparatus for restoring dialog sessions via an automated assistant
JP6961737B2 (en) Dynamic code management
US11928482B2 (en) Interaction with electronic chat interfaces
US20190182383A1 (en) Transfer of customer support to automated processing
JP7459185B2 (en) Improved interaction with electronic chat interfaces
KR101980173B1 (en) A collaborative personal assistant system for delegating providing of services supported by third party task providers and method therefor
KR102428368B1 (en) Initializing a conversation with an automated agent via selectable graphical element
CN111492383A (en) Automated communication using intent classifiers
US9503410B2 (en) Sharing of activity metadata via messaging systems
US20240187358A1 (en) Intelligent Assistant Content Generation
CN105408887A (en) Reverse number look up
WO2017165253A1 (en) Modular communications
US10503763B2 (en) Methods and systems for executing functions in a text field
CN113127671A (en) Uniform resource identifier and image sharing for contextual information display
KR102050377B1 (en) A collaborative personal assistant system for delegating providing of services supported by third party task providers and method therefor
KR20230161800A (en) Method, user terminal and sever for providing response information of advertisement message
KR20210134902A (en) Restrict the provision and display of redundant digital components on client devices
JP2024529838A (en) A virtual remote control on a first device for controlling a second device, e.g. a TV

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210311

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210311

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220314

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220614

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220810

R150 Certificate of patent or registration of utility model

Ref document number: 7124151

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150