(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-10-19
(54)【発明の名称】対話勧誘を管理するためのシステムおよび方法
(51)【国際特許分類】
G06F 16/90 20190101AFI20221012BHJP
H04L 65/40 20220101ALI20221012BHJP
H04M 11/00 20060101ALI20221012BHJP
【FI】
G06F16/90 100
H04L65/40
H04M11/00 302
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2022508867
(86)(22)【出願日】2020-08-13
(85)【翻訳文提出日】2022-03-04
(86)【国際出願番号】 US2020046236
(87)【国際公開番号】W WO2021030626
(87)【国際公開日】2021-02-18
(32)【優先日】2019-08-14
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】511094772
【氏名又は名称】ライブパーソン, インコーポレイテッド
(74)【代理人】
【識別番号】100108855
【氏名又は名称】蔵田 昌俊
(74)【代理人】
【識別番号】100179062
【氏名又は名称】井上 正
(74)【代理人】
【識別番号】100199565
【氏名又は名称】飯野 茂
(74)【代理人】
【識別番号】100212705
【氏名又は名称】矢頭 尚之
(74)【代理人】
【識別番号】100219542
【氏名又は名称】大宅 郁治
(74)【代理人】
【識別番号】100153051
【氏名又は名称】河野 直樹
(74)【代理人】
【識別番号】100162570
【氏名又は名称】金子 早苗
(72)【発明者】
【氏名】ミルマン、バディム
(72)【発明者】
【氏名】ケラー、イタマー
(72)【発明者】
【氏名】ヘンデル、シャチャー
(72)【発明者】
【氏名】ベン-デイビッド、トマー
(72)【発明者】
【氏名】ザー-カボド、アミハイ
(72)【発明者】
【氏名】ルカッチ、ヤリブ
(72)【発明者】
【氏名】グルエンドリンガー、レオール
(72)【発明者】
【氏名】ロン、オファー
(72)【発明者】
【氏名】ラハブ、シュロモ
【テーマコード(参考)】
5B175
5K201
【Fターム(参考)】
5B175AA02
5B175EA01
5K201CB06
5K201CB16
5K201DA01
5K201DC04
5K201EC01
5K201EC06
(57)【要約】
本開示は、一般に、通信のルーティングを促進することに関する。一例は、通信サーバが、端末デバイスに関連付けられたエージェントの作業負荷に基づいて、端末デバイスに関連付けられたキャパシティを決定することを含む。1つまたは複数の基準に関連付けられたユーザデバイスへの過去の対話勧誘の履歴受付けデータがアクセスされる。次いで、利用可能な対話を決定するために、および履歴データと、利用可能な対話の現在の数とに基づいて対話勧誘を使用して対話を促進するために、現在のデータが使用される。
【特許請求の範囲】
【請求項1】
コンピュータ実装方法であって、
複数の端末デバイスに関連するキャパシティを決定することと、ここにおいて、前記キャパシティが、前記複数の端末デバイスに関連付けられたエージェントの作業負荷に基づく、
1つまたは複数の基準に関連付けられたユーザデバイスへの過去の対話勧誘の履歴受付けデータにアクセスすることと、
ネットワーク中の現在のユーザデバイスの現在のデータにアクセスすることと、ここにおいて、前記現在のデータが、前記現在のユーザデバイスと前記1つまたは複数の基準との間の関連付けを含む、
前記履歴受付けデータと前記現在のユーザデバイスの前記現在のデータとに基づいて、利用可能な対話の現在の数を決定することと、
利用可能な対話の前記現在の数と前記履歴受付けデータとに従って生成された予測対話勧誘を使用して、前記エージェントと、前記現在のユーザデバイスのうちの1つまたは複数のデバイスとの間の対話を促進することと
を備える、方法。
【請求項2】
前記現在のデータが、ターゲットにされた対話勧誘を受信するために利用可能な前記ネットワーク中の前記現在のユーザデバイスのための前記ネットワークを介して収集されるリアルタイムデータを含む、請求項1に記載の方法。
【請求項3】
利用可能な対話の前記現在の数を決定することが、
前記1つまたは複数の基準を含む前記履歴受付けデータを使用してトレーニングされた機械学習システムに、前記エージェントの前記キャパシティと、前記現在のユーザデバイスの前記現在のデータとを提供することと、
前記機械学習システムから、利用可能な対話の前記現在の数の値を受信することと
を含む、請求項1に記載の方法。
【請求項4】
前記機械学習システムが、
前記履歴受付けデータを使用して、利用可能な対話の前記現在の数の前記値を決定するようにトレーニングされた第1のニューラルネットワークと、
前記履歴受付けデータを使用して、前記現在のユーザデバイスのうちの各デバイスの受付けの尤度を決定するようにトレーニングされた第2のニューラルネットワークと
を含む、請求項3に記載の方法。
【請求項5】
前記エージェントと前記1つまたは複数のデバイスとの間の前記対話を促進することは、
利用可能な対話の前記現在の数が前記現在のユーザデバイスの数よりも小さいと決定することと、
利用可能な対話の前記現在の数に一致する前記現在のユーザデバイスのサブセットを識別するために前記現在のユーザデバイスを分析することと、
前記現在のユーザデバイスの前記サブセットのうちの各現在のユーザデバイスに、ターゲットにされた対話勧誘を通信することと
を含む、請求項1に記載の方法。
【請求項6】
前記現在のユーザデバイスの前記サブセットを識別するために前記現在のユーザデバイスを分析することが、前記ターゲットにされた対話勧誘の受付けの尤度に基づいて前記現在のユーザデバイスのうちの各デバイスに優先度を付けるために、前記過去の対話勧誘の前記履歴受付けデータと、前記現在のユーザデバイスのための前記1つまたは複数の基準とを分析することを含む、請求項5に記載の方法。
【請求項7】
前記エージェントと前記1つまたは複数のデバイスとの間の前記対話の対話データを受信することと、
前記対話データと前記履歴受付けデータとを使用して、更新された履歴受付けデータを生成することと、
前記ネットワーク中の前記現在のユーザデバイスのための更新された現在のデータにアクセスすることと、
前記更新された履歴受付けデータと、前記現在のユーザデバイスのための前記更新された現在のデータとに基づいて、利用可能な対話勧誘の更新された現在の数を生成することと
をさらに備える、請求項1に記載の方法。
【請求項8】
システムであって、
1つまたは複数のデータプロセッサと、
命令を含んでいる非一時的コンピュータ可読記憶媒体とを備え、前記命令は、前記1つまたは複数のデータプロセッサ上で実行されたとき、前記1つまたは複数のデータプロセッサに、
複数の端末デバイスに関連するキャパシティを決定することと、ここにおいて、前記キャパシティが、前記複数の端末デバイスに関連付けられたエージェントの作業負荷に基づく、
1つまたは複数の基準に関連付けられたユーザデバイスへの過去の対話勧誘の履歴受付けデータにアクセスすることと、
ネットワーク中の現在のユーザデバイスの現在のデータにアクセスすることと、ここにおいて、前記現在のデータが、前記現在のユーザデバイスと前記1つまたは複数の基準との間の関連付けを含む、
前記履歴受付けデータと前記現在のユーザデバイスの前記現在のデータとに基づいて、利用可能な対話の現在の数を決定することと、
利用可能な対話の前記現在の数と前記履歴受付けデータとに従って生成された予測対話勧誘を使用して、前記エージェントと、前記現在のユーザデバイスのうちの1つまたは複数のデバイスとの間の対話を促進することと
を含む動作を実施させる、システム。
【請求項9】
前記現在のデータが、ターゲットにされた対話勧誘を受信するために利用可能な前記ネットワーク中の前記現在のユーザデバイスのための前記ネットワークを介して収集されるリアルタイムデータを含む、請求項8に記載のシステム。
【請求項10】
利用可能な対話の前記現在の数を決定することが、
前記1つまたは複数の基準を含む前記履歴受付けデータを使用してトレーニングされた機械学習システムに、前記エージェントの前記キャパシティと、前記現在のユーザデバイスの前記現在のデータとを提供することと、
前記機械学習システムから、利用可能な対話の前記現在の数の値を受信することと
を含む、請求項8に記載のシステム。
【請求項11】
前記機械学習システムが、
前記履歴受付けデータを使用して、利用可能な対話の前記現在の数の前記値を決定するようにトレーニングされた第1のニューラルネットワークと、
前記履歴受付けデータを使用して、前記現在のユーザデバイスのうちの各デバイスの受付けの尤度を決定するようにトレーニングされた第2のニューラルネットワークと
を含む、請求項10に記載のシステム。
【請求項12】
前記エージェントと前記1つまたは複数のデバイスとの間の前記対話を促進することは、
利用可能な対話の前記現在の数が前記現在のユーザデバイスの数よりも小さいと決定することと、
利用可能な対話の前記現在の数に一致する前記現在のユーザデバイスのサブセットを識別するために前記現在のユーザデバイスを分析することと、
前記現在のユーザデバイスの前記サブセットのうちの各現在のユーザデバイスに、ターゲットにされた対話勧誘を通信することと
を含む、請求項8に記載のシステム。
【請求項13】
前記現在のユーザデバイスの前記サブセットを識別するために前記現在のユーザデバイスを分析することが、前記ターゲットにされた対話勧誘の受付けの尤度に基づいて前記現在のユーザデバイスのうちの各デバイスに優先度を付けるために、前記過去の対話勧誘の前記履歴受付けデータと、前記現在のユーザデバイスのための前記1つまたは複数の基準とを分析することを含む、請求項12に記載のシステム。
【請求項14】
前記エージェントと前記1つまたは複数のデバイスとの間の前記対話の対話データを受信することと、
前記対話データと前記履歴受付けデータとを使用して、更新された履歴受付けデータを生成することと、
前記ネットワーク中の前記現在のユーザデバイスのための更新された現在のデータにアクセスすることと、
前記更新された履歴受付けデータと、前記現在のユーザデバイスのための前記更新された現在のデータとに基づいて、利用可能な対話勧誘の更新された現在の数を生成することと
をさらに備える、請求項8に記載のシステム。
【請求項15】
非一時的機械可読記憶媒体中に有形に具備されたコンピュータプログラム製品であって、データ処理装置に、
複数の端末デバイスに関連するキャパシティを決定することと、ここにおいて、前記キャパシティが、前記複数の端末デバイスに関連付けられたエージェントの作業負荷に基づく、
1つまたは複数の基準に関連付けられたユーザデバイスへの過去の対話勧誘の履歴受付けデータにアクセスすることと、
ネットワーク中の現在のユーザデバイスの現在のデータにアクセスすることと、ここにおいて、前記現在のデータが、前記現在のユーザデバイスと前記1つまたは複数の基準との間の関連付けを含む、
前記履歴受付けデータと前記現在のユーザデバイスの前記現在のデータとに基づいて、利用可能な対話の現在の数を決定することと、
利用可能な対話の前記現在の数と前記履歴受付けデータとに従って生成された予測対話勧誘を使用して、前記エージェントと、前記現在のユーザデバイスのうちの1つまたは複数のデバイスとの間の対話を促進することと
を含む動作を実施させるように構成された命令を含む、コンピュータプログラム製品。
【請求項16】
前記現在のデータが、ターゲットにされた対話勧誘を受信するために利用可能な前記ネットワーク中の前記現在のユーザデバイスのための前記ネットワークを介して収集されるリアルタイムデータを含む、請求項15に記載のコンピュータプログラム製品。
【請求項17】
利用可能な対話の前記現在の数を決定することが、
前記1つまたは複数の基準を含む前記履歴受付けデータを使用してトレーニングされた機械学習システムに、前記エージェントの前記キャパシティと、前記現在のユーザデバイスの前記現在のデータとを提供することと、
前記機械学習システムから、利用可能な対話の前記現在の数の値を受信することと
を含む、請求項15に記載のコンピュータプログラム製品。
【請求項18】
前記機械学習システムが、
前記履歴受付けデータを使用して、利用可能な対話の前記現在の数の前記値を決定するようにトレーニングされた第1のニューラルネットワークと、
前記履歴受付けデータを使用して、前記現在のユーザデバイスのうちの各デバイスの受付けの尤度を決定するようにトレーニングされた第2のニューラルネットワークと
を含む、請求項17に記載のコンピュータプログラム製品。
【請求項19】
前記エージェントと前記1つまたは複数のデバイスとの間の前記対話を促進することは、
利用可能な対話の前記現在の数が前記現在のユーザデバイスの数よりも小さいと決定することと、
利用可能な対話の前記現在の数に一致する前記現在のユーザデバイスのサブセットを識別するために前記現在のユーザデバイスを分析することと、
前記現在のユーザデバイスの前記サブセットのうちの各現在のユーザデバイスに、ターゲットにされた対話勧誘を通信することと
を含み、
前記現在のユーザデバイスの前記サブセットを識別するために前記現在のユーザデバイスを分析することが、前記ターゲットにされた対話勧誘の受付けの尤度に基づいて前記現在のユーザデバイスのうちの各デバイスに優先度を付けるために、前記過去の対話勧誘の前記履歴受付けデータと、前記現在のユーザデバイスのための前記1つまたは複数の基準とを分析することを含む、
請求項15に記載のコンピュータプログラム製品。
【請求項20】
前記エージェントと前記1つまたは複数のデバイスとの間の前記対話の対話データを受信することと、
前記対話データと前記履歴受付けデータとを使用して、更新された履歴受付けデータを生成することと、
前記ネットワーク中の前記現在のユーザデバイスのための更新された現在のデータにアクセスすることと、
前記更新された履歴受付けデータと、前記現在のユーザデバイスのための前記更新された現在のデータとに基づいて、利用可能な対話勧誘の更新された現在の数を生成することと
をさらに備える、請求項15に記載のコンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
[0001]本出願は、それの全体が参照により、およびすべての目的のために本明細書に組み込まれる、2019年8月14日に出願された「SYSTEMS AND METHODS FOR MANAGING INTERACTION INVITATIONS」と題する米国仮出願第62,886,647号の利益を主張する。
【0002】
[0001]本開示は、一般に、通信のルーティングを促進することに関する。より詳細には、人工知能(AI)と機械学習技法とを使用してエージェントと対話するように勧誘されたユーザに関与する勧誘および受付けなど、対話勧誘を自動的に開始するための、および勧誘受付けを動的にルーティングするための技法が提供される。
【発明の概要】
【0003】
[0002]通信システムにおいて対話勧誘を自動的に管理するための、本明細書で説明される実施形態関係のシステムおよび方法。いくつかの実施形態では、通信システムの要素は、コンピュータ実装予測勧誘またはダイヤリングシステムと見なされ得る。様々な実施形態は、システム中の端末(たとえばエージェント)デバイスキャパシティを、システムに接続されたユーザデバイスを用いてシステムによってプロアクティブに開始され得る起こり得る対話に一致させるために、通信からの履歴情報を使用することができる。いくつかの例では、これは、ユーザデバイスに関連付けられたユーザに関する補足情報、ならびにキャパシティを有する端末デバイスに関連付けられたエージェントをも伴う可能性がある。そのような通信システムでは、(たとえば、システムが勧誘とともにユーザデバイスに接触し、次いで、ユーザが勧誘を受け付けた後に、ユーザにエージェントを待たせる否定的なエクスペリエンスなどの)否定的なユーザエクスペリエンスを回避しながら、端末デバイスのキャパシティ利用を増加させるために、機械学習分析が使用され得る。本明細書で説明される勧誘対話管理は、システム効率および利用を改善しながらそのような否定的な結果を回避するために、機械学習を使用することができる。
【0004】
[0003]例示的な一実施形態は、通信サーバが、端末デバイスに関連付けられたエージェントの作業負荷に基づいて、端末デバイスに関連付けられたキャパシティを決定することを含む。1つまたは複数の基準に関連付けられたユーザデバイスへの過去の対話勧誘の履歴受付けデータがアクセスされる。次いで、利用可能な対話を決定するために、および履歴データと、利用可能な対話の現在の数とに基づいて対話勧誘を使用して対話を促進するために、現在のデータが使用される。
【0005】
[0004]実施形態という用語および同様の用語は、本開示の主題と以下の特許請求の範囲とのすべてを広く指すことを意図されている。これらの用語を含んでいる記述は、本明細書で説明される主題を限定しないと、または以下の特許請求の範囲の意味もしくは範囲を限定しないと理解されたい。本明細書で包含される本開示の実施形態は、この概要ではなく、以下の特許請求の範囲によって定義される。この概要は、本開示の様々な態様の高レベルの概観であり、以下の発明を実施するための形態のセクションにおいてさらに説明される概念のいくつかを紹介する。この概要は、特許請求される主題の重要な特徴または必須の特徴を識別するようには意図されておらず、特許請求される主題の範囲を決定するために別個に使用されるようにも意図されていない。主題は、本開示の明細書全体と、いずれかまたはすべての図面と、各請求項との適切な部分を参照することによって理解されたい。
【0006】
[0005]本開示のいくつかの実施形態は、コンピュータ実装方法を含む。本方法は、複数の端末デバイスに関連付けられたキャパシティを決定することを含み得る。本方法は、利用可能な対話勧誘の数を決定することをさらに含み得る。利用可能な対話勧誘の数は、複数の端末デバイスに関連付けられたキャパシティを使用して決定され得る。本方法は、利用可能な対話勧誘を送信することをさらに備える。本方法は、受付けデータを受信することをさらに備える。受付けデータは、1つまたは複数のネットワークデバイスによる利用可能な対話勧誘の1つまたは複数の受付けに対応し得る。1つまたは複数のネットワークデバイスは、基準に関連付けられ得る。本方法は、統計データを決定するために受付けデータを使用することをさらに備える。統計データは、基準に関連付けられた追加のネットワークデバイスが、利用可能な対話勧誘を受け付けるという尤度に関連付けられる。本方法は、1つまたは複数の追加のネットワークデバイスを決定することをさらに備える。決定することは、統計データを使用することを含む。1つまたは複数の追加のネットワークデバイスは、基準に関連付けられる。本方法は、1つまたは複数の追加のネットワークデバイスへの送信のために利用可能な、利用可能な対話勧誘の数を更新することをさらに備える。利用可能な対話勧誘の数は、受付けデータに従って更新される。
【0007】
[0006]本開示のいくつかの実施形態は、システムを含む。システムは、1つまたは複数のデータプロセッサと、命令を含んでいる非一時的コンピュータ可読記憶媒体とを含み得、命令は、1つまたは複数のデータプロセッサ上で実行されたとき、1つまたは複数のデータプロセッサに、上記および本明細書で説明される方法を実施させる。
【0008】
[0007]本開示のいくつかの実施形態は、データ処理装置に、上記および本明細書で説明される方法を実施させるように構成された命令を含む、非一時的機械可読記憶媒体中に有形に具備されたコンピュータプログラム製品を含む。
【0009】
[0008]本開示について、添付の図と併せて説明される。
【図面の簡単な説明】
【0010】
【
図1】[0009]ネットワーク対話システムの一実施形態のブロック図。
【
図2】[0010]ネットワーク対話システムの別の実施形態のブロック図。
【
図3A】[0011]接続管理システムを含むネットワーク対話システムの他の実施形態のブロック図。
【
図3B】接続管理システムを含むネットワーク対話システムの他の実施形態のブロック図。
【
図3C】接続管理システムを含むネットワーク対話システムの他の実施形態のブロック図。
【
図4】[0012]接続構成要素の動作のプロトコルスタックマッピングの表現。
【
図5】[0013]一実施形態によるマルチデバイス通信交換システムを表す図。
【
図6】[0014]接続管理システムの一実施形態のブロック図。
【
図7】[0015]いくつかの実施形態による対話勧誘を管理するためのシステムのブロック図。
【
図8】[0016]いくつかの実施形態による通信サーバのブロック図。
【
図9】[0017]次いで、いくつかの例による例示的な機械学習エンジンを表すブロック図。
【
図10】[0018]いくつかの実施形態による対話勧誘を管理するための方法のフローチャート。
【
図11】[0019]対話勧誘を管理するための例示的なプロセスを示す図。
【
図12】[0020]いくつかの実施形態による対話勧誘を管理するための方法のフローチャート。
【
図13】[0021]本明細書で説明される例によるシステムの様々な構成要素を実装するために使用され得る例示的なコンピューティングデバイスを示す図。
【発明を実施するための形態】
【0011】
[0022]添付の図では、同様の構成要素および/または特徴は、同じ参照ラベルを有し得る。さらに、同じタイプの様々な構成要素は、参照ラベルの後に、ダッシュと、同様の構成要素を区別する第2のラベルとを続けることによって区別され得る。本明細書において第1の参照ラベルのみが使用される場合、説明は、第2の参照ラベルにかかわらず、同じ第1の参照ラベルを有する同様の構成要素のどの1つにも適用可能である。
【0012】
[0023]本明細書で説明される例は、一般に、端末デバイスとユーザデバイスとの間の対話を促進すること、ならびにユーザが通信システムからの対話勧誘を受け付けたとき、端末デバイスとユーザデバイスとの一致の間の通信のルーティングを促進することに関する。より詳細には、人工知能(AI)と機械学習技法とを使用してエージェントと対話するための勧誘など、勧誘を自動的に開始し、次いで、勧誘受付けを動的にルーティングするための技法が提供される。
【0013】
[0024]ネットワーク(たとえば、インターネット)に接続されたユーザと企業は、対話するための多種多様な理由を有することが可能である。これらの理由は、前に購入された製品について顧客サービスを提供すること、または会議をスケジュールすることなど、前に開始された関係に基づく対話、ならびに製品またはサービスの潜在的な販売に関係する質問に答えることなど、最初の接触対話を含むことができる。このコンテキストにおいて、ネットワーク上の通信システムは、ユーザ(たとえば、企業の顧客または潜在的な顧客)と、通信システムのクライアント(たとえば、ユーザとの対話を改善することを試みている企業)との間の接続を促進するように動作することができる。
【0014】
[0025]そのような通信システムは、それぞれのデバイスを介してユーザと対話するようにエージェントを利用可能にし得る。エージェント用の端末デバイスは、エージェントに過度の負担をかけることを回避するようにエージェントのキャパシティを管理することができ、ユーザデバイスは、ユーザがエージェントと対話することを可能にすることができる。いくつかの状況では、ユーザデバイスによるネットワークアクティビティは、通信システムが、ユーザデバイスがネットワークに接続され、エージェントとの対話のために利用可能であり得る、と決定することを可能にすることができる。そのような状況は、オンラインストアをブラウズしているユーザデバイス、ユーザデバイスが、行われなかった対話を以前に要求した後に、通信システムに通知している、ユーザデバイス上で動作しているアプリケーション、またはネットワーク上の他のそのようなユーザデバイスアクティビティを含むことができる。いくつかのそのような状況では、通信ネットワークは、利用可能なエージェントの現在のキャパシティによって扱われ得るよりも多くのデバイスが、起こり得る対話のために利用可能であると決定することができる。すべてのそのようなユーザデバイスに勧誘を送り、次いで、システムが勧誘を送った後に、ユーザデバイスにエージェントを待つように要求するか、あるいは単にエージェントへの接続を提供することが可能でないことは、クライアント(たとえば通信システムを使用する企業)にとって著しく否定的な結果の潜在性を有する。否定的な結果は、ユーザ関係にダメージを与えること、またはユーザを競合者へ駆り立てることを含み得る。一方、対話を開始することに失敗することは、同様に、肯定的な対話と、対話を介して関係を改善する機会とを逃すリスクがある。
【0015】
[0026]本明細書で説明される例は、予想される対話受付け応答の数を通信システムのキャパシティに一致させるために、エージェントキャパシティ、ネットワーク中に存在するユーザデバイス、および履歴受付けレートデータに関する情報を使用することができる。たとえば、単純な実施形態では、通信システムは、40個のユーザデバイスがウェブサイトを現在ブラウズしているが、エージェント端末デバイスが、10個のユーザデバイスとの対話を扱うキャパシティのみを有する、という情報を受信する。対話勧誘が時間の50%受け付けられることを示す履歴受付けレートデータが、20個の対話勧誘を送るためにシステムによって使用され得る。ある時間期間の後に、通信システムは、端末デバイスキャパシティと、対話を提供されなかった残りのユーザデバイスとを動的に再評価し、エージェントキャパシティが利用可能である場合、同様のモデルに従って追加の対話勧誘を自動的に送ることができる。
【0016】
[0027]様々な例では、システムデータおよびパラメータに基づいて勧誘のためにユーザに優先度を付けること、システムパラメータに基づいてユーザ受付けを特定の端末デバイスに動的に一致させること、または他のそのような自動化など、追加のシステム機械知能が使用され得る。本明細書で説明される例は、通信システムを介したユーザ対話とネットワーク使用とに関連する性能しきい値を維持しながら、通信システム中の端末デバイスとエージェントとのキャパシティ利用を改善することができる。
【0017】
[0028]以下の説明は、実施形態の例を提供しており、本開示の範囲、適用可能性または構成を限定することを意図されていない。そうではなく、実施形態の例の以下の説明は、特許請求の範囲に反映されているように、本明細書で説明される実施形態の例を実装するための有効な説明を当業者に提供する。添付の特許請求の範囲に記載された趣旨と範囲とから逸脱することなく、様々な変更が、要素の機能と配置とにおいて行われ得ることを理解されたい。
【0018】
[0029]
図1は、本明細書で説明されるいくつかの実施形態および特徴を実装およびサポートするネットワーク対話システム100の一実施形態のブロック図を示す。いくつかの実施形態は、(ユーザ110によって動作され得る)ネットワークデバイス105と、(エージェント120によって動作され得る)端末デバイス115との間の接続チャネルを確立することに関する。いくつかの実施形態では、ネットワーク対話システム100は、クライアント125に関連付けられたクライアントデバイス130を含むことができる。
【0019】
[0030]いくつかの実施形態では、ユーザ110は、リモートサーバ140によって提供されるウェブサイトをブラウズしているかまたはオンラインサービスにアクセスしている個人であり得る。クライアント125は、ウェブサイトまたはオンラインサービスを提供するか、動作させるか、または実行するエンティティであるか、あるいは本明細書で説明されるようにクライアント125に利用可能なタスクを実施するためにそのようなエンティティによって採用されたかまたは割り当てられた個人であり得る。エージェント120は、ウェブサイトまたはオンラインサービスに関するサポートまたは情報をユーザ110に提供するというタスクを与えられたサポートエージェントなどの個人であり得る。多数のエージェントのうち、エージェントのサブセットが、特定のクライアント125にサポートまたは情報を提供するために適切であり得る。エージェント120は、クライアント125と提携することも、提携しないこともある。各エージェントは、1つまたは複数のクライアント125に関連付けられ得る。いくつかの非限定的な例では、ユーザ110は、パーソナルコンピューティングデバイスからオンラインストアで買物をしている個人であり得、クライアント125は、製品をオンラインで販売する会社であり得、エージェント120は、会社によって採用された担当者であり得る。様々な実施形態では、ユーザ110、クライアント125、およびエージェント120は、他の個人またはエンティティであり得る。
【0020】
[0031]
図1は単一のネットワークデバイス105、端末デバイス115、およびクライアントデバイス130のみを示しているが、対話システム100は、これらのタイプのデバイスのうちの1つまたは複数の各々について、複数または多数(たとえば、数十、数百または数千)を含むことができる。同様に、
図1は単一のユーザ110、エージェント120およびクライアント125のみを示しているが、対話システム100は、そのようなエンティティのうちの1つまたは複数の各々について、複数または多数を含むことができる。したがって、所与のネットワークデバイスと通信するためにどの端末デバイスが選択されるべきかを決定することが必要であり得る。事態をさらに複雑にすると、リモートサーバ140は、ネットワークデバイス通信を受信し、応答して選択するように構成されてもよい。
【0021】
[0032]接続管理システム150は、通信の戦略的ルーティングを促進することができる。通信は、(たとえば、タイプされたまたは話された入力など、エンティティからの入力に基づいて定義された)コンテンツをもつメッセージを含むことができる。通信はまた、送信デバイスに関するデータ(たとえば、IPアドレス、アカウント識別子、デバイスタイプおよび/またはオペレーティングシステム)、宛先アドレス、クライアントの識別子、ウェブページもしくはウェブページ要素(たとえば、通信が生成されたかもしくは他の方法で通信に関連付けられたときに訪問されるウェブページまたはウェブページ要素)またはオンライン履歴データの識別子、時間(たとえば、時刻および/または日付)、ならびに/あるいは宛先アドレスなど、追加のデータを含むことができる。他の情報が通信に含まれ得る。いくつかの事例では、接続管理システム150は、通信全体を別のデバイスにルーティングする。いくつかの事例では、接続管理システム150は、(たとえば、初期通信に基づいて)通信を修正するかまたは新しい通信を生成する。新しいまたは修正された通信は、メッセージ(またはそれの処理されたバージョン)、(たとえば、送信デバイス、ウェブページまたはオンライン履歴および/もしくは時間に関する)追加のデータの少なくとも一部(またはすべて)、ならびに/あるいは接続管理システム150によって識別された他のデータ(たとえば、特定のアカウント識別子またはデバイスに関連するアカウントデータ)を含むことができる。新しいまたは修正された通信は、同様に他の情報を含むことができる。
【0022】
[0033]戦略的ルーティング促進の一部は、ネットワークデバイス105と1つまたは複数の端末デバイス115との間の1つまたは複数の接続チャネルを確立、更新および使用することを含むことができる。たとえば、ネットワークデバイス105から通信を受信すると、接続管理システム150は、通信が(もしあれば)どのクライアントに対応するかを最初に推定することができる。クライアントを識別すると、接続管理システム150は、ネットワークデバイス105との通信のためにクライアントに関連付けられた端末デバイス115を識別することができる。いくつかの事例では、識別は、複数のエージェント(またはエキスパートまたはデレゲート)の各々のプロファイルを評価することを含むことができ、複数のエージェント中の各エージェント(たとえば、エージェント120)は、端末デバイス(たとえば、端末デバイス115)に関連付けられる。評価は、ネットワークデバイスメッセージ中のコンテンツに関係することができる。端末デバイス115の識別は、たとえば、すべての目的のためにそれの全体が参照により本明細書に組み込まれる、2010年3月17日に出願された米国出願第12/725,799号に記載の技法を含むことができる。
【0023】
[0034]いくつかの事例では、接続管理システム150は、何らかの接続チャネルが、ネットワークデバイス105と、クライアント(またはリモートサーバ140)に関連付けられた端末デバイスとの間に確立されるかどうかと、そうである場合、そのようなチャネルが、その通信を含む一連の通信を交換するために使用されるべきかどうかとを決定することができる。
【0024】
[0035]ネットワークデバイス105と通信するための端末デバイス115を選択すると、接続管理システム150は、ネットワークデバイス105と端末デバイス115との間の接続チャネルを確立することができる。いくつかの事例では、接続管理システム150は、選択された端末デバイス115にメッセージを送信することができる。メッセージは、ネットワークデバイス105と通信するための提案される割当ての受付けを要求するか、またはそのような割当てが生成されたことを識別し得る。メッセージは、ネットワークデバイス105に関する情報(たとえば、IPアドレス、デバイスタイプ、および/またはオペレーティングシステム)、関連するユーザ110に関する情報(たとえば、話される言語、クライアントと対話した持続時間、技能レベル、センチメント、および/またはトピック選好)、受信された通信、ネットワークデバイス105への通信を生成し送信するためのコード(たとえば、クリック可能なハイパーリンク)、ならびに/あるいはネットワークデバイス105への通信を生成し送信するための命令を含むことができる。
【0025】
[0036]一事例では、ネットワークデバイス105と端末デバイス115との間の通信は、接続管理システム150を通してルーティングされ得る。そのような構成は、接続管理システム150が、通信交換を監視し、デバイスまたは延長レイテンシのいずれかの非応答性などの(たとえば、ルールに基づいて定義された)問題を検出することを可能にすることができる。さらに、そのような構成は、たとえば、特定の通信後のターゲットを促進するために、通信交換の品質を査定し、および/またはルーティングルールを更新もしくは生成するための学習をサポートするために、後で使用され得る、通信の選択的なまたは完全な記憶を促進することができる。
【0026】
[0037]いくつかの実施形態では、接続管理システム150は、通信交換をリアルタイムで監視し、ライブ通信に基づいて自動的アクション(たとえば、ルールベースのアクション)を実施することができる。たとえば、接続管理システム150が、通信が特定のアイテム(たとえば、製品)に関すると決定したとき、接続管理システム150は、アイテムに関する追加の情報(たとえば、入手可能なアイテムの量、アイテムに関係するドキュメントをサポートするためのリンク、またはアイテムもしくは同様のアイテムに関する他の情報)を含んでいる追加のメッセージを端末デバイス115に自動的に送信することができる。
【0027】
[0038]一事例では、指定された端末デバイス115は、接続管理システム150を通して通信を中継することなしにネットワークデバイス105と通信することができる。一方または両方のデバイス105、115は、通信監視および/またはデータ記憶を促進するために、特定の通信メトリックまたはコンテンツを接続管理システム150に報告することがある(または報告しないことがある)。
【0028】
[0039]上述のように、接続管理システム150は、リモートサーバ140への通信をルーティング選択し得る。リモートサーバ140は、所定の様式で情報を提供するように構成され得る。たとえば、リモートサーバ140は、通信に応答して送信するために、定義された1つまたは複数のテキストパッセージ、音声記録および/またはファイルにアクセスし得る。リモートサーバ140は、たとえば、受信された通信の分析(たとえば、セマンティックまたはマッピング分析)に基づいて、特定のテキストパッセージ、記録またはファイルを選択し得る。
【0029】
[0040]接続管理システム150において実施されるルーティングおよび/または他の決定もしくは処理は、少なくとも部分的に1つまたは複数のクライアントデバイス130によって定義または提供されたルールおよび/またはデータに基づいて実施され得る。たとえば、クライアントデバイス130は、エージェントの優先度付け、端末デバイスタイプ、および/またはトピック/技能一致を識別する通信を送信し得る。別の例として、クライアントデバイス130は、ルーティング決定に潜在的に影響を及ぼす様々な変数(たとえば、言語適合性、予測される応答時間、デバイスタイプおよび能力、ならびに/または端末デバイス負荷分散)に適用されるべき1つまたは複数の重みを識別し得る。どの端末デバイスおよび/またはエージェントがクライアントに関連付けられるべきかは、動的であり得ることを諒解されよう。クライアントデバイス130および/または端末デバイス115からの通信は、所与の端末デバイスおよび/またはエージェントが、クライアントに関連付けられたものとして追加または削除されるべきであることを示す情報を提供し得る。たとえば、クライアントデバイス130は、IPアドレスと、クライアントに関連付けられた端末デバイスを識別するリストからこのアドレスをもつ端末デバイスが追加または削除されるべきかどうかに関するインジケーションとを伴う通信を送信することができる。
【0030】
[0041](たとえば、デバイス間の、デバイスと接続管理システム150との間の、リモートサーバ140と接続管理システム150との間の、またはリモートサーバ140とデバイスとの間の)各通信は、1つまたは複数のネットワーク170を介して行われ得る。オープンまたはクローズドネットワークの任意の組合せが、1つまたは複数のネットワーク170に含まれ得る。好適なネットワークの例は、インターネット、パーソナルエリアネットワーク、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、またはワイヤレスローカルエリアネットワーク(WLAN)を含む。他のネットワークは、同様に好適であり得る。1つまたは複数のネットワーク170は、イントラネット、エクストラネット、またはそれらの組合せ内に完全に組み込まれ得るか、あるいはイントラネット、エクストラネット、またはそれらの組合せを含み得る。いくつかの事例では、1つまたは複数のネットワーク170中のネットワークは、Bluetooth(登録商標)またはBluetooth Low Energyチャネルなどの短距離通信チャネルを含む。一実施形態では、2つ以上のシステムおよび/またはデバイス間の通信は、セキュアソケットレイヤ(SSL)またはトランスポートレイヤセキュリティ(TLS)などのセキュア通信プロトコルによって達成され得る。加えて、データおよび/またはトランザクション詳細は、限定はされないが、データ暗号化規格(DES)、トリプルDES、リベスト-シャミア-エーデルマン暗号化(RSA)、ブローフィッシュ暗号化、高度暗号化規格(AES)、CAST-128、CAST-256、無相関化高速暗号(DFC)、タイニー暗号化アルゴリズム(TEA)、拡張TEA(XTEA)、補正ブロックTEA(XXTEA)、および/またはRC5など、任意の好都合な、既知の、または開発されるべき様式に基づいて暗号化され得る。
【0031】
[0042]ネットワークデバイス105、端末デバイス115および/またはクライアントデバイス130は、たとえば、ポータブル電子デバイス(たとえば、スマートフォン、タブレット、ラップトップコンピュータ、またはスマートウェアラブルデバイス)あるいは非ポータブル電子デバイス(たとえば、1つまたは複数のデスクトップコンピュータ、スマートアプライアンス、サーバ、および/またはプロセッサ)を含むことができる。接続管理システム150は、ネットワーク、端末およびクライアントデバイスとは別個に格納され得るか、あるいは(たとえば、デバイスへのアプリケーションのインストールを介して)1つまたは複数のそのようなデバイスの一部であり得る。リモートサーバ140は、各デバイスおよび接続管理システム150とは別個に格納され得、ならびに/あるいは別のデバイスまたはシステムの一部であり得る。
図1における各デバイス、サーバおよびシステムは単一のデバイスとして示されているが、代わりに複数のデバイスが使用され得ることが諒解されよう。たとえば、ネットワークデバイスのセットは、単一のユーザからの様々な通信を送信するために使用され得るか、またはリモートサーバ140は、サーバスタックを含み得る。
【0032】
[0043]ソフトウェアエージェントまたはアプリケーションは、図示されたデバイス、システムまたはサーバにインストールされ、および/またはそれらの上で実行可能であり得る。一事例では、ソフトウェアエージェントまたはアプリケーションは、様々な図示された要素が相補的様式で働くことができるように構成される。たとえば、デバイス上のソフトウェアエージェントは、デバイス使用に関するデータを収集し、別個の接続管理システムに送信するように構成され得、この別個の接続管理システム上のソフトウェアアプリケーションは、このデータを受信し、処理するように構成され得る。
【0033】
[0044]
図2は、ネットワーク対話システム200の別の実施形態のブロック図を示す。概して、
図2は、ネットワークデバイス205が1つまたは複数の端末デバイス215と通信することを可能にするように構成および配置された様々な構成要素を示している。図示された事例は、3つのローカルエリアネットワーク235中に含まれる9つの端末デバイス215を含む。
【0034】
[0045]いくつかの事例では、ネットワークデバイス205からの通信は、どの端末デバイスが通信を受信すべきであるかを少なくとも部分的にまたは完全に示す宛先データ(たとえば、宛先IPアドレス)を含む。ネットワーク対話システム200は、宛先データを処理し、適切なルーティングを促進することができる、1つまたは複数のネットワーク間接続構成要素245および/あるいは1つまたは複数のネットワーク内接続構成要素255を含むことができる。
【0035】
[0046]各ネットワーク間接続構成要素245は、複数のネットワーク235に接続され得、設置された複数のネットワークカードを有し得る(たとえば、異なるネットワークに接続された各カード)を有することができる。たとえば、ネットワーク間接続構成要素245は、ワイドエリアネットワーク270(たとえば、インターネット)と、1つまたは複数のローカルエリアネットワーク235とに接続され得る。図示された事例では、通信がネットワークデバイス205から端末デバイスのいずれかに送信されるために、図示されたシステムでは、通信は、複数のネットワーク間接続構成要素245によって扱われる。
【0036】
[0047]ネットワーク間接続構成要素245が、通信(または通信に対応するパケットのセット)を受信したとき、ネットワーク間接続構成要素245は、宛先に関連するネットワークに通信を受け渡すためのルートの少なくとも一部を決定することができる。ルートは、たとえば、あらかじめ定義されているか、(たとえば、別のルータからもしくは別のデバイスからの)着信メッセージに基づいて生成されるか、または学習され得る、1つまたは複数のルートを含むことができる、(たとえば、ルータに記憶された)ルーティングテーブルを使用して決定され得る。
【0037】
[0048]ネットワーク間接続構成要素245の例は、ルータ260と、ゲートウェイ265とを含む。ネットワーク間接続構成要素245(たとえば、ゲートウェイ265)は、ネットワークシステムまたはプロトコル間で変換するように構成され得る。たとえば、ゲートウェイ265は、伝送制御プロトコル/インターネットプロトコル(TCP/IP)およびネットワーク間パケット交換/逐次パケット交換(IPX/SPX)デバイス間の通信を促進し得る。
【0038】
[0049]ローカルエリアネットワーク235において通信を受信すると、さらなるルーティングがさらに実施される必要があり得る。そのようなネットワーク内ルーティングは、スイッチ280またはハブ285などのネットワーク内接続構成要素255を介して実施され得る。各ネットワーク内接続構成要素255は、(たとえば、ワイヤレスに、またはイーサネット(登録商標)ケーブルなどを介してワイヤードに)複数の端末デバイス215に接続され得る。ハブ285は、すべての受信された通信を、それが接続された各デバイスに再送するように構成され得る。各端末デバイスは、次いで、端末デバイスが宛先デバイスであるかどうか、または通信が無視されるべきかどうかを決定するために、各通信を評価することができる。スイッチ280は、通信を宛先端末デバイスのみに選択的にダイレクトするように構成され得る。
【0039】
[0050]いくつかの事例では、ローカルエリアネットワーク235は、複数のセグメントに分割され得、それらの各々は、独立したファイアウォール、セキュリティルールおよびネットワークプロトコルに関連付けられ得る。ネットワーク内接続構成要素255は、セグメント内ルーティングを促進するために、1つ、複数またはすべてのセグメントの各々の中に提供され得る。ブリッジ290は、セグメント275を越えて通信をルーティングするように構成され得る。
【0040】
[0051]ネットワークを越えてまたはネットワーク内で通信を適切にルーティングするために、様々な構成要素は、通信中の宛先データを分析する。たとえば、そのようなデータは、どのネットワークに通信がルーティングされるべきか、ネットワーク内のどのデバイスに通信がルーティングされるべきか、またはどの通信を端末デバイスが(無視することに対して)処理すべきかを示すことができる。しかしながら、いくつかの事例では、どの端末デバイスが(またはどのネットワークさえも)、ネットワークデバイスからの通信に参加すべきかは、直ちに明らかでない。
【0041】
[0052]例示のために、端末デバイスのセットは、同様のタイプの応答性通信を提供するように構成され得る。したがって、ネットワークデバイスからの通信中のクエリは、どのネットワークデバイスに通信がルーティングされるかにかかわらず、同様の様式で応答され得ることが予想され得る。この仮定は高レベルでは真であり得るが、端末デバイスに関係する様々な詳細は、他のものと比較して有利である特定のルーティングを生じることができる。たとえば、セット中の端末デバイスは、(たとえば)どの通信チャネルがサポートされるか、ネットワークデバイスへの地理的および/またはネットワーク近接度、ならびに/あるいは関連するエージェントの特性(たとえば、知識ベース、エクスペリエンス、話される言語、利用可能性、一般的パーソナリティまたはセンチメントなど)に関して、互いに異なり得る。したがって、選択ルーティングは、ネットワークデバイス通信に対してより正確におよび/または完全に応答する、より高速な応答を促進し得る。厄介な問題は、ネットワークデバイスを端末デバイスに静的ルーティングマッピングすると、通信トピック、チャネルタイプ、エージェント利用可能性などの変動を考慮することに失敗し得ることである。
【0042】
[0053]
図3A~
図3Cは、接続管理システムを含むネットワーク対話システム300A、300B、および300Cの他の実施形態のブロック図を示す。図示されたシステム300A~Cの各々は、簡単のためにただ2つのローカルエリアネットワーク235を示しているが、実施形態は、ローカルエリアネットワークの数を拡大するように拡張され得ることが諒解できよう。システム300A~Cの各々は、どの端末デバイスがネットワークデバイス205と通信すべきかを識別することができ、接続チャネルを確立し管理する(たとえば、維持または閉鎖する)ことができ、交換において通信を再ルーティングすべきかどうか、およびいつ再ルーティングすべきかを決定することなどを行うことができる、接続管理システム350を含む。したがって、接続管理システム350は、ルーティング決定に影響を及ぼすために、通信、エージェント利用可能性、端末デバイスまたはエージェントの能力などを動的におよびリアルタイムで評価するように構成され得る。
【0043】
[0054]
図3Aでは、接続管理システム350は、ネットワークデバイス205とリモートサーバ340との各々に関連付けられる(たとえば、接続管理システム350Aはネットワークデバイス205に関連付けられ、接続管理システム350Bはリモートサーバ340に関連付けられる)。たとえば、接続管理システム350Aおよび/または接続管理システム350Bは、それぞれ、ネットワークデバイス205とリモートサーバ340との各々の上にアプリケーションとしてインストールまたは記憶され得る。アプリケーションの実行は、たとえば、ネットワークデバイス205との通信交換に参加するように選択された端末デバイス215を識別するための、ネットワークデバイス205とリモートサーバ340との間の通信を促進することができる。識別は、本明細書で開示される1つまたは複数のファクタ(たとえば、利用可能性、通信のトピック/レベルの詳細とエージェントまたは端末デバイスの知識ベースとの間の一致、予測されるレイテンシ、チャネルタイプ利用可能性など)に基づいて行われ得る。
【0044】
[0055]クライアントデバイス330は、どのようにルーティング決定が行われるべきかを示すクライアントデータを提供することができる。たとえば、そのようなデータは、特定の特性がどのように重み付けまたは一致されるべきかに関するインジケーション、あるいは(たとえば、負荷分散または予測される応答レイテンシに関係する)制約またはバイアスを含むことができる。クライアントデータはまた、通信チャネルがいつ確立(または閉鎖)されるべきか、あるいは通信がいつ異なるネットワークデバイスに再ルーティングされるべきかに関係する仕様を含むことができる。クライアントデータは、通信ルーティングのルールなど、様々なクライアント固有のルールを定義するために使用され得る。
【0045】
[0056]リモートサーバ340上で実行される接続管理システム350Bは、どの通信チャネルがサポートされるか、ネットワークデバイスへの地理的および/またはネットワーク近接度、端末デバイスとの通信レイテンシおよび/または安定性、端末デバイスのタイプ、端末デバイスの能力、端末デバイス(またはエージェント)が以前に所与のネットワークデバイス(またはユーザ)と通信したかどうか、ならびに/あるいは関連するエージェントの特性(たとえば、知識ベース、エクスペリエンス、話される言語、利用可能性、一般的パーソナリティまたはセンチメントなど)など、端末デバイスに関係する(たとえば、所与のクライアントに関係する)様々なメトリックを監視することができる。したがって、接続管理システム350Bは、メトリックに基づいてネットワークデバイス通信に対してより正確におよび/または完全に応答する、より高速な応答を促進するためのルーティングを選択することを可能にされ得る。
【0046】
[0057]
図3Aに示されている例では、ネットワークデバイス205とリモートサーバ340との間の通信交換は、宛先アドレスの早期識別を促進することができる。ネットワークデバイス205は、次いで、後続の通信をダイレクトするために宛先アドレスを使用し得る。たとえば、ネットワークデバイス205は、(たとえば、1つまたは複数のネットワーク間接続とワイドエリアネットワークとを介して)初期通信をリモートサーバ340に送り得、リモートサーバ340は、1つまたは複数の対応するクライアントを識別し得る。リモートサーバ340は、次いで、1つまたは複数の対応するクライアントに関連付けられた端末デバイスのセットを識別し、それらの端末デバイスのメトリックを収集し得る。通信交換に関与すべき端末デバイスを選択し、端末デバイスに関係する情報(たとえば、IPアドレス)がネットワークデバイス205に送られ得るために、メトリックは、(たとえば、リモートサーバ340によって)評価され得る。いくつかの実施形態では、リモートサーバ340は、様々な端末デバイスのメトリックを連続的にまたは周期的に収集し、評価し、評価結果をデータストアに記憶し得る。そのような実施形態では、1つまたは複数の対応するクライアントに関連付けられた端末デバイスのセットを識別すると、リモートサーバ340は、データストアからの記憶された評価結果にアクセスし、記憶された評価結果に基づいて、通信交換に関与すべき端末デバイスを選択することができる。
【0047】
[0058]
図3Bでは、接続管理システム350は、リレーおよび/または宛先アドレスとして働くように構成され得る。したがって、たとえば、ネットワークデバイス205のセットは、宛先として接続管理システム350をそれぞれ識別する通信を送信し得る。接続管理システム350は、各通信を受信することができ、(たとえば、各端末デバイスのメトリックを生成するために)端末デバイスのセットを同時に監視することができる。監視とルールとに基づいて、接続管理システム350は、それが各通信を中継し得る端末デバイス215を識別することができる。実施形態によっては、端末デバイス通信は、さらなる中継のために(たとえば、接続管理システム350の)一貫した宛先に同様にダイレクトされ得るか、または端末デバイスは、対応するネットワークデバイスと直接通信し始め得る。これらの実施形態は、効率的なルーティングと、徹底的な通信監視とを促進することができる。
【0048】
[0059]
図3Cに示されている実施形態は、
図3Bにおける実施形態と同様である。しかしながら、いくつかの実施形態では、接続管理システム350は、ネットワーク内構成要素(たとえば、端末デバイス、ネットワーク内接続など)に直接接続される。
【0049】
[0060]
図3A~
図3Cの多くの変形形態が企図されることを諒解されよう。たとえば、接続管理システム350は、接続管理システム350(またはそれの一部)に対応するアプリケーションが構成要素上にインストールされるように、接続構成要素(たとえば、ネットワーク間接続構成要素245またはネットワーク内接続構成要素255)に関連付けられ得る。アプリケーションは、たとえば、独立して、あるいは(たとえば、1つもしくは複数の他の構成要素、ネットワークデバイスまたはリモートサーバ上で実行される)1つまたは複数の同様のまたは相補的アプリケーションと通信することによって実施され得る。
【0050】
[0061]
図4は、接続構成要素の動作のプロトコルスタックマッピング400の表現を示す。より詳細には、
図4は、様々な接続構成要素に対応するオープンシステム対話(OSI)モデル中の動作レイヤを識別する。
【0051】
[0062]OSIモデルは、複数の論理レイヤ402~414を含むことができる。レイヤは、レイヤ402~412がそれぞれ上位レベルをサービスし、レイヤ404~414がそれぞれ下位レイヤによってサービスされるように、順序付きスタック中に配置される。OSIモデルは物理レイヤ402を含む。物理レイヤ402は、パラメータ物理的通信(たとえば、電気的、光学的、または電磁的)を定義することができる。物理レイヤ402はまた、接続を確立および閉鎖するためのプロトコルなど、接続管理プロトコルを定義する。物理レイヤ402は、フロー制御プロトコルと、送信モードとをさらに定義することができる。
【0052】
[0063]リンクレイヤ404は、ノード間通信を管理することができる。リンクレイヤ404は、エラー(たとえば、物理レイヤ402における送信エラー)を検出し、訂正し、アクセス許可を管理することができる。リンクレイヤ404は、媒体アクセス制御(MAC)レイヤと、論理リンク制御(LLC)レイヤとを含むことができる。
【0053】
[0064]ネットワークレイヤ406は、(たとえば、データグラムとして)同じネットワーク中のノードにわたって(たとえば、可変長の)データを転送することを協調させることができる。ネットワークレイヤ406は、論理ネットワークアドレスを物理機械アドレスに変換することができる。
【0054】
[0065]トランスポートレイヤ408は、送信と受信との品質を管理することができる。トランスポートレイヤ408は、伝送制御プロトコル(TCP)など、データを転送するためのプロトコルを提供することができる。トランスポートレイヤ408は、送信用のデータパケットのセグメント化/非セグメント化を実施することができ、レイヤ402~406において生じる送信エラーを検出し、相殺することができる。セッションレイヤ410は、ローカルおよびリモートアプリケーション間の接続を開始し、維持し、終了することができる。セッションは、リモート手順対話の一部として使用され得る。プレゼンテーションレイヤ412は、アプリケーションまたはネットワークレイヤによって受け付けられることが知られているデータタイプに基づいて、データを暗号化し、解読し、フォーマットすることができる。
【0055】
[0066]アプリケーションレイヤ414は、通信を制御または管理するソフトウェアアプリケーションと対話することができる。そのようなアプリケーションを介して、アプリケーションレイヤ414は、(たとえば)宛先、ローカルリソース状態または利用可能性、および/あるいは通信コンテンツまたはフォーマッティングを識別することができる。様々なレイヤ402~414は、利用可能および適用可能なとき、他の機能を実施することができる。
【0056】
[0067]ネットワーク内接続構成要素422、424は、物理レイヤ402とリンクレイヤ404とにおいて動作するように示されている。より詳細には、ハブは、動作が通信の受信と送信とに関して制御され得るように、物理レイヤにおいて動作することができる。ハブには、通信に対処するかまたはデータをフィルタ処理する能力がないので、それらは、上位レベルで動作する能力を、ほとんどからまったく持たない。一方、スイッチは、それらがアドレス(たとえば、MACアドレス)に基づいて通信フレームをフィルタ処理することが可能であるので、リンクレイヤ404において動作することができる。
【0057】
[0068]一方、ネットワーク間接続構成要素426、428は、上位レベル(たとえば、レイヤ406~414)で動作するように示されている。たとえば、ルータは、アドレス(たとえば、IPアドレス)に基づいて通信データパケットをフィルタ処理することができる。ルータは、パケットを適切なネットワークにダイレクトするために、アドレスに基づいてパケットを特定のポートにフォワーディングすることができる。ゲートウェイは、ネットワークレイヤ以上において動作し、同様のフィルタ処理およびダイレクティング、ならびに(たとえば、プロトコルまたはアーキテクチャを横断する)データのさらなる変換を実施することができる。
【0058】
[0069]接続管理システム450は、様々な実施形態では、様々なレイヤの1つ、複数、すべてもしくはいずれかと対話し、および/またはそれらの上で動作することができる。たとえば、接続管理システム450は、ハブがどの端末デバイスと通信するかを動的に調整するために、ハブと対話することができる。別の例として、接続管理システム450は、構成要素が宛先(たとえば、MAC、論理または物理)アドレスとしてどの端末デバイスを選択するかに影響を及ぼすために、ブリッジ、スイッチ、ルータまたはゲートウェイと通信することができる。さらなる例として、接続管理システム450は、トランスポートレイヤ408上のデータパケットのセグメント化、セッションレイヤ410上のセッション持続時間、ならびに/あるいはプレゼンテーションレイヤ412上の暗号化および/または圧縮を監視、制御、またはダイレクトすることができる。いくつかの実施形態では、接続管理システム450は、特定のレイヤ上で動作する機器(たとえば、リンクレイヤ404上で動作するスイッチ)と通信を交換する(たとえば、それにコマンドを送る)ことによって、特定の様式で(たとえば、ネットワークデバイスと端末デバイスとの間の)既存の通信をルーティングまたは修正することによって、ならびに/あるいは既存の通信に基づいて特定の情報(たとえば、新しい宛先アドレス)を含んでいる新しい通信を生成することによって、様々なレイヤと対話することができる。このようにして、接続管理システム450は、様々なデバイスとの対話を介して、および/または様々なプロトコルスタックレイヤにおける動作に影響を及ぼすことを介して、通信ルーティングおよびチャネル確立(または維持または終了)に影響を及ぼすことができる。
【0059】
[0070]
図5は、一実施形態によるマルチデバイス通信交換システム500を表す。システム500は、様々なタイプの通信チャネルを介して様々なタイプの端末デバイスと通信するように構成されたネットワークデバイス505を含む。
【0060】
[0071]図示された事例では、ネットワークデバイス505は、セルラーネットワーク上で(たとえば、基地局510を介して)通信を送信することができる。通信は、動作可能なネットワーク515にルーティングされ得る。動作可能なネットワーク515は、通信を受信し、どの端末デバイスが通信に応答すべきかを識別する、接続管理システム520を含むことができる。そのような決定は、(たとえば、クライアントを示すコンテンツ分析またはユーザ入力に基づいて)その通信が関係するクライアントを識別することと、クライアントに関連付けられた1つまたは複数の端末デバイスの各々について1つまたは複数のメトリックを決定することとに依存することができる。たとえば、
図5では、端末デバイス530A、530B、および530Cの各クラスタは、異なるクライアントに対応することができる。端末デバイスは、地理的にコロケートされ得るかまたは分散し得る。メトリックは、(たとえば、利用可能性に基づいて)記憶もしくは学習されたデータおよび/またはリアルタイム監視に基づいて決定され得る。
【0061】
[0072]接続管理システム520は、1つまたは複数のルータ525または他のネットワーク間もしくはネットワーク内接続構成要素を介して様々な端末デバイスと通信することができる。接続管理システム520は、通信、端末デバイス動作、クライアントルール、および/またはユーザ関連のアクション(たとえば、オンラインアクティビティ)からの、またはそれらに関係するデータを収集し、分析し、および/または1つまたは複数のデータストア535に記憶し得る。そのようなデータは、通信ルーティングに影響を及ぼし得る。
【0062】
[0073]特に、通信ルーティングおよび/または処理に影響を及ぼすために、様々な他のデバイスがさらに使用され得る。たとえば、図示された事例では、接続管理システム520は、ウェブサーバ540にも接続される。したがって、接続管理システム520は、技術項目詳細など、注目するデータを取り出すことができる。
【0063】
[0074]ネットワークデバイス505はまた、(たとえば、ウェブサーバ545を含む)ウェブサーバに接続され得る。いくつかの事例では、そのようなサーバとの通信は、接続管理システム520と通信交換を開始するための初期オプションを提供する。たとえば、ネットワークデバイス505は、特定のウェブページを訪問している間、通信機会が利用可能であり、そのようなオプションが提示され得ることを検出し得る。
【0064】
[0075]通信システム500の1つまたは複数の要素はまた、ソーシャルネットワーキングサーバ550に接続され得る。ソーシャルネットワーキングサーバ550は、様々なユーザデバイスから受信されたデータをアグリゲートすることができる。したがって、たとえば、接続管理システム520は、所与のユーザまたはユーザのクラスの一般的な(またはユーザ固有の)挙動を推定することが可能であり得る。
【0065】
[0076]
図6は、接続管理システム600の一実施形態のブロック図を示す。メッセージ受信機インターフェース605は、メッセージを受信することができる。いくつかの事例では、メッセージは、たとえば、ネットワークデバイスまたは端末デバイスなど、(たとえば、接続管理システム600とは別個に、または同じハウジング内に格納された)ソースデバイスによって送信される通信の一部として受信され得る。いくつかの事例では、通信は、2つのデバイス(たとえば、ネットワークデバイスおよび端末デバイス)間でルーティングされる一連のメッセージまたはメッセージ交換を含むことができる、一連の通信または通信交換の一部であり得る。このメッセージまたは通信交換は、デバイス間の対話の一部であり得、および/またはそれを定義し得る。通信チャネルまたは動作可能なチャネルは、デバイス間のルーティングと通信交換とを促進するために使用される1つまたは複数のプロトコル(たとえば、ルーティングプロトコル、タスク割当てプロトコルおよび/またはアドレス指定プロトコル)を含むことができる。
【0066】
[0077]いくつかの事例では、メッセージは、ローカルまたはリモートユーザインターフェースにおいて受信された入力に基づいて生成されるメッセージを含むことができる。たとえば、メッセージは、ボタンもしくはキー押下または記録されたスピーチ信号に基づいて生成されたメッセージを含むことができる。一事例では、メッセージは、ネットワークデバイスが特定のアプリページもしくはウェブページを提示しているかまたは特定の入力コマンド(たとえば、キーシーケンス)を提供したことを検出すると生成されるものなど、自動的に生成されるメッセージを含む。メッセージは、通信交換を開始するためのものなど、命令または要求を含むことができる。
【0067】
[0078]いくつかの事例では、メッセージは、クライアントの識別子を含むか、またはそれに関連付けられ得る。たとえば、メッセージは、クライアント(またはクライアントに関連付けられたデバイス)を明示的に識別することができるか、メッセージは、クライアントに関連付けられたウェブページまたはアプリページを含むかまたはそれに関連付けられ得るか、メッセージは、クライアントに関連付けられた宛先アドレスを含むかまたはそれに関連付けられ得るか、あるいはメッセージは、クライアントに関連付けられたアイテム(たとえば、製品)またはサービスの識別を含むかまたはそれに関連付けられ得る。例示のために、ネットワークデバイスは、エージェントに通信を送信するためのオプションを提供し得る、特定のクライアントのアプリページを提示していることがある。メッセージに対応するユーザ入力を受信すると、通信は、メッセージと、特定のクライアントの識別子とを含むように生成され得る。
【0068】
[0079]処理エンジン610は、受信された通信および/またはメッセージを処理し得る。処理は、たとえば、1つまたは複数の特定のデータ要素(たとえば、メッセージ、クライアント識別子、ネットワークデバイス識別子、アカウント識別子など)を抽出することを含むことができる。処理は、(たとえば、特定のデバイスタイプ、オペレーティングシステム、通信チャネルタイプ、プロトコルおよび/またはネットワークとの適合性があるように)フォーマッティングまたは通信タイプを変換することを含むことができる。
【0069】
[0080]メッセージ査定エンジン615は、(たとえば、抽出または受信された)メッセージを査定し得る。査定は、たとえば、メッセージのための1つまたは複数のカテゴリーまたはタグを識別することを含むことができる。カテゴリーまたはタグタイプの例は、(たとえば)トピック、センチメント、複雑さ、および緊急度を含むことができる。メッセージをカテゴリー分類することと、タグ付けすることとの間の差は、カテゴリーは(たとえば、カテゴリーオプションのあらかじめ定義されたセットに従って)限定され得るが、タグはオープンであり得ることであり得る。トピックは、たとえば、技術的問題、使用法の質問、または要求を含むことができる。カテゴリーまたはタグは、たとえば、(たとえば、キーワード、文構造、繰り返されるワード、句読文字および/または非冠詞ワードを識別することによる)メッセージの意味解析、(たとえば、選択された1つまたは複数カテゴリーを有する)ユーザ入力、ならびに/あるいはメッセージ関連の統計値(たとえば、タイピングスピードおよび/または応答レイテンシ)に基づいて決定され得る。
【0070】
[0081]いくつかの事例では、メッセージ査定エンジン615は、メッセージのメトリックを決定することができる。メトリックは、たとえば、文字、ワード、大文字、すべて大文字のワード、または特定の文字もしくは句読点(たとえば、感嘆符、疑問符および/もしくはピリオド)のインスタンスの数を含むことができる。メトリックは、感嘆符(または疑問符)で終了する文の比、すべて大文字で書かれたワードの比などの比率を含むことができる。
【0071】
[0082]メッセージ査定エンジン615は、メッセージ、メッセージメトリックおよび/またはメッセージ統計値をメッセージデータストア620に記憶することができる。各メッセージはまた、対応するソースデバイス、宛先デバイス、ネットワークデバイス、端末デバイス、クライアント、1つまたは複数のカテゴリー、1つまたは複数のステージおよび/あるいはメッセージ関連の統計値を識別するデータなどの他のデータ(たとえば、メタデータ)に関連して記憶され得る。接続管理システム600の様々な構成要素(たとえば、メッセージ査定エンジン615および/または対話管理エンジン625)は、クエリ応答メッセージ、メッセージメトリックおよび/またはメッセージ統計値を取り出すために、メッセージデータストア620を照会することができる。
【0072】
[0083]対話管理エンジン625は、通信がどのデバイスにルーティングされるべきかと、受信デバイスおよび送信デバイスがどのように通信すべきかとを決定することができる。これらの決定の各々は、たとえば、特定のネットワークデバイス(または特定のユーザに関連付けられたいずれかのネットワークデバイス)が以前に端末デバイスのセット中の端末デバイス(たとえば、接続管理システム600に関連付けられたいずれかの端末デバイス、あるいは1つまたは複数の特定のクライアントに関連付けられたいずれかの端末デバイス)と通信したかどうかに依存することができる。
【0073】
[0084]いくつかの事例では、ネットワークデバイス(または同じユーザもしくはプロファイルに関連付けられた他のネットワークデバイス)が、以前に所与の端末デバイスと通信したとき、通信ルーティングは、概して、同じ端末デバイスのほうへバイアスされ得る。ルーティングに影響を及ぼし得る他のファクタは、たとえば、端末デバイス(または対応するエージェント)が利用可能であるおよび/または端末デバイスの予測される応答レイテンシであるかどうかを含むことができる。そのようなファクタは、他の端末デバイスに対応する同様のメトリックに対して絶対的または相対的に考慮され得る。再ルーティングルール(たとえば、クライアント固有のまたは一般的なルール)は、エージェント一貫性を控えるべきかどうかを決定するために、そのようなファクタがどのように査定され重み付けられるべきかを示すことができる。
【0074】
[0085]ネットワークデバイス(または同じユーザもしくはアカウントに関連付けられた他のネットワークデバイス)が、以前に所与の端末デバイスと通信しなかったとき、端末デバイス選択は、たとえば、様々なエージェントの知識ベースが通信トピックに対応する範囲、所与の時間におけるおよび/またはチャネルタイプにわたる様々なエージェントの利用可能性、(たとえば、クライアントに関連付けられた)端末デバイスのタイプおよび/または能力などのファクタに基づいて実施され得る。一事例では、ルールは、これらおよび各パラメータに割り当てるべき重みなど、1つまたは複数のファクタに対するサブパラメータをどのように決定すべきかを識別することができる。重み付けされたサブパラメータを組み合わせる(たとえば、合計する)ことによって、各エージェントのパラメータは決定され得る。次いで、端末デバイスのパラメータを比較することによって、端末デバイス選択が行われ得る。
【0075】
[0086]どのようにデバイスが通信すべきかを決定することに関して、対話管理エンジン625は、(たとえば)端末デバイスが(たとえば)SMSメッセージ、音声呼、ビデオ通信などを介して通信に応答すべきかどうかを決定することができる。通信タイプは、たとえば、(たとえば、少なくとも部分的にクライアントまたはユーザによって定義された)通信タイプ優先度リスト、(たとえば、一貫性を推進するための)ネットワークデバイスから以前に受信された通信のタイプ、受信されたメッセージの複雑さ、ネットワークデバイスの能力、ならびに/あるいは1つまたは複数の端末デバイスの利用可能性に基づいて選択され得る。明らかに、いくつかの通信タイプは、(たとえば、高速なメッセージ応答が予想される)リアルタイム通信を生じるが、他のものは、(たとえば、メッセージ間の(たとえば、数分あるいは数時間の)遅延が許容できる)非同期通信を生じることが可能である。
【0076】
[0087]さらに、対話管理エンジン625は、2つのデバイス間の連続的チャネルが確立、使用または終了されるべきかどうかを決定することができる。連続的チャネルは、ネットワークデバイスから、指定された端末デバイスへの将来の通信のルーティングを促進するように構築され得る。構築された促進は、メッセージ列を越えてさえ持続することができる。いくつかの事例では、(たとえば、エージェントを識別する)連続的チャネルの表現は、ユーザのデバイス上に提示されるべきプレゼンテーションに含まれ得る。このようにして、ユーザは、効率を促進するために通信が一貫してルーティングされることになることを理解することができる。
【0077】
[0088]一事例では、所与のネットワーク(たとえばユーザ)デバイスと端末(たとえば企業クライアント)デバイスとに対応する接続パラメータを決定するために、1つまたは複数のファクタと、(たとえば、これらの1つまたは複数のファクタの各々の重みを含む)ルールとを使用して、パラメータが生成され得る。パラメータは、全体的な一致、あるいは所与の通信または通信列に固有のものに関係し得る。したがって、たとえば、パラメータは、所与の端末デバイスが、ネットワークデバイス通信に応答することに適していることが予測される度合いを反映し得る。いくつかの事例では、パラメータ分析は、所与の通信をそれにルーティングすべき端末デバイスの各々と、接続チャネルを確立、使用または終了すべきかどうかとを識別するために使用され得る。パラメータ分析が、ルーティング決定とチャネル決定の両方に対処するために使用されるとき、各決定に関係するパラメータは、同じ、同様の、または異なる様式で決定され得る。いくつかの例では、パラメータは、接続がユーザデバイスとクライアントデバイスとの間で作成されるという尤度と相関する。いくつかの例では、パラメータは、接続が作成されるという尤度と相関しないが、対話の後にくる予想される満足スコアと相関することができる。
【0078】
[0089]パラメータが、長期的一致の強度対特定のメッセージクエリに応答する強度を予測することになるかどうかに応じて対話を予測および促進するために、様々なファクタが考慮され得る。たとえば、前者の事例では、全体的なスケジュールおよび時間帯の考慮が重要であり得るが、後者の事例では、即時の利用可能性がより高く重み付けされ得る。単一のネットワークデバイス/端末デバイスの組合せのためにパラメータが決定され得るか、または所与のネットワークデバイスと異なる端末デバイスとの間の一致をそれぞれ特徴づける複数のパラメータが決定され得る。
【0079】
[0090]例示のために、クライアントに関連付けられた3つの端末デバイスのセットが、3つの端末デバイスのうちの1つへのユーザの潜在的な通信ルーティングについて対話管理エンジン625によって評価され得る。特定の通信のための(たとえば特定の端末に関連付けられた)エージェント間の一致に関係する各端末のためのパラメータが生成され得る。最初の2つの端末デバイスの各々(たとえばまたは端末に関連付けられたエージェント)は、通信を送信したネットワークデバイスと以前に通信していたことがあり得る。ユーザデバイス(たとえばまたはユーザアカウントに関連付けられた何らかのネットワークデバイス)からの入力は、第1のデバイスとの通信をもつ対話に関連付けられた肯定的なフィードバックを示していることがあり得る。したがって、第1、第2および第3のデバイスについての(たとえば、ルールに従って計算された)過去の対話サブパラメータは、それぞれ、10、5、および0になり得る。これらのサブパラメータは、他のサブパラメータとともに、全体的なパラメータを決定するために使用され得るか、またはさもなければ接続のための特定の端末を選択するために使用され得る。いくつかの例では、否定的なフィードバック入力は、負のサブパラメータを生じ得る。いくつかの例では、システムは、(たとえば他の端末がオフラインまたはビジーであるので)第3の端末デバイスのみが利用可能であると決定し得る。いくつかの例では、対話管理エンジン625または通信サーバの他の要素は、第2の端末デバイスは15分間内に応答するために利用可能であるが、第1の端末デバイスは翌日まで応答するために利用可能でないことを予測し得る。したがって、第1、第2および第3のデバイスのための高速応答サブパラメータは、1、3および10になり得る。最後に、エージェント(たとえば端末デバイスに関連付けられたエージェント)が通信中のトピックに関してよく知っている度合いが推定され得る。第3の端末デバイスに関連付けられたエージェントは、他の2つのデバイスに関連付けられたエージェントよりもよく知っていると決定され得、その結果、サブパラメータは3、4および9になる。この例では、ルールは、重み付けまたは正規化パラメータを含まず(とはいえ、他の事例では、ルールは含んでよく)、その結果、パラメータは14、11および19になる。したがって、ルールは、メッセージが、第3の端末デバイスである、最も高いパラメータをもつデバイスにルーティングされるべきことを示し得る。特定の端末デバイスへのルーティングが不成功である場合、メッセージは、次に高いパラメータをもつデバイスにルーティングされ得、以下同様である。上記は、ユーザデバイスから(たとえばエージェントに関連付けられた)端末デバイスに接続をルーティングするために通信サーバによってさらに使用される単一のパラメータを決定するためにサブパラメータを使用する、簡略化された例である。他の例では、複雑な重み付けファクタ、しきい値、および他の基準が使用されてよい。いくつかの例では、しきい値範囲内の値のみが使用される。たとえば、15分間の待ちを示す利用可能性の値がしきい値限界であり得る。15分間を下回るとき、サブパラメータが使用され、全体的なパラメータを決定するために他のサブパラメータで重み付けされ得る。15分間を超えるとき、この待ちは許容できないと見なされるので、端末デバイスは考慮から除外され得る。他の例では、カットオフしきい値は使用されず、重み付けファクタが非線形に変動することができる。たとえば、15分間カットオフではなく、15分間を下回るサブパラメータは、線形的に変動することができるが、15分間を超えると、サブパラメータ値は、指数関数的に、または端末デバイスがルーティングエンジン(たとえば対話管理エンジン625)によって選択される見込みを大幅に減少させる線形ファクタによって増加することができる。
【0080】
[0091]パラメータは、1つまたは複数の絶対または相対しきい値と比較され得る。たとえば、通信がそれにルーティングされ得る端末デバイスを選択するための高いパラメータを識別するために、端末デバイスのセットのためのパラメータは互いに比較され得る。別の例として、端末デバイスとの連続的チャネルを確立すべきかどうかを決定するために、パラメータ(たとえば、高いパラメータ)は、1つまたは複数の絶対しきい値と比較され得る。連続的チャネルを確立するための全体的なしきい値は、所与の一連のメッセージにおいて通信を一貫してルーティングするためのしきい値よりも高くてよい(がそうである必要はない)。全体的なしきい値と、通信を一貫してルーティングすべきかどうかを決定するためのしきい値との間のこの差異は、チャネルの拡張された効用を仮定すれば、連続的チャネルのコンテキストでは、強い一致が重要であるからである。いくつかの実施形態では、連続的チャネルを使用するための全体的なしきい値は、連続的チャネルを確立するための、および/または所与の一連のメッセージにおいて通信を一貫してルーティングするためのしきい値よりも低くてよい(がそうである必要はない)。
【0081】
[0092]対話管理エンジン625は、様々なコンテキストにおいてアカウントエンジン630と対話することができる。たとえば、アカウントエンジン630は、ネットワークデバイスまたは端末デバイスに対応するアカウントを識別するために、アカウントデータストア635中でこのデバイスの識別子をルックアップし得る。さらに、アカウントエンジン630は、以前の通信交換(たとえば、時間、関与する他のデバイス、チャネルタイプ、解決ステージ、トピックおよび/または関連するクライアント識別子)、(たとえば、1つまたは複数のクライアントの各々について、何らかのチャネルが存在するかどうか、各チャネルに関連付けられた端末デバイス、確立時間、使用周波数、最後の使用の日付、何らかのチャネル制約および/またはサポートされる通信のタイプを示す)接続チャネル、(たとえば、端末デバイス選択、応答レイテンシ、端末デバイス一貫性、エージェント専門知識、および/または通信タイプ選好もしくは制約に関係する)ユーザまたはエージェント選好または制約、ならびに/あるいはユーザまたはエージェント特性(たとえば、年齢、話されるまたは好ましい言語、地理的ロケーション、興味など)に関するデータを維持することができる。
【0082】
[0093]さらに、対話管理エンジン625は、アカウントデータストア635が現在のチャネルデータを反映するように更新され得るように、様々な接続チャネルアクションについてアカウントエンジン630にアラートすることができる。たとえば、チャネルを確立すると、対話管理エンジン625は、確立についてアカウントエンジン630に通知し、ネットワークデバイスと、端末デバイスと、アカウントと、クライアントとのうちの1つまたは複数を識別することができる。アカウントエンジン630は、(いくつかの事例では)その後、ユーザが、エージェント一貫性が役立っていることに気づいていることが可能なように、チャネルの存在についてユーザに通知することができる。
【0083】
[0094]対話管理エンジン625は、通信を1つまたは複数のクライアント(および/または関連するブランド)にマッピングすることができる、クライアントマッピングエンジン640とさらに対話することができる。いくつかの事例では、ネットワークデバイス自体から受信される通信は、クライアントに対応する識別子(たとえば、クライアント、ウェブページ、またはアプリページの識別子)を含む。識別子は、(たとえば、クライアントマッピングエンジン640が検出し得る)メッセージの一部として含まれるか、またはメッセージを包含している通信中の他のデータとして含まれ得る。クライアントマッピングエンジン640は、次いで、クライアントおよび/またはクライアントの識別子に関する追加のデータを取り出すために、クライアントデータストア645中の識別子をルックアップし得る。
【0084】
[0095]いくつかの事例では、メッセージは、どんなクライアントにも特に対応しないことがある。たとえば、メッセージは、一般的なクエリを含み得る。クライアントマッピングエンジン640は、たとえば、メッセージに対して意味解析を実施し、1つまたは複数のキーワードを識別し、キーワードに関連する1つまたは複数のクライアントを識別し得る。いくつかの事例では、単一のクライアントが識別される。いくつかの事例では、複数のクライアントが識別される。各クライアントの識別は、次いで、ユーザが(たとえば、関連する端末デバイスを介して)通信すべきクライアントを選択することができるように、ネットワークデバイスを介して提示され得る。
【0085】
[0096]クライアントデータストア645は、クライアントに関連付けられた1つまたは複数の端末デバイス(および/またはエージェント)の識別を含むことができる。端末ルーティングエンジン650は、ルーティング決定に影響を及ぼすために、1つ、複数またはすべてのそのような端末デバイス(および/またはエージェント)の各々に関係するデータを取り出すかまたは収集することができる。たとえば、端末ルーティングエンジン650は、端末デバイスのデバイスタイプ、オペレーティングシステム、通信タイプ能力、インストールされたアプリケーションアクセサリー、地理的ロケーションおよび/または識別子(たとえば、IPアドレス)などの情報を記憶することができる、端末データストア655を維持することができる。一部の情報は動的に更新されてよい。たとえば、端末デバイスが利用可能であるかどうかを示す情報は、(たとえば)(たとえば、デバイスがスリープ状態であるか、オフ/オンにされているか、非アクティブ/アクティブであるかどうかを識別するか、または入力が時間期間内に受信されたかどうか識別する)端末デバイスからの通信、(たとえば、端末デバイスが、通信交換に関与するかまたは通信交換の一部になるように割り当てられているかどうかを示す)通信ルーティング、あるいは通信交換が終了または開始したことを示すネットワークデバイスまたは端末デバイスからの通信に基づいて、動的に更新されてよい。
【0086】
[0097]様々なコンテキストでは、1つまたは複数の通信交換に携わることは、端末デバイスが別の通信交換に携わるために利用可能でないことを必ずしも示すとは限らないことが諒解されよう。(たとえば、一般的にまたはユーザに関して)通信タイプ(たとえば、メッセージ)、クライアント識別もしくはユーザ識別されたターゲット応答時間、および/またはシステム負荷などの様々なファクタは、端末デバイスがいくつの交換に関与し得るかに影響を及ぼし得る。
【0087】
[0098]対話管理エンジン625が、通信交換または接続チャネルに関与すべき端末デバイスを識別したとき、それは、端末ルーティングエンジン650に通知することができ、端末ルーティングエンジン650は、宛先(たとえば、IP)アドレス、デバイスタイプ、プロトコルなど、端末デバイスに関する何らかの関係するデータを端末データストア655から取り出し得る。処理エンジン610は、次いで(いくつかの事例では)、特定のフォーマットを有すること、特定のプロトコルに準拠することなどのために、メッセージを包含している通信を修正するか、または(メッセージを含む)新しい通信を生成することができる。いくつかの事例では、新しいまたは修正されたメッセージは、ネットワークデバイスに対応するアカウントデータ、メッセージクロニクル、および/またはクライアントデータなど、追加のデータを含み得る。
【0088】
[0099]メッセージ送信機インターフェース660は、次いで、通信を端末デバイスに送信することができる。送信は、たとえば、別個のハウジング中に格納されたデバイスへのワイヤードまたはワイヤレス送信を含み得る。端末デバイスは、接続管理システム600と同じまたは異なるネットワーク(たとえば、ローカルエリアネットワーク)中の端末デバイスを含むことができる。したがって、通信を端末デバイスに送信することは、通信をネットワーク間またはネットワーク内接続構成要素に送信することを含むことができる。
【0089】
[00100]
図7は、いくつかの実施形態による対話勧誘を管理するためのシステムのブロック図を示す。
図7に示されているように、ユーザ723は、デバイス720(たとえばユーザデバイスまたはネットワークデバイス)を動作させ得る。本明細書で説明されるように、デバイス720は、モバイルデバイス、電話デバイス、コンピューティングデバイス、タブレットデバイスなど、通信機能を有する任意のデバイスであり得る。単一のネットワークデバイス720を動作させている単一のユーザ723として図示および説明されているが、複数のユーザが複数のデバイスを動作させ得ることが企図され、これらのデバイスは、ユーザ723が、異なるデバイスおよび異なる通信機構(たとえばテキスト、音声、電子メールなど)を介して接触されることを可能にするために、アカウント詳細によって関連付けられるかまたは他の方法でリンクされ得る。
【0090】
[00101]ネットワークデバイス720は、ネットワークデバイス720を端末デバイス705に通信可能および選択的に結合し得る、通信サーバ710と通信していることがある。構成要素は、任意の好適なネットワークを介して通信してよく、インターネット、パーソナルエリアネットワーク、ローカルエリアネットワーク(LAN)、キャンパスエリアネットワーク(CAN)、メトロポリタンエリアネットワーク(MAN)、ワイドエリアネットワーク(WAN)、ワイヤレスローカルエリアネットワーク(WLAN)などのオープンネットワーク、イントラネット、エクストラネット、または他のバックボーンなどのプライベートネットワークを含むことができる。
【0091】
[00102]端末デバイス705は、エージェント703によって動作され得る。エージェント703は、クライアントの担当者であり得、本明細書で説明されるように、様々なトピックおよびインテントについて1人または複数のユーザ723への支援を提供し得る。単一の端末デバイス705を動作させている単一のエージェント703として図示および説明されているが、複数のエージェントは、本明細書で説明されるように、複数の端末デバイスを動作させ、通信サーバ710と通信していてよいことが企図される。端末デバイス705は、任意のポータブルデバイス(たとえば、モバイルフォン、タブレット、ラップトップ)または非ポータブルデバイス(たとえば、電子キオスク、デスクトップコンピュータなど)であり得る。いくつかの事例では、エージェント703は、端末デバイス705上で実行されているブラウザを使用してウェブサイトにアクセスすることができる。たとえば、ウェブサイトは、端末デバイス705のブラウザ上で実行されているコンソールまたはプラットフォームを含むことができる。エージェント703は、ブラウザを使用してプラットフォームにログインされ得る。エージェント703が、コンソールまたはコンソール中に含まれるウェブアプリケーションへのアクセスを獲得することを可能にする前に、エージェント703の識別情報を認証するために、1つまたは複数のログイン資格証明(たとえば、ユーザ名、パスワードなど)が使用され得る。コンソールの例は、1つまたは複数のAPI(アプリケーションプログラミングインターフェース)を含むプラットフォーム、1つまたは複数の機能を含むダッシュボード、通信セッションを確立するかまたはそれに加わることが可能である(プラグインをダウンロードする必要のない)ウェブブラウザ上で実行されるウェブホストアプリケーション、および他の好適なインターフェースを含むことができる。さらに、コンソールは、実行され得る1つまたは複数のウェブアプリケーションまたは機能を含むことができる。ウェブアプリケーションまたは機能は、ブラウザにおいて、通信サーバ710、ローカルサーバ、リモートサーバ、または他の好適なコンピューティングデバイスにおいて実行され得る。たとえば、ウェブアプリケーション、ネイティブアプリケーション、または機能は、エージェント703がユーザ723と通信することを可能にすることができる。
【0092】
[00103]通信サーバ710は、ユーザ723と通信するための1つまたは複数のエージェント703の利用可能性を決定するように構成され得る。通信サーバ710は、様々な方法のうちの1つまたは複数によって1つまたは複数のエージェント703の利用可能性を決定し得る。たとえば、通信サーバ710は、端末デバイス705にピングまたはステータス要求を送ることによって、関連する端末デバイス705がアイドルであるか否かを決定し得る。端末デバイス705がアイドルでない場合、通信サーバ710は、エージェント703のキャパシティ、すなわち、そのエージェント703のためのユーザ723の最大またはしきい値キャパシティに関してエージェント703が何人のユーザ723とすでに通信しているかを決定するために、端末デバイス705をピングし得る。別の例では、エージェント703は、通信サーバ710に通信される端末デバイス705に対するステータスをプロアクティブに設定し得る。さらに別の例では、通信サーバ710は、それ自体で、端末デバイス705にルーティングされたネットワークデバイス720の数、ならびにそれらの通信のステータス(たとえば、完了、解決、進行中など)を追跡し得る。通信サーバ710は、次いで、利用可能性とキャパシティとに関して端末デバイス705のステータスを推論し得る。
【0093】
[00104]通信サーバ710は、さらに、ネットワークデバイス720および/またはユーザ723の識別情報を決定し得る。ネットワークデバイス720の識別情報は、たとえば、ネットワークデバイス720に関連付けられた識別データを取り出すことによって決定され得る。識別データは、IPアドレス、MACアドレス、ロケーション、アクセスまたは要求されたウェブサイト、アクセスまたは要求されたデータ、ネットワークデバイス720上で行われた購入などを含み得る。代替または追加として、通信サーバ710は、ユーザ723の識別情報を決定し得る。ユーザ723の識別情報は、たとえば、ユーザ723に関連付けられた個人識別情報を取り出すことによって決定され得る。個人識別情報は、名前、住所、クレジットカード番号、トークン、購入履歴、ブラウズ履歴などを含み得る。これらの識別情報は、通信サーバ710によって基準712として記憶され得る。
【0094】
[00105]実際には、通信サーバ710は、様々な目的のいずれかのためにネットワークデバイス720によって接触され得る。たとえば、ユーザ723は、グリルを購入するためのウェブページをロードするためにネットワークデバイス720を使用し得る。通信サーバ710は、ネットワークデバイス720に関連付けられた識別データ、および/またはユーザ723の個人識別情報、すなわち、基準712を決定し得る。通信サーバ710は、ネットワークデバイス720とアクセスされるリソース(たとえば、ウェブページ)との間の対話に関連付けられた基準712をさらに決定し得る。たとえば、通信サーバ710は、ネットワークデバイス720がどのくらいの時間の間ウェブページ上にあったか、ネットワークデバイス720がウェブページに何回アクセスしたか、ネットワークデバイス720上でアクセスされた他のウェブページ(たとえば、「ヘルプ」または「お問い合わせ」ページ)などを決定し得る。この情報は、基準712として記憶され得る。
【0095】
[00106]通信サーバ710は、端末デバイス705を介したエージェント703の利用可能性を決定し得る。通信サーバ710は、基準712を、データベースに記憶された履歴データ713と比較し得る。履歴データ713は、以前のユーザ723との以前の対話、ならびにそれらの対話の結果を含み得る。たとえば、履歴データ713は、以前のユーザがウェブページ上にいる間にエージェント703とチャットすることをオファーされたとき、彼らがウェブページからグリルを購入したか否かを示す統計データを含み得る。その例では、基準712は、グリルがあるウェブページを訪問しているユーザであり得る。他の例では、基準712は、購買層情報、個々の履歴情報などを含み得る。このデータは、人工知能および/または機械学習技法を使用して収集され、分析され得る。
【0096】
[00107]履歴データ713に関連付けられた統計データが、基準712に基づいて所与の結果(たとえば、購入、さらなる情報の要求、問題の解決など)のより高い確率を示す場合、対話勧誘715は、ネットワークデバイス720に展開され得る。対話勧誘715は、任意の好適なフォーマットであってよい。たとえば、対話勧誘715は、ウェブページ上のポップアップボックス、または新しいウェブページへのリダイレクションの形態であってよい。対話勧誘715は、ユーザ723が、チャットによってまたは電話によってなど、任意の好適な方法によってエージェント703と対話することを可能にし得る。ネットワークデバイス720が、端末デバイス705とのそれの対話を完了した後に、通信サーバ710は、対話の結果を決定し、同様の基準712を有する将来のユーザ723に対話勧誘715をどのようにおよびいつ展開すべきかを決定するために、その情報を履歴データ713に記憶し得る。
【0097】
[00108]
図8は、いくつかの実施形態による通信サーバ805のブロック図を示す。通信サーバ805は、
図7の通信サーバ710の内部構成要素を示し得る。通信サーバ805は、プロセッサ810とメモリ815とを含む、中央処理ユニット(CPU)807を含み得る。通信サーバ805は、ストレージ820をさらに含み得る。いくつかの実施形態では、ストレージ820は、履歴データ713と、基準712とを含み得る。しかしながら、いくつかの実施形態では、これらの構成要素の一方または両方は、通信サーバ805の外部に記憶され得る。
【0098】
[00109]CPU807は、エージェントキャパシティエンジン827と、対話決定エンジン829と、通信モジュール831と、統計値エンジン833と、機械学習エンジン835との、複数のモジュールを含む、コンピュータ可読媒体825に動作可能に結合され得る。エージェントキャパシティエンジン827は、プロセッサ810とともに、複数の端末デバイスに関連付けられたキャパシティを決定するように構成され得る。端末デバイスは、本明細書で説明されるように、エージェントによって動作され得る。複数の端末デバイスに関連付けられたキャパシティは、利用可能な対話の数を決定するために対話決定エンジン829によって使用され得る。たとえば、単一のエージェントが一度に10人のユーザと通信することが可能であり、エージェントがすでに5人のユーザと通信している場合、5つの利用可能な対話があり得る。
【0099】
[00110]通信モジュール831は、プロセッサ810とともに、利用可能な対話勧誘を送信するように構成され得る。通信モジュール831は、プロセッサ810とともに、受付けデータを受信するようにさらに構成され得る。受付けデータは、1つまたは複数のネットワークデバイスによる利用可能な対話勧誘の1つまたは複数の受付けに対応し得る。ネットワークデバイスは、本明細書でさらに説明されるように、ユーザによって動作され得る。1つまたは複数のネットワークデバイスは、基準に関連付けられ得る。基準は、識別データ、ユーザに関するデータ、対話に関するデータなどを含み得る。
【0100】
[00111]統計値エンジン833は、プロセッサ810とともに、統計データを決定するために受付けデータを使用するように構成され得る。統計データは、基準に関連付けられた追加のネットワークデバイスが対話勧誘を受け付けるという尤度に関連付けられ得る。たとえば、5つの対話勧誘が展開され、ただ1つが受け付けられた場合、受け付けられた勧誘に関するデータが収集され(たとえば、基準)、その対話の特徴を決定するために分析され得、それにより、対話勧誘の受付けが生じ得る。
【0101】
[00112]機械学習エンジン835は、プロセッサ810とともに、統計データを使用し、基準を使用してネットワークデバイスを選択することによって、1つまたは複数の追加のネットワークデバイスを決定するように構成され得る。たとえば、機械学習エンジン835は、どの基準が受付けに関連付けられたかを決定し、それらの基準を他のネットワークデバイスに適用して、どれが対話勧誘を受け付ける可能性が最も高いかを決定し得る。機械学習エンジン835は、プロセッサ810とともに、1つまたは複数の追加のネットワークデバイスへの送信のために利用可能な、利用可能な対話勧誘の数を更新するようにさらに構成され得る。利用可能な対話勧誘の数は、受付けデータに従って決定され得る。たとえば、1つの対話勧誘が受け付けられた場合、4つの残りの対話勧誘が利用可能であり得る。例示的な機械学習エンジンに関係する追加の詳細は、
図9に関して以下で説明される。
【0102】
[00113]いくつかの例では、インテリジェントルーティングエンジン837は、エージェントと通信するための勧誘を適切な宛先に(たとえば、端末デバイスまたはクライアントデバイスに)ルーティングするように構成可能である。インテリジェントルーティングエンジン837は、1つまたは複数の機械学習技法または人工知能技法に、メッセージをインテリジェントにルーティングさせるコードを含む。いくつかの実装形態では、インテリジェントルーティングエンジン837は、端末またはクライアントデバイスと通信するための勧誘に関連付けられた宛先を予測するモデルをトレーニングするために、1つまたは複数の機械学習技法を実行することができる。いくつかの例では、機械学習モデルは、インテリジェントルーティングエンジン837内のコードを使用して実装される。他の例では、インテリジェントルーティングエンジンは、機械学習エンジン885中に実装されたモデルにデータを提供するように動作する。いくつかの例では、2つ以上の機械学習モデルが使用され得、出力は、ユーザとエージェントとの間の、それらの関連するデバイス(たとえばユーザネットワークデバイスおよびエージェント端末またはクライアントデバイス)を介した接続を選択するために、インテリジェントルーティングエンジン837によって様々な仕方で接合または解釈され得る。
【0103】
[00114]いくつかの例では、勧誘推奨エンジン839は、(たとえばメモリ815またはストレージ820からの)勧誘および結果のデータベースを分析することができる論理のためのコード、ハードウェア、またはファームウェアを含む。いくつかの例では、勧誘推奨エンジン839は、1つもしくは複数の機械学習アルゴリズムまたは人工知能アルゴリズムを使用して、ストレージに記憶された勧誘を評価することができる。いくつかの例では、勧誘推奨エンジン839は、送るべき勧誘の数を決定するために、対話決定エンジン829からのデータとともに履歴データを使用する。これは、たとえば、ネットワーク中の現在利用可能なユーザデバイスに送られる対話勧誘への受付けの可能性がある数を決定するために、統計値エンジン833からの分析ならびに/または機械学習エンジン835およびエージェントキャパシティエンジン827からの情報を使用することができる。決定は、現在利用可能なユーザデバイスの所与の数について、送るべき対話勧誘の数が、ユーザに割り当てられるパラメータおよびサブパラメータに基づいて異なり得るように、現在利用可能なユーザに割り当てられるパラメータのためにカスタマイズされ得る。一例では、100個の利用可能なユーザデバイスがネットワーク中で識別され、25個のオープンスロットが、ユーザデバイスからエージェント端末デバイスに通信をルーティングするために利用可能である。勧誘推奨エンジン839は、通信サーバ805の他の部分からの情報を使用して、50個の対話勧誘が、100個の利用可能なユーザデバイスの特定のサブセットに通信される場合、許容できる性能および結果が、25個のオープンスロットを使用して達成可能であると決定することができる。異なる例では、または100個の利用可能なユーザデバイスの異なるサブセットを使用して、勧誘推奨エンジン839は、(たとえば、エージェントが、対話勧誘が送られた後に対話のために直ちに利用可能になるか、またはしきい値時間内に利用可能になる)許容できる結果を維持しながら、45個の対話勧誘のみが送られ得ると決定し得る。いくつかの例では、これは、個々のエージェントとユーザとに割り当てられるパラメータに基づくことができる。いくつかの例では、これは、いくつかのユーザが応答する時間までに追加のエージェントキャパシティが利用可能になるという予想に基づくことができる。たとえば、利用可能なエージェントスロットの現在の数(たとえば、25)と、送られるべき勧誘の数(たとえば、50)との間の差の一部は、勧誘のうちのいくつかが応答を受信しないということだけではなく、エージェントが既存の前の対話を解決することにより、エージェントスロットの数の一部が、ユーザのうちのいくつかが勧誘に応答する時間までに増加するということでもあり得る。
【0104】
[00115]媒体825のエンジンの動作は、エージェントとユーザとの間の、それらの関連するデバイスを介した接続および対話を開始するために期間またはリアルタイムであり得る。通信サーバ805は、いくつかの例では、エージェントキャパシティと、ネットワーク中で識別されたユーザデバイスに割り当てられるパラメータとの複雑な分析に基づいてユーザデバイスに予測的に勧誘を発行する、連続的に動作する自動ダイヤラーとして機能することができる。ネットワーク中で新しいデバイスが識別されると、エージェントとの前の対話は、追加のエージェントキャパシティを解放するために解決され、他のパラメータ(たとえば、日付、時刻、特定のユーザに送られた最後の勧誘からの時間など)は変化し、通信サーバ805は、追加の対話勧誘を送信することができる。これらの更新は、リアルタイム演算を実施して現在のデータを分析し、更新された情報に基づいて対話勧誘を発行するために、プロセッサ810の制限に基づいてリアルタイムで処理され得るか、バッチで周期的に(たとえば、1時間ごとに1回、日ごとに2回、週ごとに1回など)処理され得る。
【0105】
[00116]
図9は、次いで、いくつかの例による例示的な機械学習エンジン835を表すブロック図を示す。
図9の機械学習エンジン835は、第1の機械学習システム950および第Nの機械学習システム952として示されている、異なる機械学習モデルを実装するための複数の機械学習システムを含む。さらに、機械学習システムによって使用されるデータのためのメモリを提供することができる、機械学習データストア970が示されている。モデルトレーニングシステムは、任意の数の機械学習システムと、機械学習データストア970からのデータとを用いて、これらの異なる機械学習システムをトレーニングするために使用され得、データフィードバックシステム962は、機械学習データストア970に記憶されたデータを更新するように、およびモデルトレーニングシステム960を介して、更新されたトレーニングのデータを異なるモデルに提供するように、トレーニングされた機械学習システムの実装からのデータ更新または結果フィードバックを管理することができる。
【0106】
[00117]いくつかの例では、データフィードバックシステム962は、前のデータと、前の演算からの勧誘およびルーティングの結果とを使用して、将来のルーティングの選択と勧誘選択とを改善するために、機械学習モデルをもつシステムと対話することができる。この改善は、構築されたデータセットおよび履歴データを用いた教師あり学習、システム中の現在のルーティング経路とシステム使用ターゲットとのための期待または予測モデルに基づく教師なし学習の任意の組合せで生成または更新された、作業負荷モデル、勧誘受付けのための確率モデル、ユーザモデル、エージェントモデル、または任意の他のそのようなモデルにおいて達成され得る。モデルをトレーニングするために使用されるいかなるそのようなデータも、自然言語データを生成するためにまたは機械学習モデルを更新するために、自然言語処理(たとえば、自然言語理解、自然言語推論など)の演算において使用され得る。そのようなデータは、次いで、(たとえば、改善されたエージェントおよびユーザ一致、改善されたキャパシティ利用、改善された対話勧誘などを伴う)対話勧誘と後続の対話とを管理する様々な態様のために、クライアントシステムによって使用されるか、あるいはネットワークデバイス上でまたはサーバ上で実行されているアプリケーションと共有され得る。
【0107】
[00118]機械学習システム(たとえば、システム950および952)は、ニューラルネットワーク、クラスタリングアルゴリズム、および他のそのような機械学習モデルを含む、異なるタイプの機械学習システムを含むことができる。機械学習データストア970からのデータは、異なるシステムによって異なる仕方で使用され得る。データは、接続管理システム150とのシステム100中の履歴対話から直接収集され得るが、ユーザに関する一般的に利用可能なデータ、履歴データの分析から導出されたデータ、(たとえば、受信されることと計算されることの両方が可能であり得るパラメータデータを含む)クライアント、ユーザ、またはサードパーティデータプロバイダから受信または入力されたデータからなど、他のソースから収集されたデータをも含むことができる。このデータは、次いで、エージェントとユーザとの間の対話勧誘および対話を管理するために、機械学習および人工知能分析のために使用され得る。たとえば、一実装形態では、目標のセットが識別され得る。そのような目標は、ユーザフィードバックスコアのターゲットセット、ターゲット時間対第1の通信、増加したユーザ使用レート、対話の特定のタイプもしくはグルーピングのためにクライアントによって設定されたカスタムターゲット、または他のそのような目標を含むことができる。カスタムターゲットは、たとえば、1つのタイプの対話のためのターゲット(たとえば、会議をスケジュールすること)と、異なるタイプの対話のための異なるタイプのターゲット(たとえば、技術サポート対話を解決すること)との1つのセットを含むことができる。そのような目標は、機械学習システムが対話勧誘を管理するようにトレーニングおよび実装されたとき、システムによる分析の一部であり得る。
【0108】
[00119]いくつかの例では、対話勧誘は、あるタイプの対話勧誘が、予想される対話のタイプに適合された特殊な機械学習システムを使用して一緒に処理されるように、予想される対話タイプによってグループ化されてよい。システムは、ネットワーク中のいくつかの利用可能なユーザに関して予測が行われ得るかどうかを決定するためのデータを使用することができる。たとえば、利用可能なデータは、100人のユーザが利用可能であり、それらのユーザのうちの30人がアポイントメントをスケジュールすることを予想され、15人が技術サポートを求めることを予想され、10人が製品に関する情報を希望することを予想され、システムがユーザの残りのセットのために許容できる予測を行うことが不可能であることを予測することができる。いくつかの例では、1つの機械学習モデルは、100人のユーザのデータを分析してこのデータを生成するために使用され、次いで、異なる機械学習モデルは、ユーザの各グルーピングを別々に処理するために使用される。各グループのための利用可能なパラメータは、次いで、いくつの対話勧誘を通信すべきかを決定するために、エージェント利用可能性、受付けに関連する予想される作業負荷、受付けレート、および任意の他のそのようなデータに一致するために使用され得る。
【0109】
[00120]一例では、いくつかのユーザデバイスは、通信システムを介してエージェントと対話するための以前の失敗した試行など、特定の情報に基づいて優先度を付けられ得る。そのような例では、ユーザデバイスは、対話を提供するためにエージェントキャパシティが利用可能でなかったときの、対話のためにユーザデバイスによって開始された要求の一部として受信された情報に基づいて識別され得る。通信システムが同じデバイスを後で識別したとき、通信システムに記憶されたデータは、ユーザデバイスが、対話のための以前のユーザデバイス要求以来、対話に携わっていないことを確認することができる。ユーザデバイスは、次いで、通信システムによって開始される対話勧誘について優先度を付けられ得る。他の例では、通信システムに記憶された他のそのような情報は、そのような優先度を設定するために使用され得る。
【0110】
[00121]いくつかの例では、データストアから選択された入力データの1つまたは複数の組合せが、システム目標のセットに関連付けられたオプションを選択するために処理され得る。一実装形態では、データの組合せは、履歴データを使用してトレーニングされた畳み込みニューラルネットワークを使用して処理され得る。そのようなニューラルネットワークをトレーニングすることは、オプション目標のセットに関連付けられた出力のセットを識別することと、目標に関連付けられた履歴データを中心としてネットワークを構築してニューラルネットワークをトレーニングすることと、次いで、通信サーバ805中にニューラルネットワークを実装することとを伴うことができる。データが受信されたとき、それは、ユーザおよびクライアント上の任意の追加の利用可能な情報と組み合わされ、次いで、対話勧誘を管理するために他のデータとともに処理され得る。
【0111】
[00122]別の実装形態では、オプション目標に関連して1つまたは複数のオプションまたはオプションのセットを分類するために、利用可能なデータに対して他のタイプの分類分析が実施され得る。これは、たとえば、オプション目標に一致する結果データとの履歴データ関連付けに基づいてグループ化され得る特定のタイプのデータセット(たとえば、マーチャント識別子値、購入量値、ロケーション値などのセット)を識別するために、ベイズ分類法を用いて実施され得る。システムにおけるリアルタイムユーザ存在のデータが受信されたとき、現在のリアルタイムユーザ対話のためのデータの分類分析が、上記で説明されたように利用可能なユーザをグループ化するために実施され得、識別されたクラスに基づいて、識別されたクラスに関連付けられたオプションのセットが選択され、対話勧誘に関連するさらなる分析および決定のために異なるシステムに提供され得る。
【0112】
[00123]本明細書で説明されるように、いくつかの例では、すべての利用可能なユーザが対話勧誘を受け付けた場合、現在利用可能なエージェントキャパシティが、すべての既存の起こり得る需要を満たすのに十分であるかどうかを決定するための初期分析が実施され得る。十分なエージェントキャパシティが利用可能である場合、さらなる分析は使用されない。十分なエージェントキャパシティが存在しない場合、追加の分析が使用され得る。いくつかの例では、利用可能なユーザの識別された数と、不十分なエージェントキャパシティとの間の不一致のレベルは、限られたエージェントリソースをネットワーク中の最も優先度の高い利用可能なユーザに適切にダイレクトするように、機械分析のレベルを増加させることをトリガすることができる。これは、ユーザデータを分析し、ユーザ優先度レベルのグループを生成するための、異なる機械学習システムを伴うことができる。分析が実施され、対話勧誘がファイナライズされると、次いで、勧誘は、通信サーバ805によって開始される。通信サーバ805は、次いで、応答レートに関するデータを収集することができ、エージェントキャパシティを対話受付け応答に一致させるために、以前の分析に従って受付け応答をルーティングすることができる。エージェントキャパシティがリアルタイムで変化し得るとき、通信サーバ805によるこのフォローアップは、受付けを対話勧誘にリアルタイムで適切にルーティングするためのさらなる動作を含むことができる。
【0113】
[00124]いくつかのそのようなシステムでは、機械学習システムによる勧誘推奨エンジン決定サポートは、モデルを更新し、意思決定のために使用されるトレーニングデータをテストするために、A/Bテストを実施するオプションとともに使用され得る。たとえば、異なるモデルは、異なるユーザグループで使用され得、結果が、対話の完了に続いて処理されて、受付けレート、(たとえば、対話勧誘を受け付けているユーザがしきい値時間内にエージェントに接続されたかどうかに関連する)対話一致性能、または他のそのような後処理性能分析などの情報が分析され得る。A演算およびB演算との間の性能は、次いで、演算の好ましいセット(たとえば、好ましい機械学習モデルもしくはトレーニングデータセット)を選択するために、または追加のテストのためのCグループを選択するために分析され得る。たとえば、一実装形態では、分類のセットは、履歴データから識別され得るが、特定の分類のためのオプションのセットは、オプション目標に関連付けられた、異なっているが所望の予想される結果を達成する複数の異なる組合せを有することができる。そのようなシステムでは、通信サーバ805は、オプションの異なる組合せの中から選択し、通信サーバ805を使用して対話するユーザとクライアントとのグループに提供されるオプションの特定のセットを識別することができる。異なるオプショングループが異なるユーザに提供され、後続の結果データがシステムによって受信されると、この後続の結果データは、将来の演算において、目標とルーティングとを設定するために、ならびに勧誘を管理するためにクライアントに提供されるオプションをさらに改良するために使用され得る。
【0114】
[00125]
図10は、いくつかの実施形態による対話勧誘を管理するための例示的なプロセスを示す。
図10の方法1000は、いくつかの例では通信サーバ805によって、または他の例ではネットワーク中のデバイスの組合せによって実施され得る。いくつかの例では、通信サーバ805のプロセッサ810のようなデバイスの処理回路は、方法1000の説明されるブロックの動作を実施する。いくつかの例では、方法1000は、通信サーバ805などのデバイスのメモリに記憶されたコンピュータ可読命令として実装され得る。プロセッサ810などのデバイスの処理回路によって命令が処理されたとき、プロセッサ(たとえば、および任意の追加の処理回路)は、方法1000の動作をデバイスに実施させることができる。
【0115】
[00126]方法1000は、複数の端末デバイスに関連付けられたキャパシティを決定するための動作を含むブロック1005を含む。いくつかの例では、キャパシティは、複数の端末デバイスに関連付けられたエージェントの作業負荷に基づく。追加の例では、予想される完了レート、または受付け遅延時間(たとえば、対話勧誘の送信と受付け応答との間の時間)中に予想される新しいキャパシティ利用可能性、現在の構成のための応答時間制限(たとえば、その時間の後に、勧誘が満了したと見なされ、キャパシティまたはエージェント利用可能性の新しい分析を使用することになる、対話勧誘の通信の後にくる時間)、受付け遅延時間内のエージェントスケジュール変更、あるいは他のそのような情報など、追加のキャパシティ基準が使用されてよい。
【0116】
[00127]方法1000は、1つまたは複数の基準に関連付けられたユーザデバイスへの過去の対話勧誘の履歴受付けデータにアクセスするための動作を含むブロック1010を含む。上記で説明されたように、このデータは、新しい対話提供演算の結果で周期的にまたは連続的に更新され得、アクセスは、履歴データへの更新を中心として構築され得る。加えて、対話タイプ、ユーザタイプ、顧客タイプ、または他のそのような分類タイプを中心として履歴データをセグメント化することを含めて、他のデータは、結果を改善するために使用され得る。
【0117】
[00128]方法1000は、ネットワーク中の現在のユーザデバイスの現在のデータにアクセスするための動作を含むブロック1015を含み、ここで、現在のデータは、現在のユーザデバイスと1つまたは複数の基準との間の関連付けを含む。まさに上記で説明されたように、このデータは、周期的にまたはリアルタイムで更新され得、アクセスは、現在のデータへのデータ更新を中心として構成され得る。いくつかの例では、アクセスまたは方法1000全体は、データ更新によってトリガされ得る。いくつかの例では、任意の動作は、周期的にスケジュールされ得るか、または方法1000の動作を実施するために必要とされるシステム(たとえば、プロセッサ)リソースに基づくことができる。
【0118】
[00129]方法1000は、履歴受付けデータと現在のユーザデバイスの現在のデータとに基づいて、利用可能な対話の現在の数を決定するための動作をもつブロック1020を含む。利用可能な対話のこの数は、機械学習データまたはモデル結果、統計データまたはモデリング、あるいは他のそのようなシステム分析の様々な組合せに基づくことができる。
【0119】
[00130]方法1000は、次いで、利用可能な対話の現在の数と履歴受付けデータとに従って生成された予測対話勧誘を使用して、エージェントと、現在のユーザデバイスのうちの1つまたは複数のデバイスとの間の対話を促進するための動作をもつブロック1025を含む。上記で説明されたように、これは、エージェントキャパシティと、システム中で識別された現在のユーザとの間の一致または不一致に基づいて、勧誘のセットを送信することを含むことができる。ユーザの利用可能な数が、予想されるキャパシティを超える場合、受付けレートの機械学習または統計的モデリングに基づいて、システムが扱い得るキャパシティを有するよりも大きい数の勧誘が送られ得る。これは、拒否(たとえば、否定的応答または無応答ユーザ)のモデルと、応答時間における予想される遅延をモデル化することの両方を含むことができる。これは、リアルタイムまたは即時応答のいくつかの予想、ならびに、送信される勧誘と、受信された勧誘を受け付ける応答との間に有意な遅延があるスタッガード応答を含むことができる。遅延は、勧誘と応答とのタイミング間でエージェントキャパシティに変化をもたらすことができ、そのような影響は、方法1000を実装する通信サーバまたは他のデバイスによってモデル化され得る。
【0120】
[00131]いくつかの例では、現在のデータは、ターゲットにされた対話勧誘を受信するために利用可能なネットワーク中の現在のユーザデバイスのためのネットワークを介して収集されるリアルタイムデータを含む。いくつかの例では、利用可能な対話の現在の数を決定することは、1つまたは複数の基準を含む履歴受付けデータを使用してトレーニングされた機械学習システムに、エージェントのキャパシティと、現在のユーザデバイスの現在のデータとを自動的に提供することと、機械学習システムから、利用可能な対話の現在の数の値を自動的に受信することとを含む。いくつかのそのような例では、機械学習システムは、履歴受付けデータを使用して、利用可能な対話の現在の数の値を動的に決定するようにトレーニングされた第1のニューラルネットワークと、履歴受付けデータを使用して、現在のユーザデバイスのうちの各デバイスの受付けの尤度を動的に決定するようにトレーニングされた第2のニューラルネットワークとを含む。
【0121】
[00132]いくつかの例では、エージェントと1つまたは複数のデバイスとの間の対話を促進することは、利用可能な対話の現在の数が現在のユーザデバイスの数よりも小さいと動的に決定することと、利用可能な対話の現在の数に一致する現在のユーザデバイスのサブセットを識別するために現在のユーザデバイスを自動的に分析すること、現在のユーザデバイスのサブセットのうちの各現在のユーザデバイスに、ターゲットにされた対話勧誘を自動的に通信することとを含む。いくつかの例では、現在のユーザデバイスのサブセットを識別するために現在のユーザデバイスを分析することは、ターゲットにされた対話勧誘の受付けの尤度に基づいて現在のユーザデバイスのうちの各デバイスに優先度を付けるために、過去の対話勧誘の履歴受付けデータと、現在のユーザデバイスのための1つまたは複数の基準とを分析することを含む。
【0122】
[00133]いくつかの例は、エージェントと1つまたは複数のデバイスとの間の対話の対話データを自動的に受信すること、対話データと履歴受付けデータとを使用して、更新された履歴受付けデータを生成することと、ネットワーク中の現在のユーザデバイスのための更新された現在のデータに自動的にアクセスすることと、更新された履歴受付けデータと、現在のユーザデバイスのための更新された現在のデータとに基づいて、利用可能な対話勧誘の更新された現在の数を動的に生成することとをさらに伴うことができる。
【0123】
[00134]追加の例は、繰り返し動作または介入動作を含むことができる。さらに、エージェントに関連付けられた端末デバイスと、ユーザに関連付けられたユーザネットワークデバイスとを含む、他のデバイスは、本明細書で説明される動作の各々のために、対応およびサポートする動作を実施することができる。したがって、説明される動作をサポートする追加のそのような動作は、本明細書で説明される例に従って可能である。
【0124】
[00135]
図11は、機械学習技法を使用してネットワークデバイス選択を向上させるためのネットワーク環境1100を表すブロック図を示す。ネットワーク環境1100は、端末デバイス1105と、通信サーバ1110と、ネットワークデバイス1115および1120とを含み得る。通信サーバ1110は、端末デバイス1105と少なくとも1つのネットワークデバイス1115または1120とが通信することを可能にする通信チャネルの確立を促進することができる。
【0125】
[00136]通信サーバ1110は、インテリジェントルーティングシステム1125と、勧誘推奨システム1130と、機械学習データストア1135とを含み得る。インテリジェントルーティングシステム1125と勧誘推奨システム1130との各々は、いくつかの動作を実装するための命令を実行するプロセッサとメモリとをもつ1つまたは複数のコンピューティングデバイスを含み得る。いくつかの実装形態では、インテリジェントルーティングシステム1125は、端末デバイス1105と通信するための勧誘を適切な宛先にインテリジェントにルーティングするように構成されたボットであり得る。インテリジェントルーティングシステム1125は、1つまたは複数の機械学習技法または人工知能技法に、メッセージをインテリジェントにルーティングさせるコードを実行するように構成された1つまたは複数のプロセッサを含み得る。いくつかの実装形態では、インテリジェントルーティングシステム1125は、端末デバイス1105と通信するための勧誘に関連付けられた宛先を予測するモデルをトレーニングするために、1つまたは複数の機械学習技法を実行することができる。
【0126】
[00137]非限定的な例として、インテリジェントルーティングシステム1125は、通信サーバ1110(たとえば、ユーザが様々なデバイスにわたって互いに通信することを可能にするように構成されたネイティブアプリケーション)によって確立または促進された通信チャネルを通して、端末デバイス1105のキャパシティを決定し得る。インテリジェントルーティングシステム1125は、上記で説明されたいくつかの実施形態に従って端末デバイス1105のキャパシティと利用可能性とを評価し得る。たとえば、インテリジェントルーティングシステム1125は、トレーニングされた機械学習モデルを使用して勧誘推奨システム1130とともに、勧誘を送信するためのキャパシティと基準とを評価し得る。以前に送信された勧誘の結果は、予測される宛先(たとえば、特定のネットワークデバイス1115または1120)を生成するために機械学習モデルに入力され得る。機械学習モデルは、ネットワークデバイス1115または1120から受信されるフィードバック信号1140に基づいて連続的にトレーニングされ得る。勧誘がネットワークデバイス1115によって受け付けられた場合、インテリジェントルーティングシステム1125は、受け付けられた勧誘のような厳密なまたは同様の基準を含む将来の勧誘が、送られるべき勧誘になることを予測するように、機械学習モデルをトレーニングし得る。しかしながら、インテリジェントルーティングシステム1125は、ネットワークデバイス1115が勧誘を受け付けなかったが、そうではなく、ネットワークデバイス1120が勧誘を受け付けたことを示すフィードバック信号1140を受信した場合、インテリジェントルーティングシステム1125は、ネットワークデバイス1120に関連付けられた厳密なまたは同様の基準を含む将来のメッセージが、送られるべき勧誘になるように、機械学習モデルをトレーニングすることができる。
【0127】
[00138]機械学習データストア1135は、1つまたは複数のネットワークデバイスから過去に受信された(たとえば、必ずしもすべてとは限らないが)一部または全部の勧誘と結果とを記憶し得る。さらに、機械学習データストア1135はまた、ネットワークデバイスとの以前の通信セッション中に端末デバイスまたはボットによって送信された一部または全部のメッセージを記憶し得る。機械学習データストア1135はまた、通信セッション中にネットワークデバイスによって端末デバイスに送信された一部または全部のメッセージを記憶し得る。いくつかの実装形態では、機械学習データストア1135は、通信サーバ1110で処理された(たとえば、通信サーバ1110によって送信されたかまたはそれにおいて受信された)すべてのメッセージのデータベースであり得る。
【0128】
[00139]勧誘推奨システム1130は、機械学習データストア1135に記憶された勧誘と結果とのデータベースを分析し得る。いくつかの実装形態では、勧誘推奨システム1130は、1つまたは複数の機械学習アルゴリズムまたは人工知能アルゴリズムを使用して機械学習データストア1135に記憶された勧誘を評価し得る。たとえば、勧誘推奨システム1130は、機械学習データストア1135に記憶された勧誘と結果とのデータベースに対して、K平均クラスタリング、平均シフトクラスタリング、ノイズのあるアプリケーションの密度ベース空間クラスタリング(DBSCAN)クラスタリング、混合ガウスモデル(GMM)を使用した期待値最大化(EM)クラスタリング、および他の好適な機械学習アルゴリズムなど、1つまたは複数のクラスタリングアルゴリズムを実行し得る。いくつかの実装形態では、送られた勧誘の結果を予測するために、リカレントニューラルネットワーク(RNN)または畳み込みニューラルネットワーク(CNN)が使用され得る。いくつかの実装形態では、勧誘推奨システム1130は、通信セッションに勧誘されたとき、すべての以前の勧誘を評価してネットワークデバイスからの結果を予測するために、サポートベクターマシン(SVM)、教師あり、半教師あり、アンサンブル技法、または教師なし機械学習技法を使用し得る。
【0129】
[00140]たとえば、勧誘推奨システム1130は、ネットワークデバイスから受信された識別データのコンテンツを評価し、評価の結果を、機械学習データストア1135に記憶された以前の勧誘と結果との1つまたは複数のクラスタと比較し得る。クラスタが識別されると、勧誘推奨システム1130は、信頼性しきい値に基づいて勧誘を受信するために最も関連するネットワークデバイスを識別することができる。いくつかの実施形態では、メッセージ推奨システム1130は、特定の勧誘が受け付けられる可能性があるかどうかを評価するために人工知能および機械学習を使用し得る。勧誘推奨システム1130は、ネットワークデバイスによって受け付けられた勧誘のクラスタを識別するために、機械学習データストア1135にアクセスすることができる。勧誘推奨システム1130は、信頼性しきい値に基づいて1つまたは複数のネットワークデバイスを選択することができる。非限定的な例として、信頼性アルゴリズムが、信頼性スコアを生成するために実行され得る。信頼性スコアは、割合の値であり得、ここで、割合が低いほど、勧誘が受け付けられる可能性はより低くなり、割合が高いほど、勧誘が受け付けられる可能性はより高くなる。最小の信頼性しきい値は、各発見されたパターンに関連する確実性または信用性の測度として定義され得る。さらに、信頼性アルゴリズムの一例は、アプリオリアルゴリズム、2つのデータセット間の類似度を示す類似度アルゴリズム、および他の好適な信頼性アルゴリズムであり得る。
【0130】
[00141]
図12は、いくつかの実施形態による対話勧誘を管理するための例示的なプロセスを示す。ステップ1205において、複数の端末デバイスに関連付けられたキャパシティが決定され得る。端末デバイスのキャパシティは、たとえば、所与の時間において特定の端末デバイスがそれらと対話し得る、ネットワークデバイスの最大数であり得る。端末デバイスのキャパシティは、任意の好適な方法を使用して決定され得る。たとえば、すべての端末デバイスは、特定の端末デバイスが別様に示さない限り、同じキャパシティ(たとえば、10)を有すると仮定され得る。いくつかの実施形態では、端末デバイスは、端末デバイスを動作させているエージェントの強みと弱点とに基づいて、端末デバイスを動作させているエージェントのエクスペリエンスと知識とに基づいて、などにより、異なるキャパシティを有し得る。たとえば、10年間のエクスペリエンスをもつエージェントは、所与の時間において10個の対話のキャパシティを有し得る一方で、1年間のエクスペリエンスをもつエージェントは、所与の時間において2つの対話のキャパシティを有し得る。
【0131】
[00142]ステップ1210において、利用可能な対話勧誘の数が決定され得る。利用可能な対話勧誘の数は、複数の端末デバイスに関連付けられたキャパシティを使用して決定され得る。たとえば、端末デバイスのキャパシティが10個のネットワークデバイスであり、端末デバイスがすでに2つのネットワークデバイスと対話している場合、利用可能な対話勧誘の数は8であり得る。利用可能な対話勧誘の数は、任意の好適な方法を使用して決定され得る。たとえば、端末デバイスの利用可能性とキャパシティとは、いくつかの実施形態では通信サーバによって自動的に追跡され得る。いくつかの実施形態では、端末デバイスは、必要に応じて、規則的、周期的ベースで、または要求ベースで、それらの利用可能性で通信サーバをピングし得る。
【0132】
[00143]ステップ1215において、利用可能な対話勧誘が送信され得る。利用可能な対話勧誘は、いくつかの実施形態では、ユーザによって動作されるネットワークデバイスに送信され得る。利用可能な対話勧誘は、ネットワークデバイス上に表示される1つまたは複数の対話型要素など、任意の好適な形態でネットワークデバイスのユーザインターフェース上に表示され得る。たとえば、対話勧誘は、以前にアクセスされたリソース、ウェブサイト、ウェブページ、またはアプリケーション上にオーバーレイされるポップアップウィンドウとして表示され得る。別の例では、対話勧誘は、スクリーン全体が対話勧誘によって占有されるように、以前にアクセスされたリソース、ウェブサイト、ウェブページ、またはアプリケーションインターフェースを置き換え得る。いくつかの実施形態では、対話勧誘は、視覚的と可聴的の両方で、または視覚的表現なしに可聴的に表示され得る。
【0133】
[00144]ステップ1220において、受付けデータが受信され得る。受付けデータは、1つまたは複数のネットワークデバイスによる利用可能な対話勧誘の1つまたは複数の受付けに対応し得る。たとえば、対話勧誘は、「あなたはエージェントに話したいですか?」と述べることがある。対話勧誘の受付けは、「はい」、チェックマーク、サムズアップ、緑色ボタンなど、肯定的な対話型要素のネットワークデバイス上のユーザ選択を含み得る。1つまたは複数のネットワークデバイスは、基準に関連付けられ得る。基準は、識別データ、個人識別情報、対話に関係するコンテキスト情報(たとえば、対話の長さ、ブラウズ履歴など)など、ネットワークデバイスまたはネットワークデバイスを動作させているユーザに対応する任意のデータであり得る。
【0134】
[00145]ステップ1225において、統計データを決定するために受付けデータが使用され得る。統計データは、基準に関連付けられた追加のネットワークデバイスが、利用可能な対話勧誘を受け付けるという尤度に関連付けられ得る。たとえば、受付けデータは、ニューヨーク州ニューヨーク市にいるユーザに関連付けられたネットワークデバイスが、一般的集団よりも対話勧誘を受け付ける可能性が高かったことを示し得る。したがって、ニューヨーク州ニューヨーク市に関連付けられた追加のネットワークデバイスは、機会がそれらに展開された場合、利用可能な対話勧誘を受け付ける可能性があると見なされ得る。
【0135】
[00146]ステップ1230において、1つまたは複数の追加のネットワークデバイスが決定され得る。決定することは、統計データを使用することを含み得る。1つまたは複数のネットワークデバイスは、基準に関連付けられ得る。たとえば、通信サーバと対話するネットワークデバイスは、それらの対話がニューヨーク州ニューヨーク市から発信しているかどうかを決定するために監視され得る。それらのネットワークデバイスは選択され得る。
【0136】
[00147]ステップ1235において、1つまたは複数の追加のネットワークデバイスへの送信のために利用可能な、利用可能な対話勧誘の数が更新され得る。利用可能な対話勧誘の数は、受付けデータに従って更新され得る。たとえば、200個の利用可能な対話勧誘があり、それらのうちの12個が受け付けられた場合、利用可能な対話勧誘の数は、190に減少し得る。したがって、190個の利用可能な対話勧誘は、1つまたは複数の追加のネットワークデバイスに利用可能であり得る。いくつかの実施形態では、更新された利用可能な対話勧誘は、1つまたは複数の追加のネットワークデバイスに展開され得る。それらの対話勧誘の結果(たとえば、受け付け済み、問題解決、購入実行など)は、対話勧誘を受け付ける可能性が最も高く、および/または対話勧誘が受け付けられた後に、問題の解決、購入を完了すること、より多くの情報を要求することなどの肯定的なアクションを取る可能性が最も高いネットワークデバイスについての推論を引き出し、それの基準のモデルを構築するために、追跡され、機械学習アルゴリズムに供給されてよい。
【0137】
[00148]上記の説明では、実施形態の完全な理解を提供するための具体的な詳細が与えられている。しかしながら、実施形態は、これらの具体的な詳細なしに実践され得ることを理解されたい。たとえば、実施形態を不必要な詳細で不明瞭にしないために、回路はブロック図として示されることがある。他の事例では、実施形態を不明瞭にすることを回避するために、よく知られている回路、プロセス、アルゴリズム、構造、および技法は、不必要な詳細なしに示されることがある。
【0138】
[00149]
図13は、本明細書で説明される例によるシステムの様々な構成要素を実装するために使用され得る例示的なコンピューティングデバイスを示す。これは、対話勧誘の管理のために使用される、本明細書で説明される任意の端末デバイス、ユーザデバイス、ネットワークデバイス、クライアントデバイス、通信デバイス、サーバ、または他のデバイスを含むことができる。
図13は、いくつかの実装形態による、バスなどの接続1306を使用して互いに電気通信している様々な構成要素を含むコンピューティングシステムのアーキテクチャ1300を示している。例示的なシステムアーキテクチャ1300は、処理ユニット(CPUまたはプロセッサ)1304と、ROM1318およびRAM1316などのシステムメモリ1320を含む様々なシステム構成要素をプロセッサ1304に結合するシステム接続1306とを含む。システムアーキテクチャ1300は、プロセッサ1304に直接接続されたか、プロセッサ1304に近接しているか、またはプロセッサ1304の一部として組み込まれた、高速メモリのキャッシュ1302を含むことができる。システムアーキテクチャ1300は、プロセッサ1304による迅速なアクセスのために、メモリ1320および/または記憶デバイス1308からキャッシュ1302にデータをコピーすることができる。このようにして、キャッシュは、データを待っている間のプロセッサ1304遅延を回避する性能の向上を提供することができる。これらおよび他のモジュールは、様々なアクションを実施するようにプロセッサ1304を制御することができ、またはプロセッサ1304を制御するように構成され得る。
【0139】
[00150]他のシステムメモリ1320も、使用のために利用可能であり得る。メモリ1320は、異なる性能特性を有する、複数の異なるタイプのメモリを含むことができる。プロセッサ1304は、任意の汎用プロセッサと、プロセッサ1304ならびに専用プロセッサを制御するように構成された、記憶デバイス1308に記憶されたサービス1 1310、サービス2 1312、およびサービス3 1314など、ハードウェアまたはソフトウェアサービスとを含むことができ、ここで、ソフトウェア命令は、実際のプロセッサ設計に組み込まれる。プロセッサ1304は、複数のコアまたはプロセッサ、バス、メモリコントローラ、キャッシュなどを含んでいる、完全自己完結型コンピューティングシステムであってもよい。マルチコアプロセッサは、対称的であっても、または非対称的であってもよい。
【0140】
[00151]コンピューティングシステムアーキテクチャ1300とのユーザ対話を可能にするために、入力デバイス1322は、音声用のマイクロフォン、ジェスチャまたはグラフィック入力用のタッチセンシティブスクリーン、キーボード、マウス、モーション入力、音声など、任意の数の入力機構を表すことができる。出力デバイス1324も、当業者に知られているいくつかの出力機構のうちの1つまたは複数などであってよい。いくつかの事例では、マルチモーダルシステムは、ユーザが、コンピューティングシステムアーキテクチャ1300と通信するために複数のタイプの入力を提供することを可能にすることができる。通信インターフェース1326は、概して、ユーザ入力とシステム出力とを統制および管理することができる。任意の特定のハードウェア構成上で動作することに対する制限はなく、したがって、ここでの基本的特徴は、改善されたハードウェア構成またはファームウェア構成が開発されるにつれて、それらで容易に代用され得る。
【0141】
[00152]記憶デバイス1308は、不揮発性メモリであり、磁気カセット、フラッシュメモリカード、固体メモリデバイス、デジタル多用途ディスク、カートリッジ、RAM1316、ROM1318、およびそれらのハイブリッドなど、コンピュータによってアクセス可能であるデータを記憶することができるハードディスクまたは他のタイプのコンピュータ可読媒体であり得る。
【0142】
[00153]記憶デバイス1308は、プロセッサ1304を制御するためのサービス1310、1312、1314を含むことができる。他のハードウェアモジュールまたはソフトウェアモジュールが企図される。記憶デバイス1308は、システム接続1306に接続され得る。一態様では、特定の機能を実施するハードウェアモジュールは、その機能を実行するために、プロセッサ1304、接続1306、出力デバイス1324などの必要なハードウェア構成要素に関連して、コンピュータ可読媒体に記憶されたソフトウェア構成要素を含むことができる。
【0143】
[00154]上記で説明された技法、ブロック、ステップおよび手段の実装は、様々な仕方で行われ得る。たとえば、これらの技法、ブロック、ステップおよび手段は、ハードウェア、ソフトウェア、またはそれらの組合せで実装され得る。ハードウェア実装の場合、処理ユニットは、1つまたは複数の特定用途向け集積回路(ASIC)、デジタル信号プロセッサ(DSP)、デジタル信号処理デバイス(DSPD)、プログラマブル論理デバイス(PLD)、フィールドプログラマブルゲートアレイ(FPGA)、プロセッサ、コントローラ、マイクロコントローラ、マイクロプロセッサ、上記で説明された機能を実施するように設計された他の電子ユニット、および/あるいはそれらの組合せの中で実装され得る。
【0144】
[00155]また、実施形態の部分は、フローチャート、流れ図、データフロー図、構造図、またはブロック図として示されるプロセスとして説明され得ることに留意されたい。フローチャートは、動作を逐次的なプロセスとして説明し得るが、動作の多くは、並行してまたは同時に実施され得る。加えて、動作の順序は並べ替えられ得る。プロセスは、それの動作が完了したときに終了されるが、図に含まれていない追加のステップを有し得る。プロセスは、メソッド、関数、プロシージャ、サブルーチン、サブプログラムなどに対応することができる。プロセスが関数に対応する場合、それの終了は、呼出し側関数またはメイン関数への関数の復帰に対応する。
【0145】
[00156]さらに、実施形態は、ハードウェア、ソフトウェア、スクリプト言語、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語、および/またはそれらの任意の組合せによって実装され得る。ソフトウェア、ファームウェア、ミドルウェア、スクリプト言語、および/またはマイクロコードで実装されたとき、必要なタスクを実施するためのプログラムコードまたはコードセグメントは、記憶媒体などの機械可読媒体に記憶され得る。コードセグメントまたは機械実行可能命令は、プロシージャ、関数、サブプログラム、プログラム、ルーチン、サブルーチン、モジュール、ソフトウェアパッケージ、スクリプト、クラス、あるいは、命令、データ構造、および/またはプログラムステートメントの任意の組合せを表すことができる。コードセグメントは、情報、データ、引数、パラメータ、および/またはメモリ内容を渡すことおよび/または受信することによって、別のコードセグメントまたはハードウェア回路に結合され得る。情報、引数、パラメータ、データなどは、メモリ共有、メッセージパッシング、チケットパッシング、ネットワーク送信などを含む、任意の好適な手段を介して渡され、フォワーディングされ、または送信され得る。
【0146】
[00157]ファームウェアおよび/またはソフトウェア実装の場合、方法は、本明細書で説明された機能を実施するモジュール(たとえば、プロシージャ、関数など)を用いて実装され得る。命令を有形に具備するいかなる機械可読媒体も、本明細書で説明された方法を実装する際に使用され得る。たとえば、ソフトウェアコードは、メモリに記憶され得る。メモリは、プロセッサの内部またはプロセッサの外部に実装され得る。本明細書で使用される「メモリ」という用語は、長期メモリ、短期メモリ、揮発性メモリ、不揮発性メモリ、または他の記憶媒体のいずれかのタイプを指し、メモリの任意の特定のタイプまたはメモリの数、あるいはメモリが保管される媒体のタイプに限定されるべきではない。
【0147】
[00158]その上、本明細書で開示される「記憶媒体」、「ストレージ」または「メモリ」という用語は、読取り専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、磁気RAM、コアメモリ、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリデバイス、および/または情報を記憶するための他の機械可読媒体を含む、データを記憶するための1つまたは複数のメモリを表すことができる。「機械可読媒体」という用語は、限定はされないが、ポータブルまたは固定記憶デバイス、光記憶デバイス、ワイヤレスチャネル、ならびに/あるいは、命令および/またはデータを含んでいるかまたは搬送する、記憶することが可能な様々な他の記憶媒体を含む。
【0148】
[00159]本開示の原理について、上記では特定の装置と方法とに関して説明されたが、本明細書は、本開示の範囲に対する限定としてではなく、例として作成されたものにすぎないことを明確に理解されたい。
【国際調査報告】