JP7459185B2 - Improved interaction with electronic chat interfaces - Google Patents

Improved interaction with electronic chat interfaces Download PDF

Info

Publication number
JP7459185B2
JP7459185B2 JP2022128163A JP2022128163A JP7459185B2 JP 7459185 B2 JP7459185 B2 JP 7459185B2 JP 2022128163 A JP2022128163 A JP 2022128163A JP 2022128163 A JP2022128163 A JP 2022128163A JP 7459185 B2 JP7459185 B2 JP 7459185B2
Authority
JP
Japan
Prior art keywords
user
content provider
chat
chat session
agent
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2022128163A
Other languages
Japanese (ja)
Other versions
JP2022166160A (en
Inventor
スリラム・バルガフ・カルナティ
ヴァルン・サウンダララジャン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP2022128163A priority Critical patent/JP7459185B2/en
Publication of JP2022166160A publication Critical patent/JP2022166160A/en
Application granted granted Critical
Publication of JP7459185B2 publication Critical patent/JP7459185B2/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/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/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/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)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • User Interface Of Digital Computer (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

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 not be consistent across content providers and may be implemented and presented differently. Furthermore, some or all of the functionality may be lost when traditional chat interfaces are presented on mobile devices. Additionally, once the chat session is disconnected, there is little recourse.

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

これらおよび他の実施形態は各々、以下の特徴の1つまたは複数を任意選択で含むことができる。一部の実装例では、本方法は、複数のウェブリソースに関するデータベースエントリを有するデータベースにデータ設定する(populate)ステップを含む。データベースにデータ設定するステップは、上記複数のウェブページの各々に対して、通信サーバにおいて、それぞれのウェブリソースの特性を示すデータを受信するステップと、通信サーバによって、受信したデータに基づいて、それぞれのウェブリソースがそれぞれのウェブリソース上のチャットユーザインタフェースを通じてサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供すると検出するステップと、通信サーバによって、データベースに、それぞれのウェブリソースが同機能性を有することを示すエントリを記憶するステップとを含む。データベースにデータ設定するためのステップは、データベースにまだ含まれていないウェブページに対するデータを獲得するために定期的に行われる。 Each of these and other embodiments can optionally include one or more of the following features. In some implementations, the method includes populating a database having database entries for multiple web resources. The step of setting data in the database includes the step of receiving, at the communication server, data indicating the characteristics of each web resource for each of the plurality of web pages, and the step of setting data in the database based on the received data. detecting that the web resources of the respective web resources provide functionality for live assistance by a third party content provider through a chat user interface on the respective web resources; storing an entry indicating that the The step of populating the database is performed periodically to obtain data for web pages not already included 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 includes detecting, by the communication system, that there is no activity in the chat session for a predetermined period of time; and, by the communication system, terminating at least one of the first session or the second session. determining, by the communication system, that the user has not completed the chat session based on the chat session context data; and storing in a database data indicative of the first session in its entirety. and, in response to detecting, by the communication system, that the second session has ended, initiating a third session between the communication server and the third party content provider as part of the chat session; providing data indicative of at least a portion of the first session to the third party content provider 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 includes the steps of: receiving, at a communication server, input from a user through a chat user interface to a first session; and providing data indicative of the user input. In some implementations, the request to access a particular web resource includes voice input. In some implementations, the method includes receiving, by the communication system, a second audio input from the user in the first session; and providing the third party content provider with the second audio input in the second session. and receiving, by the communication system, text input from the third party content provider in a second session between the communication system and the third party content provider. and providing the user, by the communication system, with data indicative of an audio 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, determining that a particular web resource provides functionality for live assistance from a particular third-party content provider through a particular chat user interface on the particular web resource includes accessing the web resource by the communication system, identifying by the communication system a widget on the web resource, and identifying by the communication system a tag in code for the widget on the web resource that indicates that the web resource provides functionality for live assistance from a third-party content provider through a chat user interface on the web resource.

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

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

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

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

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

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

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

本明細書に記載される主題の別の革新的な態様は、複数のウェブリソースの各々に対して、通信サーバにおいて、それぞれのウェブリソースの特性を示すデータを受信するステップと、通信サーバによって、受信したデータに基づいて、それぞれのウェブリソースがそれぞれのウェブリソース上のチャットユーザインタフェースを通じてサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供すると検出するステップと、通信サーバによって、データベースに、それぞれのウェブリソースが同機能性を有することを示すエントリを記憶するステップとを含む方法で具象化可能である。本方法は、通信サーバによって、ユーザから、特定のサードパーティコンテンツプロバイダによってホストされる特定のウェブリソースにアクセスする要求を受信するステップと、通信サーバによって、特定のウェブリソースを表すデータベースの記憶したエントリに基づいて、特定のウェブリソースが特定のウェブリソース上の特定のチャットユーザインタフェースを通じて特定のサードパーティコンテンツプロバイダによるライブアシスタンスのための機能性を提供すると判定するステップと、通信サーバによって、ユーザとサードパーティコンテンツプロバイダとの間のチャットセッションを開始するステップとを含む。 Another innovative aspect of the subject matter described herein includes, for each of a plurality of web resources, receiving at a communication server data indicative of characteristics of the respective web resource; detecting, based on the received data, that each web resource provides functionality for live assistance by a third party content provider through a chat user interface on the respective web resource; storing an entry indicating that the web resources have the same functionality. The method includes the steps of: receiving, by a communications server, a request from a user to access a particular web resource hosted by a particular third party content provider; and storing, by the communications server, a stored entry in a database representing the particular web resource. 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 the particular web resource based on the communication server; and initiating 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. The method includes the steps of: receiving, at a communication server, input from a user to a first session through a chat user interface; and transmitting, by the communication server, data indicative of user input to a second session to a third party content provider. and maintaining state information of a chat session between the user and the third party content provider. The method includes the steps of: detecting, by the communication system, that there is no activity for a predetermined period of time; detecting, by the communication system, that at least one of the first session or the second session has ended; , determining that the user has not completed the chat session based on the context data of the chat session; storing data indicative of the entire first session in a database; in response to detecting that the session has ended, initiating a third session between the communications server and the third party content provider as part of the chat session; providing data indicative of 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, the request to access a particular web resource comprises voice input. The method includes the steps of: receiving, by a communication system, a second audio input from a user in a first session; and providing data indicating a textual representation of the second audio input to a third party content provider in a second session. providing, and receiving, by the communication system, text input from the third party content provider in a second session between the communication system and the third party content provider; and providing data indicative of an audio representation of text input from a third party content provider in the first session.

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

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

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

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

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

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

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

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

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

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

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

様々な図面における同様の参照番号および記号は同様の要素を示す。 Like reference numbers and symbols in the 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 a user and the content provider with which the user is communicating. A gateway relays content (e.g., a message) received at one communication interface of a user to another communication interface of a content provider and establishes one session directly between the user and the content provider without maintaining session data. , and store relevant data about the conversation between the user and the content provider, rather than allowing a disconnection on the part of the user or content provider to terminate the chat session without the ability to re-establish the chat session. maintain session information by

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

電子文書とは、クライアントデバイスにおいて一組のコンテンツを提示するデータである。電子文書の例としては、ウェブページ、ワードプロセッシング文書、ポータブルドキュメントフォーマット(PDF)文書、画像、ビデオ、検索結果ページおよびフィードソースを含む。モバイル、タブレットまたはデスクトップコンピューティングデバイス上にインストールされるアプリケーションなどの、ネイティブアプリケーション(例えば、「アプリ」)も電子文書の例である。電子文書は、ユーザによる消費のために提示されるデジタルコンポーネントを含む。 An electronic document is data that presents a set of content at a client device. Examples of electronic documents include web pages, word processing documents, Portable Document Format (PDF) documents, images, videos, search results 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 a user.

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

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

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

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

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

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

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

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

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

システムが、トラクタ会社などのコンテンツプロバイダが担当者とチャットするオプションを提供すると特定し、そしてコンテンツプロバイダのウェブサイトがチャットインタフェースを使用するオプションを提供することを示すデータを記憶する。ライブチャットセッションまたは回答のライブラリがメッセージング機械学習モデルを使用して構築された自動化チャットセッションなど、チャットセッションの機能性を提供するとしてウェブサイトが一旦特定されると、システムは、ウェブページがチャット機能性を提供することを示すことができる。例えば、システムは、ウェブサイトが現れる検索結果において、ウェブサイトがチャットセッションの機能性を提供することを示すことができる。 The system identifies that a content provider, such as a tractor company, provides an option to chat with a representative and stores data indicating that the content provider's website provides 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 uses You can show that you provide sex. For example, the system may indicate in search results where a website appears that the website provides chat session functionality.

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

ウェブページは、ユーザがコンテンツプロバイダとのチャットセッションを開始できるユーザインタフェース要素を提供できる。一旦ユーザがユーザインタフェース要素をコンテンツプロバイダとのチャットセッションを開始するように選択すると、システムは、チャットセッションを開始および促進するときに、使用するチャットセッションの特性を識別する。例えば、システムは、ユーザがチャットインタフェースに入力を提供するクライアントデバイスに対するデバイス識別子、クライアントデバイスとコンテンツプロバイダの特定の担当者との間の特定のセッションに対するセション識別子、およびコンテンツプロバイダの特定の担当者がチャットインタフェースにデータを入力するデバイスに対するデバイス識別子を記憶できる。 A web page can provide user interface elements that allow a user to initiate a chat session with a content provider. Once a user selects a user interface element to initiate a chat session with a content provider, the system identifies characteristics of the chat session to use when initiating and facilitating the chat session. For example, the system may identify a device identifier for a client device on which a user provides input to a chat interface, a session identifier for a particular session between the client device and a particular contact at the content provider, and a session identifier for a particular session between the client device and a particular contact at the content provider. Device identifiers can be stored 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 separate chat session with the content provider, and uses data indicative of the input provided in the first chat session and the second chat session. Relay messages between users and content providers.

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

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

図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 example environment 100 in which users can communicate with content providers. The example environment 100 includes a mobile device 102, a client device 104, a screenless assistant device 106 (eg, a tabletop PDA unit), a gateway 110, an example web page 120, and a content provider system 130. Devices 102, 104, and 106 are connected to gateway 110 and to content provider system 130 through a network such as a local area network (LAN), wide area network (WAN), the Internet, or a combination 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 each electronic devices capable of requesting and receiving resources over a network. Example mobile devices 102 include mobile phones, smartphones, tablets, and other handheld mobile devices that allow users to connect to content providers over a network. Example client devices 104 include personal computers, mobile workstations, and laptop computers. The devices 102, 104, and 106 typically include user applications, such as a web browser, to facilitate sending and receiving data over the network, although native applications executed by the client device 104 can also facilitate sending and receiving data over the network.

デバイス102、104または106は、ネットワークを通じて、検索エンジンなどの検索システムに検索クエリを提出できる。応答して、検索システムは、検索クエリに関連している電子文書を特定するために検索インデックスにアクセスする。検索システムは、検索結果の形態で電子文書を特定し、そして検索結果ページでデバイス102、104または106に検索結果を返す。 A 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 electronic documents related to the search query. The search system identifies electronic documents in the form of search results and returns the search results to device 102, 104, or 106 in a search results page.

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

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

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

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

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

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

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

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

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

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

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

図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 may 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 communications gateway, such as gateway 110.

検索クエリ202は、ユーザが関連結果を見ることに関心があるクエリを示す、検索エンジンなどの検索システムにユーザによって入力されたデータである。検索エンジンは、検索結果ページに結果210、220、230および240を提供できる。結果210、220、230および240の各々は、検索クエリ202に関連しており、一部の実装例では、検索クエリ202への関連性に基づいてランク付け可能である。 Search query 202 is data entered by a user into a search system, such as a search engine, that indicates a query for which the user is interested in seeing related results. The search engine may provide results 210, 220, 230, and 240 on a search results page. Each of results 210, 220, 230, and 240 are related to search query 202 and, in some implementations, can be ranked based on their 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 a respective user interface element 212, 222, 232 and 242 that directs the user to a chat interface with the associated content provider. User interface elements 212, 222, 232, and 242 are customizable to the associated content provider's web page on which each element is presented. Customization can be based on various attributes of a particular relevant web page, such as font, text size, or color. For example, user interface elements 212, 222, 232, and 242 each have a theme associated with a respective search results web page 210, 220, 230, and 240.

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

一旦ユーザがユーザインタフェース要素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 providing the search results web page 210. Gateway 110 identifies the user who selected web page 120 and element 212 and stores data indicating the web page 120 and the user's identifier. Gateway 110 may also store various other attributes of a chat session, such as the length of the session, a first session identifier for a chat session with a user, and a second separate session identifier for a chat session with a content provider.

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

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

ゲートウェイ110は、様々なフォーマットのユーザかコンテンツプロバイダかからの入力を処理できる。例えば、ユーザがモバイルデバイス102を使用してゲートウェイ110と対話し、そしてユーザインタフェース要素212をコンテンツプロバイダとの電子メール会話を開始するように選択すれば、コンテンツプロバイダとのチャットセッションが開始可能であり、そしてユーザ入力および応答は電子メールクライアントインタフェース内で提示可能である。 Gateway 110 can process input from users or content providers in a variety of formats. For example, a chat session with a content provider may be initiated if a user interacts with gateway 110 using mobile device 102 and selects 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, given a traditional conversation, gateway 110 can provide a particular identifier, such as a phone number, to which the user can provide input. For example, if the user is already connected to a content provider, the gateway 110 can detect the user input depending on the content provider if the user input is provided to a different application, such as a text message application or an email client. The user's input can then be converted into input to be provided to 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 data transferred to establish a chat session. For example, a chat interface can be presented on search results page 204. As mentioned above, the chat interface may include user interface elements that allow a user to enter data. For example, a chat interface may include a text box where a user can enter a response or question to 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 the search results page 204 using various rendering methods, such as headless rendering. The chat interface receives input from users or content providers and provides input to gateway 110 for transmission.

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

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

ゲートウェイ110は次いで、コンテンツプロバイダとのセッションへの入力としてテキストデータを使用できる。ゲートウェイ110がコンテンツプロバイダから応答を受信すると、応答は、画面のないアシスタントデバイス106への入力が提供されたのと同じフォーマットで出力されるように処理可能である。例えば、画面のないアシスタントデバイス106が音声入力を受信した場合、画面のないアシスタントデバイス106は、音声データを含む出力用のデータを受信できる。 The 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 in which the input to the non-screen assistant device 106 was provided. For example, if the non-screen assistant device 106 receives voice input, the non-screen assistant device 106 can receive data for output that includes the voice data.

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

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

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

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

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

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

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

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

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

会話が無活動と標記されると、ゲートウェイ110は、コンテンツプロバイダにユーザが不在であると通知できる。例えば、ユーザが無活動であると検出されれば、ゲートウェイ110は、コンテンツプロバイダ担当者に数分の間待って接続したままでいるよう依頼する応答を、ユーザに代わってコンテンツプロバイダ担当者に提供できる。 When a conversation is marked as inactive, 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 may provide a response to the content provider representative on behalf of the user asking the content provider representative to wait a few minutes and remain connected. can.

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

一部の例では、ゲートウェイ110は、ユーザが一時的に手が空いていないだけであれば、コンテンツプロバイダ担当者との会話を維持しようとすることができる。例えば、ユーザがモバイルデバイス102で電話を受ければ、ゲートウェイ110は、「すぐに戻ります、お待ちいただけますか」など、ユーザに代わってコンテンツプロバイダに応答を提供できる。ゲートウェイ110は次いで、ユーザの次の応答までチャットセッションを維持しようとすることができる。 In some examples, gateway 110 may attempt to maintain a conversation with a content provider representative if the user is only temporarily unavailable. For example, if a user receives a call on mobile device 102, gateway 110 can provide a response to the content provider on behalf of the user, such as "I'll be right back, could you wait?" Gateway 110 may 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 flow chart of an example process 300 for initiating and maintaining a chat session between a user and a third-party content provider. In some implementations, process 300 can be implemented by a messaging system, such as system 100. For example, process 300 can be implemented by gateway 110 of FIG. 1. In some implementations, process 300 can be implemented as instructions stored on a non-transitory computer-readable medium, and when executed by one or more servers, the instructions can cause the one or more servers to perform the operations of process 300.

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

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

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

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

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

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

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

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

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

一部の例では、工程300は、所定の期間の間アクティビティがないと、および第1のセッションまたは第2のセッションの少なくとも1つが終了したと検出することを含む。工程300は、チャットセッションのコンテキストデータに基づいて、ユーザがチャットセッションを完了していないと判定することと、データベースに、第1のセッションの全体を示すデータを記憶することとを含む。工程300は続いて、第2のセッションが終了したとの検出に応じて、チャットセッションの一部として通信サーバとサードパーティコンテンツプロバイダとの間の第3のセッションを開始し、そして通信システムによって、サードパーティコンテンツプロバイダに、ユーザがサードパーティコンテンツプロバイダとのチャットセッションを再開できるように第1のセッションの少なくとも一部分を示すデータを提供できる。 In some examples, process 300 includes detecting inactivity for a predetermined period of time and at least one of the first session or the second session has ended. Process 300 includes determining that the user has not completed the chat session based on the chat session context data and storing data indicative of the entire first session in a database. Process 300 then can initiate a third session between the communication server and the third-party content provider as part of the chat session in response to detecting that the second session has ended, and provide, by the communication system, to the third-party content provider data indicative of at least a portion of the first session to enable the user to 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 includes receiving a second audio input from the user in the first session. Step 300 continues by providing the third party content provider with data indicative of a textual representation of the second audio input in the second session. Step 300 continues with receiving text input from the third party content provider by the communication system in a second session between the communication system and the third party content provider. Step 300 can continue to provide the user with data indicative of an audio 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 an example computer system 400 that can be used to perform the operations described above. System 400 includes a processor 410, memory 420, storage device 430, and input/output device 440. Each of components 410, 420, 430, 440 can be interconnected using, for example, 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 multi-threaded processor. Processor 410 is capable of processing instructions stored in memory 420 or in storage device 430.

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

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

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

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

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

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

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

用語「データ処理装置」は、例として、プログラマブルプロセッサ、コンピュータ、システムオンチップまたは以上の複数のものもしくは組合せを含め、データを処理するための全ての種類の装置、デバイスおよび機械を包含する。装置は、専用論理回路網、例えば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)を含むことができる。装置は、ハードウェアに加えて、当該コンピュータプログラムのための実行環境を作成するコード、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、クロスプラットフォーム実行時環境、仮想マシンまたはそれらの1つもしくは複数の組合せを構成するコードも含むことができる。装置および実行環境は、ウェブサービス、分散コンピューティングおよびグリッドコンピューティングインフラストラクチャなどの様々な異なるコンピューティングモデルインフラストラクチャを実現できる。 The term "data processing apparatus" encompasses all types of apparatus, devices and machines for processing data, including, by way of example, programmable processors, computers, systems on chips or combinations of the above. The device may include dedicated logic circuitry, such as an FPGA (Field Programmable Gate Array) or an ASIC (Application Specific Integrated Circuit). In addition to hardware, the device includes code that creates an execution environment for the computer program, such as processor firmware, a protocol stack, a database management system, an operating system, a cross-platform runtime environment, a virtual machine, or one of these. Alternatively, it can also include codes that constitute multiple combinations. The devices 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つのサイトに設けられるもしくは複数のサイトにわたって分散されて通信ネットワークによって相互接続される複数のコンピュータ上で実行可能である。 A computer program (also known as a program, software, software application, script or code) may be written in any form of programming language, including compiled or interpreted languages, declarative or procedural languages, and It can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, object, or other unit suitable for use in a computing environment. A computer program may, but need not, correspond to files in a file system. A program may be placed in a portion of a file that holds other programs or data (e.g., one or more scripts stored in a markup language document), in a single file dedicated to the program, or in multiple linked files. (e.g., a file storing one or more modules, subprograms, or portions of code). A computer program can be deployed and executed on one computer or on multiple computers located at one site or distributed across multiple sites and interconnected by a communications network.

本明細書に記載される工程および論理フローは、1つまたは複数コンピュータプログラムを実行して、入力データを操作して出力を生成することによって作用を行う1つまたは複数のプログラマブルコンピュータによって行われ得る。工程および論理フローは、専用論理回路網、例えば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)によっても行われ得、そして装置もそれとして実装可能である。 The processes and logic flows described herein may be performed by one or more programmable computers executing one or more computer programs to perform functions by manipulating input data to generate output. The processes and logic flows may also be performed by, and devices may be implemented as, special purpose logic circuitry, such as an FPGA (field programmable gate array) or an ASIC (application specific integrated circuit).

コンピュータプログラムの実行に適するプロセッサは、例として、汎用および専用マイクロプロセッサ両方を含む。一般に、プロセッサは、リードオンリメモリまたはランダムアクセスメモリまたは両方から命令およびデータを受けることになる。コンピュータの必須要素は、命令に従って作用を行うためのプロセッサ、ならびに命令およびデータを記憶するための1つまたは複数のメモリデバイスである。一般に、コンピュータは更に、データを記憶するための1つまたは複数の大容量記憶デバイス、例えば、磁気、光磁気ディスクまたは光ディスクを含む、または作動的に結合されて、それからデータを受けるもしくはそれにデータを転送するもしくは両方行うことになる。しかしながら、コンピュータは、そのようなデバイスを有する必要はない。その上、コンピュータは、別のデバイス、例えば、いくつか挙げると、移動電話、携帯情報端末(PDA)、モバイルオーディオもしくはビデオプレーヤ、ゲームコンソール、全地球測位システム(GPS)受信器、またはポータブル記憶デバイス(例えば、ユニバーサルシリアルバス(USB)フラッシュドライブ)に埋め込み可能である。コンピュータプログラム命令およびデータを記憶するのに適するデバイスとしては、例として、半導体メモリデバイス、例えば、EPROM、EEPROMおよびフラッシュメモリデバイス;磁気ディスク、例えば、内部ハードディスクまたはリムーバブルディスク;光磁気ディスク;ならびにCD ROMおよびDVD-ROMディスクを含め、全ての形態の不揮発性メモリ媒体およびメモリデバイスを含む。プロセッサおよびメモリは、専用論理回路網によって補足、またはそれに組み込み可能である。 Processors suitable for the execution of a computer program include, by way of example, both general and special purpose microprocessors. Generally, a processor will receive instructions and data from read-only memory and/or random access memory. The essential elements of a computer are a processor for performing operations according to instructions, and one or more memory devices for storing instructions and data. Generally, the computer further includes, or is operatively coupled to, one or more mass storage devices for storing data, such as magnetic, magneto-optical or optical disks, for receiving data from or transmitting data to the computer. Transfer or both. However, a computer does not need to have such a device. Additionally, the computer may be connected to another device, such as a mobile phone, a personal digital assistant (PDA), a mobile audio or video player, a game console, a Global Positioning System (GPS) receiver, or a portable storage device, to name a few. (e.g., a Universal Serial Bus (USB) flash drive). Devices suitable for storing computer program instructions and data include, by way of 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 all forms of non-volatile memory media and devices, including DVD-ROM discs. The processor and memory can be supplemented by or integrated with dedicated logic circuitry.

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

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

コンピューティングシステムは、クライアントおよびサーバを含むことができる。クライアントおよびサーバは、一般に互いから離れており、典型的に通信ネットワークを通じて対話する。クライアントおよびサーバの関係は、それぞれのコンピュータ上で動いており、互いにクライアント-サーバ関係を有するコンピュータプログラムによって生じる。一部の実施形態では、サーバはクライアントデバイスにデータ(例えば、HTMLページ)を伝送する(例えば、クライアントデバイスと対話しているユーザにデータを表示してユーザからユーザ入力を受信する目的で)。クライアントデバイスにおいて生成されるデータ(例えば、ユーザ対話の結果)は、サーバにおいてクライアントデバイスから受信可能である。 A computing system can include clients and servers. Clients and servers are generally remote from each other and typically interact through a communications network. The client and server relationship is created by computer programs running on their respective computers and having 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 data to and receiving user input from a user interacting with the client device). Data generated at the client device (eg, results of user interaction) can be received from the client device at the server.

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

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

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

通信サーバによって、ユーザのクライアントデバイスから、入力を受信するステップと、
前記通信サーバによって、前記入力を用いて検索結果を取得するステップと、
前記通信サーバによってデータベースに記憶された複数のウェブリソースのエントリに基づき、サードパーティコンテンツプロバイダによって提供され、前記検索結果において特定されるウェブリソースが、前記サードパーティコンテンツプロバイダによって提供されるライブチャットシステムへの接続を開始するユーザインターフェース要素を含むことを検出するステップと、
前記検索結果が、前記ウェブリソースの第1の要求を前記ユーザに要することなく前記ユーザに送信されるときに、前記クライアントデバイスを通して前記ユーザに、前記サードパーティコンテンツプロバイダによって提供された前記ライブチャットシステムを用いてチャットセッションを開始するオプションを提供するステップと、
前記クライアントデバイスから、前記ユーザが前記ユーザインターフェース要素との対話を通して前記チャットセッションの開始を要求したことの確認を受信するステップと、
前記通信サーバによって、前記ユーザを前記サードパーティコンテンツプロバイダによって提供された前記ウェブリソースにリダイレクトすることなく、前記確認の受信に基づいて、前記ユーザと前記サードパーティコンテンツプロバイダのエージェントとの間のチャットセッションを開始するステップと、を含む、
方法。
receiving input from the user's client device by the communication server;
obtaining search results using the input by the communication server;
Based on entries of a plurality of web resources stored in a database by the communication server, the web resource provided by a third party content provider and identified in the search result is sent to a live chat system provided by the third party content provider. containing a user interface element that initiates a connection to the
the live chat system provided by the third party content provider to the user through the client device when the search results are sent to the user without requiring the user to first request the web resource; providing an option to initiate a chat session using
receiving confirmation from the client device that the user has requested initiation of the chat session through interaction with the user interface element;
a chat session between the user and an agent of the third-party content provider based on receipt of the confirmation, without redirecting the user to the web resource provided by the third -party content provider by the communication server; including the step of initiating the
Method.
チャットセッションを開始するオプションを提供するステップが、前記ユーザを、前記サードパーティコンテンツプロバイダからより多くの情報を前記ユーザに提供することができるエージェントに接続または前記エージェントとチャットするように招待する問い合わせを提供するステップを含み、
前記ユーザが前記チャットセッションの開始を要求したことの確認を受信するステップが、前記問い合わせに対する応答を受信するステップを含む、請求項1に記載の方法。
providing an option to initiate a chat session includes providing an inquiry inviting the user to connect to or chat with an agent from the third -party content provider who can provide the user with more information;
The method of claim 1 , wherein receiving confirmation that the user has requested to initiate the chat session comprises receiving a response to the inquiry.
前記チャットセッションを開始するステップが、前記エージェントとのインターネットプロトコル音声電話呼び出しを開始するステップを含む、請求項1に記載の方法。 The method of claim 1, wherein initiating the chat session comprises initiating an Internet Protocol voice telephone call with the agent. 前記チャットセッションの間、前記ユーザと前記エージェントとの間の通信のログを記録することを含む、前記チャットセッションの状態を維持するステップと、
前記チャットセッションが前記エージェントと前記ユーザとの間の対話の完了の前に終了したことを決定するステップと、
前記サードパーティコンテンツプロバイダの後続のエージェントとの後続のチャットセッションを開始するステップと、
前記後続のエージェントに、前記ユーザと前記エージェントとの間のログを記録された通信の少なくとも一部を含む前記チャットセッションの状態を提供するステップと、を含む、請求項1に記載の方法。
maintaining a state of the chat session, including logging communications between the user and the agent during the chat session;
determining that the chat session ended prior to completion of interaction between the agent and the user;
initiating a subsequent chat session with a subsequent agent of the third party content provider;
2. The method of claim 1, comprising: providing the subsequent agent with a state of the chat session that includes at least a portion of logged communications between the user and the agent.
前記チャットセッションが前記エージェントと前記ユーザとの間の対話の完了の前に終了したことを決定するステップが、少なくとも所定の期間の間、前記ライブチャットシステムを通してアクティビティがないと決定するステップを含む、請求項4に記載の方法。 determining that the chat session ended prior to completion of interaction between the agent and the user comprises determining that there is no activity through the live chat system for at least a predetermined period of time; The method according to claim 4. チャットセッションへのクライアント側入力に対応する対話データを格納するデータストアと、
クライアントデバイスとの通信における通信サーバであって、前記通信サーバが、前記クライアントデバイスとサードパーティコンテンツプロバイダとの間のチャットセッションを促進し、以下の、
ユーザのクライアントデバイスから、入力を受信することと、
前記入力を用いて検索結果を取得することと、
前記通信サーバによってデータベースに記憶された複数のウェブリソースのエントリに基づき、サードパーティコンテンツプロバイダによって提供され、前記検索結果において特定されるウェブリソースが、前記サードパーティコンテンツプロバイダによって提供されるライブチャットシステムへの接続を開始するユーザインターフェース要素を含むことを検出することと、
前記検索結果が、前記ウェブリソースの第1の要求を前記ユーザに要することなく前記ユーザに送信されるときに、前記クライアントデバイスを通して前記ユーザに、前記サードパーティコンテンツプロバイダによって提供された前記ライブチャットシステムを用いてチャットセッションを開始するオプションを提供することと、
前記クライアントデバイスから、前記ユーザが前記ユーザインターフェース要素との対話を通して前記チャットセッションの開始を要求したことの確認を受信することと、
前記ユーザを前記サードパーティコンテンツプロバイダによって提供された前記ウェブリソースにリダイレクトすることなく、前記確認の受信に基づいて、前記ユーザと前記サードパーティコンテンツプロバイダのエージェントとの間のチャットセッションを開始することと、
を含む動作を実行する、通信サーバと、を含む、
システム。
a data store that stores interaction data corresponding to client-side input to the chat session;
a communications server in communication with a client device, the communications server facilitating a chat session between the client device and a third party content provider, the communications server comprising:
receiving input from a user's client device;
obtaining search results using the input;
Based on entries of a plurality of web resources stored in a database by the communication server, the web resource provided by a third party content provider and identified in the search result is sent to a live chat system provided by the third party content provider. containing a user interface element that initiates a connection;
the live chat system provided by the third party content provider to the user through the client device when the search results are sent to the user without requiring the user to first request the web resource; providing the option to initiate a chat session using
receiving confirmation from the client device that the user has requested initiation of the chat session through interaction with the user interface element;
initiating a chat session between the user and an agent of the third-party content provider based on receipt of the confirmation without redirecting the user to the web resource provided by the third -party content provider; ,
a communication server that performs operations including;
system.
チャットセッションを開始するオプションを提供することが、前記ユーザを、前記サードパーティコンテンツプロバイダからより多くの情報を前記ユーザに提供することができるエージェントに接続または前記エージェントとチャットするように招待する問い合わせを提供することを含み、
前記ユーザが前記チャットセッションの開始を要求したことの確認を受信することが、前記問い合わせに対する応答を受信することを含む、請求項6に記載のシステム。
Providing an option to initiate a chat session may connect the user to an agent who may provide the user with more information from the third party content provider or make an inquiry inviting the user to chat with the agent. including providing
7. The system of claim 6, wherein receiving confirmation that the user requested to initiate the chat session includes receiving a response to the inquiry.
前記チャットセッションを開始することが、前記エージェントとのインターネットプロトコル音声電話呼び出しを開始することを含む、請求項6に記載のシステム。 The system of claim 6, wherein initiating the chat session includes initiating an Internet Protocol voice telephone call with the agent. 前記動作が、
前記チャットセッションの間、前記ユーザと前記エージェントとの間の通信のログを記録することを含む、前記チャットセッションの状態を維持することと、
前記チャットセッションが前記エージェントと前記ユーザとの間の対話の完了の前に終了したことを決定することと、
前記サードパーティコンテンツプロバイダの後続のエージェントとの後続のチャットセッションを開始することと、
前記後続のエージェントに、前記ユーザと前記エージェントとの間のログを記録された通信の少なくとも一部を含む前記チャットセッションの状態を提供することと、を含む、請求項6に記載のシステム。
The operation is
maintaining a state of the chat session, including logging communications between the user and the agent during the chat session;
determining that the chat session ended prior to completion of interaction between the agent and the user;
initiating a subsequent chat session with a subsequent agent of the third party content provider;
7. The system of claim 6, comprising: providing the subsequent agent with a state of the chat session that includes at least a portion of logged communications between the user and the agent.
前記チャットセッションが前記エージェントと前記ユーザとの間の対話の完了の前に終了したことを決定することが、少なくとも所定の期間の間、前記ライブチャットシステムを通してアクティビティがないと決定することを含む、請求項9に記載のシステム。 The system of claim 9, wherein determining that the chat session has ended prior to completion of an interaction between the agent and the user includes determining that there has been no activity through the live chat system for at least a predetermined period of time. 命令を格納する非一時コンピュータ可読媒体であって、前記命令が1つまたは複数のコンピューティングデバイスによって実行されると、前記1つまたは複数のコンピューティングデバイスに、以下の、
ユーザのクライアントデバイスから、入力を受信することと、
前記入力を用いて検索結果を取得することと、
通信サーバによってデータベースに記憶された複数のウェブリソースのエントリに基づき、サードパーティコンテンツプロバイダによって提供され、前記検索結果において特定されるウェブリソースが、前記サードパーティコンテンツプロバイダによって提供されるライブチャットシステムへの接続を開始するユーザインターフェース要素を含むことを検出することと、
前記検索結果が、前記ウェブリソースの第1の要求を前記ユーザに要することなく前記ユーザに送信されるときに、前記クライアントデバイスを通して前記ユーザに、前記サードパーティコンテンツプロバイダによって提供された前記ライブチャットシステムを用いてチャットセッションを開始するオプションを提供することと、
前記クライアントデバイスから、前記ユーザが前記ユーザインターフェース要素との対話を通して前記チャットセッションの開始を要求したことの確認を受信することと、
前記ユーザを前記サードパーティコンテンツプロバイダによって提供された前記ウェブリソースにリダイレクトすることなく、前記確認の受信に基づいて、前記ユーザと前記サードパーティコンテンツプロバイダのエージェントとの間のチャットセッションを開始することと、を含む動作を実行させる、
非一時コンピュータ可読媒体。
1. A non-transitory computer-readable medium storing instructions that, when executed by one or more computing devices, cause the one or more computing devices to:
receiving input from a user's client device;
obtaining a search result using the input; and
Detecting, based on entries of a plurality of web resources stored in a database by a communication server, that a web resource provided by a third-party content provider and identified in the search results includes a user interface element that initiates a connection to a live chat system provided by the third-party content provider;
providing the user, via the client device, with an option to initiate a chat session with the live chat system provided by the third-party content provider when the search results are transmitted to the user without requiring the user to make a first request for the web resource;
receiving, from the client device, a confirmation that the user has requested initiation of the chat session through interaction with the user interface element;
initiating a chat session between the user and an agent of the third-party content provider based on receipt of the confirmation without redirecting the user to the web resource provided by the third- party content provider.
Non-transitory computer-readable medium.
チャットセッションを開始するオプションを提供することが、前記ユーザを、前記サードパーティコンテンツプロバイダからより多くの情報を前記ユーザに提供することができるエージェントに接続または前記エージェントとチャットするように招待する問い合わせを提供することを含み、
前記ユーザが前記チャットセッションの開始を要求したことの確認を受信することが、前記問い合わせに対する応答を受信することを含む、請求項11に記載の非一時コンピュータ可読媒体。
Providing an option to initiate a chat session may connect the user to an agent who may provide the user with more information from the third party content provider or make an inquiry inviting the user to chat with the agent. including providing
12. The non-transitory computer-readable medium of claim 11, wherein receiving confirmation that the user requested to initiate the chat session includes receiving a response to the inquiry.
前記チャットセッションを開始することが、前記エージェントとのインターネットプロトコル音声電話呼び出しを開始することを含む、請求項11に記載の非一時コンピュータ可読媒体。 12. The non-transitory computer-readable medium of claim 11, wherein initiating the chat session comprises initiating an Internet Protocol voice telephone call with the agent. 前記動作が、
前記チャットセッションの間、前記ユーザと前記エージェントとの間の通信のログを記録することを含む、前記チャットセッションの状態を維持することと、
前記チャットセッションが前記エージェントと前記ユーザとの間の対話の完了の前に終了したことを決定することと、
前記サードパーティコンテンツプロバイダの後続のエージェントとの後続のチャットセッションを開始することと、
前記後続のエージェントに、前記ユーザと前記エージェントとの間のログを記録された通信の少なくとも一部を含む前記チャットセッションの状態を提供することと、を含む、請求項11に記載の非一時コンピュータ可読媒体。
The operation is
maintaining a state of the chat session, including logging communications between the user and the agent during the chat session;
determining that the chat session ended prior to completion of interaction between the agent and the user;
initiating a subsequent chat session with a subsequent agent of the third party content provider;
and providing the subsequent agent with a state of the chat session including at least a portion of logged communications between the user and the agent. readable medium.
前記チャットセッションが前記エージェントと前記ユーザとの間の対話の完了の前に終了したことを決定することが、少なくとも所定の期間の間、前記ライブチャットシステムを通してアクティビティがないと決定することを含む、請求項14に記載の非一時コンピュータ可読媒体。 determining that the chat session ended prior to completion of interaction between the agent and the user includes determining that there is no activity through the live chat system for at least a predetermined period of time; 15. The non-transitory computer readable medium of claim 14.
JP2022128163A 2017-06-13 2022-08-10 Improved interaction with electronic chat interfaces Active JP7459185B2 (en)

Priority Applications (1)

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

Applications Claiming Priority (4)

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
JP2022128163A JP7459185B2 (en) 2017-06-13 2022-08-10 Improved interaction with electronic chat interfaces

Related Parent Applications (1)

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

Publications (2)

Publication Number Publication Date
JP2022166160A JP2022166160A (en) 2022-11-01
JP7459185B2 true JP7459185B2 (en) 2024-04-01

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 (2)

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

Country Status (5)

Country Link
EP (1) EP3559825A1 (en)
JP (3) JP6855584B2 (en)
KR (2) KR102291621B1 (en)
CN (2) CN117131255A (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 (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090077176A1 (en) 2007-09-18 2009-03-19 Zon-Yin Shae Method, Apparatus and Computer Program Product Implementing a Chat Application Proxy and a Chat Application Wrapper in a Chat System
US20130311339A1 (en) 2012-05-17 2013-11-21 Leo Jeremias Chat enabled online marketplace systems and methods
JP2016100018A (en) 2014-11-26 2016-05-30 Line株式会社 Communication method, content display method, recording medium, and computer program

Family Cites Families (18)

* 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
JP4902417B2 (en) * 2007-04-27 2012-03-21 楽天株式会社 Message transmission / reception system, server device, terminal device, server processing program, terminal processing program, and information providing method
US8805844B2 (en) * 2008-08-04 2014-08-12 Liveperson, Inc. Expert search
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
US9300621B2 (en) 2012-02-05 2016-03-29 Apple Inc. Communication history aggregation and presentation
US20130275862A1 (en) * 2012-04-16 2013-10-17 Hosni I. Adra System and Method for Providing a Product-Based Chat Session
US20150235289A1 (en) * 2012-05-17 2015-08-20 Leo Jeremias Computer system and methods for chat enabled online search
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
CN104317796A (en) * 2014-08-29 2015-01-28 北京奇虎科技有限公司 Multi-user interaction method, multi-user interaction server and multi-user interaction system based on searching
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 (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090077176A1 (en) 2007-09-18 2009-03-19 Zon-Yin Shae Method, Apparatus and Computer Program Product Implementing a Chat Application Proxy and a Chat Application Wrapper in a Chat System
US20130311339A1 (en) 2012-05-17 2013-11-21 Leo Jeremias Chat enabled online marketplace systems and methods
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
CN117131255A (en) 2023-11-28
CN110268400B (en) 2023-08-15
CN110268400A (en) 2019-09-20
KR102390939B1 (en) 2022-04-26
JP2020518039A (en) 2020-06-18
KR20190099072A (en) 2019-08-23
KR102291621B1 (en) 2021-08-19
JP2021099862A (en) 2021-07-01
JP6855584B2 (en) 2021-04-07
JP7124151B2 (en) 2022-08-23
JP2022166160A (en) 2022-11-01
WO2018231208A1 (en) 2018-12-20
KR20210102503A (en) 2021-08-19
EP3559825A1 (en) 2019-10-30

Similar Documents

Publication Publication Date Title
JP7459185B2 (en) Improved interaction with electronic chat interfaces
US11777877B2 (en) Authentication of service requests initiated from a social networking site
US11928482B2 (en) Interaction with electronic chat interfaces
JP7286728B2 (en) dynamic code management
US20190182383A1 (en) Transfer of customer support to automated processing
US10389880B1 (en) Short message service (SMS) response and interpretation application
CN106462418B (en) Remote invocation of mobile device actions
US20190087707A1 (en) Artificial conversational entity methods and systems
CN111492383A (en) Automated communication using intent classifiers
EP3734914A1 (en) Authentication of service requests
US9503410B2 (en) Sharing of activity metadata via messaging systems
US20220159046A1 (en) Automated agent for a web communication feature
CN113474768B (en) Intent-driven contact center
JP2017072976A (en) Information processing system, information processing method, and program
US20240187358A1 (en) Intelligent Assistant Content Generation
JP2009187163A (en) Questioning and responding apparatus
KR20150106565A (en) Messenger service system, from the system via an instent message presence service method and apparatus
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
JP2019139789A (en) Operator terminal, information processing method and program

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220826

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220826

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230828

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231127

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240319

R150 Certificate of patent or registration of utility model

Ref document number: 7459185

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150