(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-01-11
(45)【発行日】2022-01-24
(54)【発明の名称】メッセージングプラットフォームのためのイベント追跡
(51)【国際特許分類】
G06Q 50/00 20120101AFI20220117BHJP
G06F 9/54 20060101ALI20220117BHJP
G06F 15/00 20060101ALI20220117BHJP
【FI】
G06Q50/00 300
G06F9/54 C
G06F15/00 470
(21)【出願番号】P 2020501523
(86)(22)【出願日】2017-07-17
(86)【国際出願番号】 US2017042445
(87)【国際公開番号】W WO2019013826
(87)【国際公開日】2019-01-17
【審査請求日】2020-05-13
(32)【優先日】2017-07-14
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】508178054
【氏名又は名称】メタ プラットフォームズ, インク.
(74)【代理人】
【識別番号】110002974
【氏名又は名称】特許業務法人World IP
(72)【発明者】
【氏名】クマール, アイシャン
(72)【発明者】
【氏名】アンダーソン, ジョン スティーブン
(72)【発明者】
【氏名】テンパンディアン, ティラック
(72)【発明者】
【氏名】ディロン, マンディープ
(72)【発明者】
【氏名】ナンダクマール, アビシェーク
(72)【発明者】
【氏名】ホン, ヨンソン
(72)【発明者】
【氏名】アントヌッチ, アレッシア
(72)【発明者】
【氏名】バウェジャ, ヒマーンシュ
(72)【発明者】
【氏名】プルーティサランフォン, ナタパ
【審査官】原 忠
(56)【参考文献】
【文献】米国特許出願公開第2016/0104159(US,A1)
【文献】中国特許出願公開第106506322(CN,A)
【文献】特開2011-018316(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00 - 99/00
G06F 9/54
G06F 15/00
(57)【特許請求の範囲】
【請求項1】
1つまたは複数のプロセッサによって実行可能な複数の命令を記憶する非一時的コンピュータ可読記憶媒体であって、前記複数の命令は、前記1つまたは複数のプロセッサによって実行されたとき、前記1つまたは複数のプロセッサが、
メッセージングプラットフォームを介した第1の当事者と第2の当事者との間の会話を可能にすることであって、前記会話が、前記メッセージングプラットフォームを介して前記第1の当事者と前記第2の当事者との間で交換された1つまたは複数のメッセージを含む、会話を可能にすることと、
前記メッセージングプラットフォームによって、前記1つまたは複数のメッセージのうちの第1のメッセージに基づいて、前記第1の当事者と前記第2の当事者との間のイベントの発生を決定することであって、前記イベントが、前記メッセージングプラットフォーム外で発生し、前記会話から生
じ、かつトランザクションである、イベントの発生を決定することと、
ドキュメントを含む前記第1のメッセージの通信を検出することと、
前記ドキュメントから情報を抽出することであって、前記イベントの発生を決定することが、抽出した前記情報に基づいて前記イベントの発生を決定することを含む、情報を抽出することと、
前記メッセージングプラットフォームによって、前記イベントの発生を決定することの一部として、または前記イベントの発生の決定に応答して、前記イベントについての情報を取得することと、
前記イベントに
ついての情
報が前記第1の当事者に関連付けられる
ように、
当該情報を記憶することと、
記憶された前記イベントについての情報を使用して、前記第1の当事者のためのレポートを生成するこ
とと
を含む処理を実施することを引き起こす、非一時的コンピュータ可読記憶媒体。
【請求項2】
前記処理は、
前記メッセージングプラットフォームを介して、前記第1の当事者または前記第2の当事者が、前記ドキュメントから抽出され得ない情報を入れるためのグラフィカルユーザインターフェースを提供すること
をさらに含む、請求項
1に記載の非一時的コンピュータ可読記憶媒体。
【請求項3】
前記処理は、
機械学習モデルを使用して、前記ドキュメントが前記イベントの前記発生を示すと決定すること
をさらに含む、請求項
1に記載の非一時的コンピュータ可読記憶媒体。
【請求項4】
前記処理は、
前記ドキュメントが1つまたは複数の基準のセットを満たすと決定すること
をさらに含む、請求項
1に記載の非一時的コンピュータ可読記憶媒体。
【請求項5】
前記ドキュメントが1つまたは複数の基準の前記セットを満たすと決定することは、
前記ドキュメントが特定のドキュメントタイプのものであると決定すること
を含む、請求項
4に記載の非一時的コンピュータ可読記憶媒体。
【請求項6】
前記処理は、
前記イベントの前記発生を決定したことに応答して、前記メッセージングプラットフォームによって提供されたユーザインターフェースが、前記第1の当事者または前記第2の当事者に提示されることを引き起こすこと
をさらに含む、請求項1に記載の非一時的コンピュータ可読記憶媒体。
【請求項7】
前記ユーザインターフェースが、前記イベントに
ついての情報を入れることを可能にするグラフィカルユーザインターフェースである、請求項
6に記載の非一時的コンピュータ可読記憶媒体。
【請求項8】
入れられた
前記情報が、前記イベントに関連付けられた値である、請求項
7に記載の非一時的コンピュータ可読記憶媒体。
【請求項9】
前記レポートが、前記第1の当事者を伴う第2のイベントに関連付けられた情報をさらに含み、前記第2のイベントが、前記メッセージングプラットフォームを介した別の会話の結果として前記メッセージングプラットフォームの内部で発生した、請求項1に記載の非一時的コンピュータ可読記憶媒体。
【請求項10】
前記処理は、
前記イベントに
ついての第2の情
報が前記第2の当事者に関連付けられる
ように、前
記第2の情報を記憶することと、
前記イベントについての前記第2の情報を含む、前記第2の当事者のためのレポートを生成するこ
とと
をさらに含む、請求項1に記載の非一時的コンピュータ可読記憶媒体。
【請求項11】
メッセージングプラットフォームを介した第1の当事者と第2の当事者との間の会話を可能にすることであって、前記会話が、前記メッセージングプラットフォームを介して前記第1の当事者と前記第2の当事者との間で交換された1つまたは複数のメッセージを含む、会話を可能にすることと、
前記メッセージングプラットフォームによって、前記1つまたは複数のメッセージのうちの第1のメッセージに基づいて、前記第1の当事者と前記第2の当事者との間のイベントの発生を決定することであって、前記イベントが、前記メッセージングプラットフォーム外で発生し、前記会話から生
じ、かつトランザクションである、イベントの発生を決定することと、
ドキュメントを含む前記第1のメッセージの通信を検出することと、
前記ドキュメントから情報を抽出することであって、前記イベントの発生を決定することが、抽出した前記情報に基づいて前記イベントの発生を決定することを含む、情報を抽出することと、
前記メッセージングプラットフォームによって、前記イベントの発生を決定することの一部として、または前記イベントの発生の決定に応答して、前記イベントについての情報を取得することと、
前記イベントに
ついての情
報が前記第1の当事者に関連付けられる
ように、
当該情報を記憶することと、
記憶された前記イベントについての情報を使用して、前記第1の当事者のためのレポートを生成するこ
とと
を含む、方法。
【請求項12】
機械学習モデルを使用して、前記ドキュメントが前記イベントの前記発生を示すと決定すること
をさらに含む、請求項
11に記載の方法。
【請求項13】
前記イベントの前記発生を決定したことに応答して、前記メッセージングプラットフォームによって提供されたユーザインターフェースが、前記第1の当事者または前記第2の当事者に提示されることを引き起こすこと
をさらに含み、前記ユーザインターフェースが、前記イベントに
ついての情報を入れることを可能にするグラフィカルユーザインターフェースである、請求項
11に記載の方法。
【請求項14】
1つまたは複数のプロセッサと、
命令を含む非一時的コンピュータ可読媒体と
を備えるシステムであって、前記命令は、前記1つまたは複数のプロセッサによって実行されたとき、前記1つまたは複数のプロセッサ
に、
メッセージングプラットフォームを介した第1の当事者と第2の当事者との間の会話を可能にすることであって、前記会話が、前記メッセージングプラットフォームを介して前記第1の当事者と前記第2の当事者との間で交換された1つまたは複数のメッセージを含む、会話を可能にすることと、
前記メッセージングプラットフォームによって、前記1つまたは複数のメッセージのうちの第1のメッセージに基づいて、前記第1の当事者と前記第2の当事者との間のイベントの発生を決定することであって、前記イベントが、前記メッセージングプラットフォーム外で発生し、前記会話から生
じ、かつトランザクションである、イベントの発生を決定することと、
ドキュメントを含む前記第1のメッセージの通信を検出することと、
前記ドキュメントから情報を抽出することであって、前記イベントの発生を決定することが、抽出した前記情報に基づいて前記イベントの発生を決定することを含む、情報を抽出することと、
前記メッセージングプラットフォームによって、前記イベントの発生を決定することの一部として、または前記イベントの発生の決定に応答して、前記イベントについての情報を取得することと、
前記イベントに
ついての情
報が前記第1の当事者に関連付けられる
ように、
当該情報を記憶することと、
記憶された前記イベントについての情報を使用して、前記第1の当事者のためのレポートを生成するこ
とと
を実施させる、システム。
【発明の詳細な説明】
【技術分野】
【0001】
優先権出願の相互参照
本出願は、その全体が参照により本明細書に組み込まれる、2017年7月14日に出願された米国出願第15/650,567号の優先権を主張する。
【背景技術】
【0002】
ソーシャルネットワーキングシステム(SNS)は、そのユーザが、SNSによって提供される様々なインターフェースを通して互いと対話し、情報を共有することを可能にし得る。たとえば、SNSは、ユーザが互いにメッセージを送るためのメッセージングプラットフォームを提供し得る。メッセージングプラットフォームを使用するユーザ間の会話は、メッセージングプラットフォームまたはソーシャルネットワーキングシステム外で発生するイベントを生じ得る。従来、そのようなイベントを追跡し、さらには、それらのイベントを会話または会話に関与するユーザに関連付けるためのやり方はない。
【発明の概要】
【0003】
本開示は、一般に、メッセージングプラットフォーム上のイベント追跡に関し、より詳細には、メッセージングプラットフォーム上の会話から生じ、メッセージングプラットフォームの外部で発生する、イベントを追跡することに関する。
【0004】
イベント追跡のための、方法、システム、1つまたは複数のプロセッサによって実行可能なプログラム、コードまたは命令を記憶する非一時的コンピュータ可読記憶媒体などを含む、様々な発明の実施形態が、本明細書で説明される。第1の当事者と第2の当事者とが、メッセージングプラットフォームを介してメッセージを交換し得る。メッセージングプラットフォームを介した当事者間の会話は、イベントの発生を生じ得、そのイベントはメッセージングプラットフォームの外部で発生する。結果として、メッセージングプラットフォームは、そのようなイベントの発生に気づいていない。いくつかの実施形態では、メッセージングプラットフォームがそのようなイベントの発生に関する情報を受信することを可能にする技法が提供される。これは、メッセージングプラットフォームが、イベントを会話および会話に関与する当事者に関連付けることを可能にする。
【0005】
一実施形態では、メッセージングプラットフォームは、第1の当事者または第2の当事者が、それらの当事者を伴うイベントがメッセージングプラットフォームの外部で発生したことを指示することを可能にする、ユーザ選択可能オプション(たとえば、ボタン)を提供し得る。ユーザ選択可能オプションが選択されると、そのオプションを選択した当事者がイベントに関係する情報を入力するためのユーザインターフェースが提示され得る。いくつかの例では、第1の当事者と第2の当事者との間の同じメッセージングプラットフォーム会話の一部として、情報が入力され得る。
【0006】
別の実施形態では、メッセージングプラットフォームは、メッセージングプラットフォームを介した会話においてドキュメントがいつ交換されたかを検出するように設定され得る。ドキュメントが検出されると、メッセージングプラットフォームは、会話の当事者が、ドキュメントによって指示されたイベントに関係する情報を入力することを可能にする、ユーザインターフェースをその当事者に提供し得る。ユーザインターフェースは、ドキュメントが交換されたときはいつでも提示され得るが、いくつかの実施形態では、ユーザインターフェースは、ドキュメントがイベントの発生を指示すると決定されたときに提示され得る。
【0007】
また別の実施形態では、メッセージングプラットフォームによって容易にされた会話において第1の当事者と第2の当事者との間で交換されたドキュメントから、情報が抽出され得る。抽出された情報は、メッセージングプラットフォームの外部でイベントがそれらの当事者間で発生したかどうかを決定するために使用され得る。抽出された情報は、イベントが発生した日付、イベントの一部として交換された値の金額など、イベントに関係する属性についての値を決定するためにも使用され得る。いくつかの実施形態では、当事者の一方または両方が、ドキュメントから抽出された情報から決定され得ない情報など、イベントに関係する情報を入力するためのユーザインターフェースが提供され得る。
【0008】
したがって、様々な実施形態では、メッセージングプラットフォーム(または、ソーシャルネットワーキングシステム(SNS)など、メッセージングプラットフォームと通信するかまたはメッセージングプラットフォームを提供するシステム)は、メッセージングプラットフォームによって容易にされた会話から生じるイベントに関係する情報を受信および記憶し得るが、それらのイベントは、メッセージングプラットフォーム(またはソーシャルネットワーキングシステム)外で発生する。イベント関係情報は、次いで、様々な目的のために使用され得る。たとえば、イベント関係情報は、当事者を伴って発生し、当事者がメッセージングプラットフォームを使用して参加した会話から生じた、イベントを識別する、当事者(たとえば、第1の当事者または第2の当事者)のためのレポートを生成するために使用され得る。たとえば、当事者を伴った複数のイベントに関連付けられた1つまたは複数のメトリックのセットを識別するレポートが生成され得る。たとえば、メトリックは、メッセージングプラットフォームを使用して会話として開始したイベントから当事者のために生成された合計値の金額を含み得る(メッセージングプラットフォームの内部および外部で発生したイベントの内訳(breakdown)を含む)。別の例として、当事者がメッセージングプラットフォームを使用して参加した会話の何パーセントがイベントを生じたかを識別する、コンバージョンレート(conversion rate)レポートが当事者のために生成され得る。イベントに関係する様々な他の情報およびメトリックも、これらのレポートを介して提供され得る。
【0009】
いくつかの実施形態によれば、メッセージングプラットフォームの外部で発生するイベントを追跡するための技法が提供され得る。メッセージングプラットフォームは、第1の当事者と第2の当事者との間の会話を可能にし得る。限定するものではないが、会話は、メッセージングプラットフォームを介して第1の当事者と第2の当事者との間で交換された1つまたは複数のメッセージを含み得る。第1の当事者と第2の当事者との間のイベントの発生が決定され得、そのイベントは、メッセージングプラットフォーム外で発生し、会話から生じる。イベントに関係する情報が、記憶され得る。いくつかの実施形態では、情報は記憶され得、その結果、その情報は第1の当事者または第2の当事者に関連付けられる。この情報は、次いで、第1の当事者のためのまたは第2の当事者のためのレポートを生成するために使用され得、そのレポートは、イベントに関係する情報を含む。
【0010】
いくつかの実施形態では、メッセージングプラットフォームは、イベントの発生を指示するためのユーザ選択可能オプション(たとえば、ボタン)をもつグラフィカルユーザインターフェースを提供し得る。メッセージングプラットフォームを介して会話に関与する当事者は、イベントが発生したことを指示するために、ユーザ選択可能オプションを選択し得る。いくつかの実施形態では、ユーザ選択可能オプションが選択されると、メッセージングプラットフォームは、イベントがいつ発生したか、イベントに関与するサービスまたは商品、イベントのために交換された値(たとえば、売上金額)、イベントが発生したロケーション、およびイベントに関係する他の情報など、イベントに関係する情報を当事者が入れることを可能にする、グラフィカルユーザインターフェースを表示し得る。
【0011】
別の例として、イベントに関係する当事者間の、およびメッセージングプラットフォームを介した会話を介して当事者間で交換された、メッセージの通信が検出され得る。交換について、会話においてある当事者によって別の当事者に送られたメッセージは、イベントの発生を指示するドキュメント(たとえば、領収書)を含み得る。いくつかの実施形態では、そのようなメッセージを検出するために、およびドキュメントがイベントの発生を指示すると決定するために、1つまたは複数の機械学習モデルが使用され得る。いくつかの他の実施形態では、イベントの発生を決定するために、ドキュメントを含んでいる当事者間のメッセージ交換およびドキュメント自体が、1つまたは複数の基準のセットに基づいて分析され得る。1つの例示的な例では、1つまたは複数の基準のセットは、ドキュメントが特定のドキュメントタイプのものであるかどうかを決定し得る。
【0012】
いくつかの実施形態では、当事者間の会話において交換されたメッセージ中に含まれるドキュメントから、情報が抽出され得る。抽出された情報に基づいて、メッセージングプラットフォームは、イベントの発生を決定し得る。イベントに関係する特定の情報が、ドキュメントから抽出された情報から決定され得ないとき、第1の当事者または第2の当事者が特定の情報を入れるためのグラフィカルユーザインターフェースが、メッセージングプラットフォームを介して提供され得る。
【0013】
前に説明されたように、イベントに関係する情報は記憶され得、その結果、その情報は第1の当事者または第2の当事者に関連付けられる。記憶された情報に基づいて、第1の当事者のためにレポートが生成され得、そのレポートは、イベントに関係し、潜在的に、第1の当事者が参加したメッセージングプラットフォームを介した会話から生じた第1の当事者を伴う他のイベントに関係する、情報を含む。たとえば、第1の当事者が商品の売り手である場合、第1の当事者のために生成されたレポートは、メッセージングプラットフォームを使用してその売り手によって行われた会話(たとえば、セールスピッチ(sales pitch))から発生した売上げを識別し得る。レポートは、売上げがメッセージングプラットフォーム(またはメッセージングプラットフォームを提供するソーシャルネットワーキングシステム)外で発生した場合、売り手がメッセージングプラットフォームを使用して関与した会話の何パーセントが売り手の実際の売上げを生じたかなど、その売り手についてのコンバージョンレートを識別する情報を含み得る。
【0014】
レポートは、第2の当事者のためにも生成され得る。たとえば、第2の当事者が商品の買い手である場合、その商品がその買い手を伴うメッセージングプラットフォームを介した会話の結果として買われた、その買い手が関与した買いイベントを識別するために生成されたレポート。
【0015】
本発明の概要は、請求される主題の主要な特徴または不可欠な特徴を識別するものではなく、請求される主題の範囲を決定するために独立して使用されるものでもない。本主題は、本特許の明細書全体、任意のまたはすべての図面、および各請求項の、適切な部分を参照することによって、理解されるべきである。
【0016】
上記のことは、他の特徴および例とともに、以下で、以下の明細書、請求項、および添付の図面において、より詳細に説明される。
【0017】
以下の図を参照しながら、例示的な実施形態が以下で詳細に説明される。
【図面の簡単な説明】
【0018】
【
図1】いくつかの実施形態による、イベントを追跡するために実施される処理を示す簡略フローチャートである。
【
図2】いくつかの実施形態による、ユーザフィードバックに基づいてイベントの発生を決定するために実施される処理を示す簡略フローチャートである。
【
図3】メッセージングプラットフォームの外部でのイベントの発生を指示するためのユーザ選択可能オプションを含むグラフィカルユーザインターフェースの一例を示す図である。
【
図4A】いくつかの実施形態による、メッセージングプラットフォームを介した会話を提示するためのユーザインターフェースの別の例を示す図である。
【
図4B】いくつかの実施形態による、メッセージングプラットフォームを介した会話を提示するためのユーザインターフェースの別の例を示す図である。
【
図5】いくつかの実施形態による、メッセージ中のドキュメントに基づいてイベントの発生を決定するために実施される処理を示す簡略フローチャートである。
【
図6A】イベントの発生を指示するドキュメントの例を示す図である。
【
図6B】イベントの発生を指示するドキュメントの例を示す図である。
【
図7】メッセージングプラットフォームの外部でのイベントの発生を決定したことに応答して提示されるユーザ選択可能オプションを含む、グラフィカルユーザインターフェースの一例を示す図である。
【
図8】いくつかの実施形態による、イベントに関係する情報を入れるためのグラフィカルユーザインターフェースの一例を示す図である。
【
図9】いくつかの実施形態による、メッセージ中のドキュメントからの抽出された情報に基づいてイベントの発生を決定するために実施される処理を示す簡略フローチャートである。
【
図10】いくつかの実施形態による、イベントに関係する情報を確認するためのグラフィカルユーザインターフェースの一例を示す図である。
【
図11A】いくつかの実施形態による、メッセージングプラットフォームを介した会話の当事者に送られた確認メッセージの一例を示す図である。
【
図11B】いくつかの実施形態による、イベントに関係する詳細を提示するためのページの一例を示す図である。
【
図12】いくつかの実施形態による、当事者のためのレポートの一例を示す図である。
【
図13】いくつかの実施形態による、当事者のためのレポートの別の例を示す図である。
【
図14】いくつかの実施形態による、イベントを追跡するための分散型システムの簡略ブロック図である。
【
図15】本明細書で説明されるいくつかの実施形態を実装するために使用され得る、コンピュータシステムの一例を例示する図である。
【発明を実施するための形態】
【0019】
以下の説明では、説明の目的で、いくつかの発明の実施形態の完全な理解を提供するために、具体的な詳細が記載される。ただし、様々な実施形態がこれらの具体的な詳細なしに実施され得ることは明らかであろう。図および説明は、限定するものではない。「例示的」という単語は、本明細書では、「例、事例、または例示の働きをすること」を意味するために使用される。「例示的」として本明細書で説明されるいかなる実施形態または設計も、必ずしも他の実施形態または設計よりも好ましいまたは有利であると解釈されるべきであるとは限らない。
【0020】
本開示は、一般に、メッセージングプラットフォーム上のイベント追跡に関し、より詳細には、メッセージングプラットフォーム上の会話から生じ、メッセージングプラットフォームの外部で発生する、イベントを追跡することに関する。
【0021】
イベント追跡のための、方法、システム、1つまたは複数のプロセッサによって実行可能なプログラム、コードまたは命令を記憶する非一時的コンピュータ可読記憶媒体などを含む、様々な発明の実施形態が、本明細書で説明される。第1の当事者と第2の当事者とが、メッセージングプラットフォームを介してメッセージを交換し得る。メッセージングプラットフォームを介した当事者間の会話は、イベントの発生を生じ得、そのイベントはメッセージングプラットフォームの外部で発生する。結果として、メッセージングプラットフォームは、そのようなイベントの発生に気づいていない。いくつかの実施形態では、メッセージングプラットフォームがそのようなイベントの発生に関する情報を受信することを可能にする技法が提供される。これは、メッセージングプラットフォームが、イベントを会話および会話に関与する当事者に関連付けることを可能にする。
【0022】
一実施形態では、メッセージングプラットフォームは、第1の当事者または第2の当事者が、それらの当事者を伴うイベントがメッセージングプラットフォームの外部で発生したことを指示することを可能にする、ユーザ選択可能オプション(たとえば、ボタン)を提供し得る。ユーザ選択可能オプションが選択されると、そのオプションを選択した当事者がイベントに関係する情報を入力するためのユーザインターフェースが提示され得る。いくつかの例では、第1の当事者と第2の当事者との間の同じメッセージングプラットフォーム会話の一部として、情報が入力され得る。
【0023】
別の実施形態では、メッセージングプラットフォームは、メッセージングプラットフォームを介した会話においてドキュメントがいつ交換されたかを検出するように設定され得る。ドキュメントが検出されると、メッセージングプラットフォームは、会話の当事者が、ドキュメントによって指示されたイベントに関係する情報を入力することを可能にする、ユーザインターフェースをその当事者に提供し得る。ユーザインターフェースは、ドキュメントが交換されたときはいつでも提示され得るが、いくつかの実施形態では、ユーザインターフェースは、ドキュメントがイベントの発生を指示すると決定されたときに提示され得る。
【0024】
また別の実施形態では、メッセージングプラットフォームによって容易にされた会話において第1の当事者と第2の当事者との間で交換されたドキュメントから、情報が抽出され得る。抽出された情報は、メッセージングプラットフォームの外部でイベントがそれらの当事者間で発生したかどうかを決定するために使用され得る。抽出された情報は、イベントが発生した日付、イベントの一部として交換された値の金額など、イベントに関係する属性についての値を決定するためにも使用され得る。いくつかの実施形態では、当事者の一方または両方が、ドキュメントから抽出された情報から決定され得ない情報など、イベントに関係する情報を入力するためのユーザインターフェースが提供され得る。
【0025】
したがって、様々な実施形態では、メッセージングプラットフォーム(または、ソーシャルネットワーキングシステム(SNS)など、メッセージングプラットフォームと通信するかまたはメッセージングプラットフォームを提供するシステム)は、メッセージングプラットフォームによって容易にされた会話から生じるイベントに関係する情報を受信および記憶し得るが、それらのイベントは、メッセージングプラットフォーム(またはソーシャルネットワーキングシステム)外で発生する。イベント関係情報は、次いで、様々な目的のために使用され得る。たとえば、イベント関係情報は、当事者を伴って発生し、当事者がメッセージングプラットフォームを使用して参加した会話から生じた、イベントを識別する、当事者(たとえば、第1の当事者または第2の当事者)のためのレポートを生成するために使用され得る。たとえば、当事者を伴った複数のイベントに関連付けられた1つまたは複数のメトリックのセットを識別するレポートが生成され得る。たとえば、メトリックは、メッセージングプラットフォームを使用して会話として開始したイベントから当事者のために生成された合計値の金額を含み得る(メッセージングプラットフォームの内部および外部で発生したイベントの内訳を含む)。別の例として、当事者がメッセージングプラットフォームを使用して参加した会話の何パーセントがイベントを生じたかを識別する、コンバージョンレートレポートが当事者のために生成され得る。イベントに関係する様々な他の情報およびメトリックも、これらのレポートを介して提供され得る。
【0026】
いくつかの実施形態によれば、メッセージングプラットフォームの外部で発生するイベントを追跡するための技法が提供され得る。メッセージングプラットフォームは、第1の当事者と第2の当事者との間の会話を可能にし得る。限定するものではないが、会話は、メッセージングプラットフォームを介して第1の当事者と第2の当事者との間で交換された1つまたは複数のメッセージを含み得る。第1の当事者と第2の当事者との間のイベントの発生が決定され得、そのイベントは、メッセージングプラットフォーム外で発生し、会話から生じる。イベントに関係する情報が、記憶され得る。いくつかの実施形態では、情報は記憶され得、その結果、その情報は第1の当事者または第2の当事者に関連付けられる。この情報は、次いで、第1の当事者のためのまたは第2の当事者のためのレポートを生成するために使用され得、そのレポートは、イベントに関係する情報を含む。
【0027】
いくつかの実施形態では、メッセージングプラットフォームは、イベントの発生を指示するためのユーザ選択可能オプション(たとえば、ボタン)をもつグラフィカルユーザインターフェースを提供し得る。メッセージングプラットフォームを介して会話に関与する当事者は、イベントが発生したことを指示するために、ユーザ選択可能オプションを選択し得る。いくつかの実施形態では、ユーザ選択可能オプションが選択されると、メッセージングプラットフォームは、イベントがいつ発生したか、イベントに関与するサービスまたは商品、イベントのために交換された値(たとえば、売上金額)、イベントが発生したロケーション、およびイベントに関係する他の情報など、イベントに関係する情報を当事者が入れることを可能にする、グラフィカルユーザインターフェースを表示し得る。
【0028】
別の例として、イベントに関係する当事者間の、およびメッセージングプラットフォームを介した会話を介して当事者間で交換された、メッセージの通信が検出され得る。交換について、会話においてある当事者によって別の当事者に送られたメッセージは、イベントの発生を指示するドキュメント(たとえば、領収書)を含み得る。いくつかの実施形態では、そのようなメッセージを検出するために、およびドキュメントがイベントの発生を指示すると決定するために、1つまたは複数の機械学習モデルが使用され得る。いくつかの他の実施形態では、イベントの発生を決定するために、ドキュメントを含んでいる当事者間のメッセージ交換およびドキュメント自体が、1つまたは複数の基準のセットに基づいて分析され得る。1つの例示的な例では、1つまたは複数の基準のセットは、ドキュメントが特定のドキュメントタイプのものであるかどうかを決定し得る。
【0029】
いくつかの実施形態では、当事者間の会話において交換されたメッセージ中に含まれるドキュメントから、情報が抽出され得る。抽出された情報に基づいて、メッセージングプラットフォームは、イベントの発生を決定し得る。イベントに関係する特定の情報が、ドキュメントから抽出された情報から決定され得ないとき、第1の当事者または第2の当事者が特定の情報を入れるためのグラフィカルユーザインターフェースが、メッセージングプラットフォームを介して提供され得る。
【0030】
前に説明されたように、イベントに関係する情報は記憶され得、その結果、その情報は第1の当事者または第2の当事者に関連付けられる。記憶された情報に基づいて、第1の当事者のためにレポートが生成され得、そのレポートは、イベントに関係し、潜在的に、第1の当事者が参加したメッセージングプラットフォームを介した会話から生じた第1の当事者を伴う他のイベントに関係する、情報を含む。たとえば、第1の当事者が商品の売り手である場合、第1の当事者のために生成されたレポートは、メッセージングプラットフォームを使用してその売り手によって行われた会話(たとえば、セールスピッチ)から発生した売上げを識別し得る。レポートは、売上げがメッセージングプラットフォーム(またはメッセージングプラットフォームを提供するソーシャルネットワーキングシステム)外で発生した場合、売り手がメッセージングプラットフォームを使用して関与した会話の何パーセントが売り手の実際の売上げを生じたかなど、その売り手についてのコンバージョンレートを識別する情報を含み得る。
【0031】
レポートは、第2の当事者のためにも生成され得る。たとえば、第2の当事者が商品の買い手である場合、その商品がその買い手を伴うメッセージングプラットフォームを介した会話の結果として買われた、その買い手が関与した買いイベントを識別するために生成されたレポート。
【0032】
図1は、いくつかの実施形態による、イベントを追跡するために実施される処理を示す簡略フローチャートである。
図1に示されている処理は、それぞれのシステムの1つまたは複数の処理ユニット(たとえば、プロセッサ、コア)によって実行されるソフトウェア(たとえば、コード、命令、プログラム)、ハードウェア、またはそれらの組合せで実装され得る。ソフトウェアは、非一時的記憶媒体に(たとえば、メモリデバイスに)記憶され得る。
図1で提示され、以下で説明される方法は、例示的で非限定的であるものとする。
図1は、特定のシーケンスまたは順序で発生する様々な処理ステップを示しているが、これは限定するものではない。いくつかの実施形態では、それらのステップは何らかの異なる順序で実施され得るか、またはいくつかのステップが並列に実施されることもある。
【0033】
図1に示されている実施形態では、処理は、110において、第1の当事者と第2の当事者との間の会話がメッセージングプラットフォームを介して可能にされたとき、トリガされ得る。会話を可能にすることは、第1の当事者と第2の当事者との間でメッセージを送ること、および/または、第1の当事者に関連付けられたデバイスと第2の当事者に関連付けられたデバイスとの上でメッセージを表示するためのグラフィカルユーザインターフェースを提供することを含み得る。会話は、
図3、
図4A、
図7、および
図11Aに示され、それらの図について以下で説明されるように、メッセージングプラットフォームを介して第1の当事者と第2の当事者との間で交換された1つまたは複数のメッセージを含み得る。本明細書の説明は、第1の当事者と第2の当事者とを参照し得るが、会話が3つ以上の当事者を含み得ることを認識されたい。
【0034】
メッセージングプラットフォームは、
図14を参照しながら以下で説明されるように、ソーシャルネットワーキングシステム(SNS)によって提供され得る。ただし、メッセージングプラットフォームはSNSとは別個であり得ることを認識されたい。さらに、本開示が、メッセージングプラットフォームまたはSNSのいずれかによって実施されるステップまたは動作について説明するとき、それらのステップまたは動作は、メッセージングプラットフォーム、SNS、異なるサーバ、第1の当事者に関連付けられたデバイス、第2の当事者に関連付けられたデバイス、またはそれらの任意の組合せによって実施され得ることを認識されたい。メッセージングプラットフォームがSNSによって提供されるとき、第1の当事者および/または第2の当事者は、各々、SNSに登録されたエンティティ(たとえば、ユーザ、団体など)であり得る。
【0035】
120において、第1の当事者と第2の当事者との間のイベントの発生が決定され得る。(コンバージョンイベントと呼ばれることがある)イベントは、メッセージングプラットフォーム外で発生し、会話から生じ得る。たとえば、当事者が、会話のメッセージに応答してイベントを発生させ得る。本明細書で説明される実施形態より前に、メッセージングプラットフォームは、メッセージングプラットフォームの外部で発生したイベントを追跡するためのやり方を有しないであろう。
【0036】
1つの例示的な例では、第1の当事者は第2の当事者にメッセージを送り得、そのメッセージは、第2の当事者が、第2の当事者によって提供される製品および/またはサービスのために値を交換することを要求する。値は、メッセージングプラットフォームとは別個のチャネルを介して第2の当事者に送られ得る。たとえば、第2の当事者は、銀行に連絡して、その銀行から第1の当事者に資金を送り得る。第2の当事者は、次いで、送金の完了を指示するメッセージを第1の当事者に送り得る。そのメッセージに基づいて、コンバージョンイベントが発生したことが決定され得る。イベントの発生が決定されるための多くのやり方があるが、数例が、
図2、
図5、および
図9に関して以下で説明される。
【0037】
図2は、いくつかの実施形態による、ユーザフィードバックに基づいてイベントの発生を決定するために実施される処理を示す簡略フローチャートである。
図2に示されている処理は、それぞれのシステムの1つまたは複数の処理ユニット(たとえば、プロセッサ、コア)によって実行されるソフトウェア(たとえば、コード、命令、プログラム)、ハードウェア、またはそれらの組合せで実装され得る。ソフトウェアは、非一時的記憶媒体に(たとえば、メモリデバイスに)記憶され得る。
図2で提示され、以下で説明される方法は、例示的で非限定的であるものとする。
図2は、特定のシーケンスまたは順序で発生する様々な処理ステップを示しているが、これは限定するものではない。いくつかの実施形態では、それらのステップは何らかの異なる順序で実施され得るか、またはいくつかのステップが並列に実施されることもある。
【0038】
図2に示されている実施形態では、処理は、210において、ユーザ選択可能オプションをもつ第1のグラフィカルユーザインターフェースがメッセージングプラットフォームを介して提供されたとき、トリガされ得、ユーザ選択可能オプションは、メッセージングプラットフォームの外部でのイベントの発生を指示するためのものである。メッセージングプラットフォームは第1の当事者と第2の当事者との間の会話を可能にし得、その会話は、
図1について上記で説明されたように、メッセージングプラットフォームを介して第1の当事者と第2の当事者との間で交換された1つまたは複数のメッセージを含む。いくつかの実施形態では、1つまたは複数のメッセージのうちの少なくともいくつかは、当事者がユーザ選択可能オプションを選択しながらメッセージの少なくとも一部分を閲覧し得るように、ユーザ選択可能オプションとともに提示され得る。
【0039】
図3は、いくつかの実施形態による、メッセージングプラットフォームの外部でのイベントの発生を指示するためのユーザ選択可能オプション330を含むグラフィカルユーザインターフェース(GUI)300の一例を示している。上記で説明されたように、GUI300は、第1の当事者と第2の当事者との間の会話に関連付けられ得る。その会話は、メッセージングプラットフォームを介して提供され得る。ユーザ選択可能オプション330は、会話中常に可視であり得る。いくつかの実施形態では、ユーザ選択可能オプション330は、当事者のうちの一方(すなわち、第1の当事者または第2の当事者)にのみ可視であり得る。他の実施形態では、ユーザ選択可能オプション330は、両方の当事者(すなわち、第1の当事者および第2の当事者)に可視であり得る。
【0040】
1つの例示的な例では、会話は、「白いワイシャツを3枚購入いたします」と述べる、第2の当事者からのメッセージ(たとえば、第1のメッセージ310)で開始することができる。その会話は、「承りました。それでは、弊社の銀行口座宛てに300ドルをご送金いただけますでしょうか。K銀行口座番号12929395です」と述べる、第1の当事者からの、第1のメッセージ310への応答(たとえば、第2のメッセージ320)をさらに含み得る。わかるように、その会話は、3枚の白いワイシャツについてのトランザクションに関連付けられ得る。
【0041】
図4Aは、いくつかの実施形態による、メッセージングプラットフォームの外部でのイベントの発生を指示するためのユーザ選択可能オプション440を含むグラフィカルユーザインターフェース(GUI)400の一例を示している。GUI300と同様に、GUI400は、第1の当事者と第2の当事者との間の会話に関連付けられ得る。第2の当事者は、(第1のメッセージ410中に含まれるような)製品またはサービスを発注することを要求し得る。第1の当事者は、(第2のメッセージ420中に含まれるような)第2の当事者によって行われた申込みの受付けを指示し得る。第2の当事者は、次いで、(たとえば、第3のメッセージ430中に例示されているような)第2の当事者から第1の当事者への送金の確認を含むメッセージを送り得る。そして、
図3について上記で説明されたのと同様に、GUI400は、ユーザ選択可能オプション440を含み得る。ユーザ選択可能オプション440はユーザ選択可能オプション330とは異なるが、両方とも、(たとえば、トランザクションが完了したという)イベントの発生を指示し得る。
【0042】
図4Bは、
図4A中のユーザ選択可能オプション440の選択から生じ得るGUI450の一例を示している。GUI450は、GUI400の少なくとも一部分の上に提示される部分460を含み得る。部分460は、複数のユーザ選択可能オプションを含み得、各ユーザ選択可能オプションは、異なるイベントを指示するためのものである。たとえば、第1のユーザ選択可能オプション470は、第1の当事者が、第2の当事者が第1の当事者に値を送ることを望むことを指示し得る。第2のユーザ選択可能オプション480は、(コンバージョンイベントと呼ばれることがある)第1の当事者が、第2の当事者によって送られた値を受け取ったことを指示し得る。
【0043】
再び
図2を参照すると、220において、処理は、当事者(たとえば、第1の当事者または第2の当事者)によるユーザ選択可能オプションの選択を指示する信号を受信することをさらに含み得る。上記で説明されたように、ユーザ選択可能オプションの選択は、メッセージングプラットフォームの外部でのイベントの発生を指示し得る。
【0044】
230において、第2のGUIが、メッセージングプラットフォームを介して提供され得る。第2のGUIは、当事者が、イベントに関係する情報を入れることを可能にするためのものであり得る。入れられ得る情報の例は、イベントに関連付けられた値、イベントの説明などを含む。次いで、240において、イベントに関係する情報が、第2のグラフィカルユーザインターフェースを介して受信され得る。たとえば、当事者は、イベントに関係する情報がメッセージングプラットフォームに送られることを引き起こし得る。
【0045】
図2、
図3、
図4A、および
図4Bで説明された実施形態は、会話中常にユーザ選択可能オプションを提示するが、本明細書で説明されるいくつかの実施形態は、ユーザ選択可能オプションをいつ提示すべきかを決定する。たとえば、イベントがメッセージングプラットフォームの外部で発生した可能性を決定するために、1つまたは複数のメッセージが分析され得る。イベントが発生した可能性がある場合、ユーザ選択可能オプションが、会話の1つまたは複数の当事者に提供され得る。
【0046】
図5は、いくつかの実施形態による、メッセージ中のドキュメントに基づいてイベントの発生を決定するために実施される処理を示す簡略フローチャートである。
図5に示されている処理は、それぞれのシステムの1つまたは複数の処理ユニット(たとえば、プロセッサ、コア)によって実行されるソフトウェア(たとえば、コード、命令、プログラム)、ハードウェア、またはそれらの組合せで実装され得る。ソフトウェアは、非一時的記憶媒体に(たとえば、メモリデバイスに)記憶され得る。
図5で提示され、以下で説明される方法は、例示的で非限定的であるものとする。
図5は、特定のシーケンスまたは順序で発生する様々な処理ステップを示しているが、これは限定するものではない。いくつかの実施形態では、それらのステップは何らかの異なる順序で実施され得るか、またはいくつかのステップが並列に実施されることもある。
【0047】
図5に示されている実施形態では、処理は、510において、ドキュメントをもつメッセージの通信が、メッセージングプラットフォームを介した第1の当事者と第2の当事者との間の会話において検出されたとき、トリガされ得る。ドキュメントは、画像、ポータブルファイルドキュメント(PDF)、ワードドキュメント、スプレッドシート、パワーポイントドキュメント、テキストファイルなどであり得る。
図6Aおよび
図6Bは、各々、イベントの発生を指示するドキュメントの一例を示している。
図6Aのドキュメントは、第1の銀行から第2の銀行への値の送金についての領収書の写真を例示している。
図6Bのドキュメントは、第1の銀行から第2の銀行への値の送金についての領収書のスクリーンショットを例示している。これらの図は考えられるドキュメントを示しているが、他のドキュメントがイベントの発生を指示し得ることを認識されたい。
【0048】
再び
図5を参照すると、520において、メッセージがメッセージングプラットフォーム外でのイベントの発生を示すと決定され得る。たとえば、メッセージおよび/またはドキュメントは、そのメッセージがメッセージングプラットフォームの外部でのイベントの発生を示すかどうかを決定するために、機械学習モデルに入力され得る。そのような例では、機械学習モデルの出力は、イベントがメッセージングプラットフォームの外部で発生した(たとえば、ドキュメントがイベントの発生を指示する)かどうかの分類であり得る。たとえば、ドキュメントに関連付けられたメタデータ、ドキュメントタイプ、ドキュメント名などが、ドキュメントを分類するために機械学習モデルによって使用され得る。別の例では、機械学習モデルがドキュメントをイベントの発生を示すものとして分類し得るように、イベントの発生を示す複数のドキュメントが、機械学習モデルのためのトレーニングデータとして使用され得る。そのような例では、イベントの発生を示さない複数のドキュメントも、機械学習モデルをトレーニングするための、(どのドキュメントがイベントを示しどのドキュメントがイベントを示さないかを指示するラベルとともに)入力として使用され得る。対応するラベルとともにドキュメントを有することによって、機械学習モデルは、イベントの発生を指示するドキュメントとイベントの発生を指示しないドキュメントとの間でどのように区別すべきかを学習し得る。1つの例示的な例では、機械学習モデルは、領収書を認識するために使用され得る。いくつかの例では、機械学習モデルの代わりに、1つまたは複数の基準のセットが、メッセージがメッセージングプラットフォームの外部でのイベントの発生を示すかどうかを決定するために使用され得る。その1つまたは複数の基準は、機械学習モデルがその決定において使用するものと同様であり得る。
【0049】
いくつかの例では、ただメッセージおよび/またはドキュメントを使用するのではなく、そのメッセージおよび/またはドキュメントの周りのコンテキストが、イベントがメッセージングプラットフォームの外部で発生したかどうかを決定するために使用され得る。たとえば、そのメッセージの前にまたはそのメッセージの後に送られたメッセージが、イベントがメッセージングプラットフォームの外部で発生したかどうかを決定するために使用され得る。第1の当事者または第2の当事者のいずれかに関する、ソーシャルネットワーキングシステムによって知られている情報など、他の情報も使用され得る。
【0050】
メッセージがイベントの発生を示すと決定したことに応答して、(
図3で説明されたユーザ選択可能オプションと同様の)ユーザ選択可能オプションが、グラフィカルユーザインターフェースにおいて提示され得る。ただし、
図3の場合とは異なり、このユーザ選択可能オプションは、メッセージがイベントの発生を示すと決定された後にのみ可視であり得る。
【0051】
図7は、メッセージングプラットフォームの外部でのイベントの発生を決定したことに応答して提示されるユーザ選択可能オプション730を含む、グラフィカルユーザインターフェース700の一例を示している。グラフィカルユーザインターフェース700は、メッセージングプラットフォームによって提供される第1の当事者と第2の当事者との間の会話を含み得る。その会話は、「支払いを済ませました」と述べる第1のメッセージ710を含み得る。その会話は、ドキュメント(たとえば、画像、ポータブルファイルドキュメント(PDF)、ワードドキュメント、スプレッドシート、パワーポイントドキュメント、テキストファイルなど)を含む第2のメッセージ730をさらに含み得る。
【0052】
第1のメッセージ710および/または第2のメッセージ730に基づいて、イベントの発生がメッセージングプラットフォームの外部で発生したと決定され得る。たとえば、第1のメッセージ710は、支払いが当事者に提供されたことを指示し得る。別の例では、第2のメッセージ730中のドキュメントが、イベントの発生を示すと決定され得る。そのような例では、ドキュメントは、メッセージングプラットフォームの外部のサービスを使用して第1の当事者に300ドルを支払った第2の当事者のための領収書であり得る。たとえば、第2の当事者は、第1の当事者に300ドルを送るために、その当事者たちの銀行に関連付けられたアプリケーションを使用していることがある。ユーザ選択可能オプション730は、イベントが発生したことを確認するために使用され得る。
【0053】
ユーザ選択可能オプション730を選択することによって、(以下で説明されるような)グラフィカルユーザインターフェースが、イベントに関係する情報を入れるかまたはドキュメントから抽出された情報を提示するかのいずれかのために、提示され得る。
【0054】
再び
図5を参照すると、530において、当事者が、イベントに関係する情報を入れることを可能にするために、メッセージングプラットフォームを介してグラフィカルユーザインターフェース(GUI)が提供され得る。イベントに関係する情報の例は、値、説明、1つまたは複数の当事者の名前、タイムスタンプ、銀行名などを含む。540において、イベントに関係する情報が、GUIを介して受信され得る。
【0055】
図8は、いくつかの実施形態による、イベントに関係する情報を入れるためのグラフィカルユーザインターフェース(GUI)800の一例を示している。GUI800は、イベントが発生したと決定された後に(たとえば、ユーザ選択可能オプション330が選択されたとき、メッセージがイベントの発生を指示したと決定されたときなど)、提示され得る。GUI800は、当事者が、イベントに関連付けられた値810を入れることを可能にし得る。GUI800は、当事者が、イベントについての説明820を入れることをも可能にし得る。値810および/または説明820がGUI800に入れられた後に、確認のユーザ選択可能オプション830が選択されて、値810および/または説明820が記憶され得、その結果、値810および/または説明820は第1の当事者および/または第2の当事者に関連付けられる。
【0056】
図9は、いくつかの実施形態による、メッセージ中のドキュメントからの抽出された情報に基づいてイベントの発生を決定するために実施される処理を示す簡略フローチャートである。
図9に示されている処理は、それぞれのシステムの1つまたは複数の処理ユニット(たとえば、プロセッサ、コア)によって実行されるソフトウェア(たとえば、コード、命令、プログラム)、ハードウェア、またはそれらの組合せで実装され得る。ソフトウェアは、非一時的記憶媒体に(たとえば、メモリデバイスに)記憶され得る。
図9で提示され、以下で説明される方法は、例示的で非限定的であるものとする。
図9は、特定のシーケンスまたは順序で発生する様々な処理ステップを示しているが、これは限定するものではない。いくつかの実施形態では、それらのステップは何らかの異なる順序で実施され得るか、またはいくつかのステップが並列に実施されることもある。
【0057】
図9に示されている実施形態では、処理は、910において、第1の当事者と第2の当事者との間のメッセージの通信が検出されたとき、トリガされ得、メッセージは、ドキュメントを含み、メッセージングプラットフォームを介して通信される。上記で説明されたように、ドキュメントの例は、
図7および
図8に示され得る。
【0058】
920において、ドキュメントから情報が抽出される。その情報は、ピクセル値、ドキュメント名、メッセージングプラットフォームの外部でのイベントの発生に関連付けられた値、イベントの説明、銀行名、タイムスタンプ、または、ドキュメントから抽出され得る他の情報を含み得る。ドキュメントからの情報を認識するための多くのやり方があることを認識されたいが、一例では、自動コンテンツ認識技法が使用され得る。
【0059】
930において、抽出された情報に基づいて、イベントが発生したかどうかが決定され得る。たとえば、抽出された情報、および/またはドキュメントは、イベントがメッセージングプラットフォームの外部で発生したかどうかを決定するために、機械学習モデルに入力され得る。たとえば、機械学習モデルが、イベントが発生したかどうかを決定し得るように、イベントの発生を示す抽出された情報の複数の例が、機械学習モデルのためのトレーニングデータとして使用され得る。いくつかの例では、機械学習モデルの代わりに、1つまたは複数の基準のセットが、イベントがメッセージングプラットフォームの外部で発生したかどうかを決定するために使用され得る。その1つまたは複数の基準は、機械学習モデルがその決定において使用するものと同様であり得る。
【0060】
940において、イベントに関するより多くの情報が必要とされるかどうかが決定され得る。たとえば、イベントに関係する何らかの情報が、抽出された情報から欠落していることがある。より多くの情報が必要とされない場合、950において、第1のユーザインターフェースが表示され得、第1のユーザインターフェースは、当事者が、抽出された情報の精度を確認することを可能にする。
【0061】
より多くの情報が必要とされると決定された場合、960において、第2のユーザインターフェースが表示され得、第2のユーザインターフェースは、当事者が、イベントに関係する追加情報を入れることを可能にする。その追加情報は、抽出された情報に加えて必要とされる情報に対応し得る。
【0062】
970において、イベントに関係する追加情報は、第2のユーザインターフェースを介して受信され得る。次いで、その追加情報が受信された後に、980において、第1のユーザインターフェースが表示され得、第1のユーザインターフェースは、当事者が、抽出された情報および追加情報の精度を確認することを可能にする。
【0063】
図10は、いくつかの実施形態による、イベントに関係する情報を確認するためのグラフィカルユーザインターフェース(GUI)1000の一例を示している。GUI1000は、メッセージングプラットフォームを介して第1の当事者と第2の当事者との間で通信されたメッセージ中のドキュメントから情報が抽出された後に、提示され得る。特に、GUI1000中に含まれる情報が、抽出された情報から識別され得る。たとえば、ユーザがGUI1000を使用する際に金額を入れる必要がないように、値1010がドキュメントから直接抽出され得る。さらに、どんなイベントがメッセージングプラットフォームの外部で発生したかについて説明し得る説明1020が、ユーザが説明を入れる必要なしに、ドキュメントから直接抽出され得る。GUI1000は、情報が当事者によって入れられた後にも提示され得る。
【0064】
GUI1000は、確認のユーザ選択可能オプション1030をさらに含み得る。確認のユーザ選択可能オプション1030の選択に応答して、(記憶された情報と呼ばれる)値1010および/または説明1020が記憶され得、その結果、記憶された情報は第1の当事者および/または第2の当事者に関連付けられる。GUI1000は、2つのタイプの情報を例示しているが、より多いまたはより少ないタイプの情報がGUI1000中に含まれ得ることを認識されたい。たとえば、銀行名、タイムスタンプ、関与した当事者の名前、または、イベントに関係する他の情報が、GUI1000中に含まれ得る。
図10は
図9の後に説明されるが、抽出された情報は、ドキュメントがイベントの発生を示すかどうかを識別するためにではなく、GUI1000中に表示されるべきコンテンツを提供するために使用され得ることを認識されたい。たとえば、ドキュメントは、
図5で上記で説明されたように、そのドキュメントから抽出されたもの以外の情報に基づいて、イベントを示すと決定され得る。
【0065】
図11Aは、いくつかの実施形態による、メッセージングプラットフォームを介した会話の当事者に送られた確認メッセージ1120の一例を示している。その会話は第1の当事者と第2の当事者との間のものであり得、確認メッセージ1120は、メッセージングプラットフォーム(またはメッセージングプラットフォーム(たとえば、ソーシャルネットワーキングシステム)に関連付けられたシステム)がメッセージングプラットフォームの外部でイベントが発生したと決定したことに応答して、第1の当事者および/または第2の当事者に送られた。
【0066】
1つの例示的な例では、第2の当事者は、ドキュメントを含む第1のメッセージ1110を送っていることがある。第1のメッセージ1110に応答して、イベントがメッセージングプラットフォームの外部で発生したと決定されていることがある。たとえば、会話の当事者は、イベントが発生したことを、ユーザ選択可能オプションを使用して指示していることがある。別の例では、メッセージングプラットフォームは、第1のメッセージ1110に基づいて、イベントが発生したと決定していることがある。
【0067】
確認メッセージ1120は、当事者に、会話の別の当事者が確認メッセージ1120を見ないように、送られ得る。たとえば、確認メッセージ1120は、第1の当事者に可視であるが、第2の当事者に可視ではないことがある。
【0068】
確認メッセージ1120は、イベントに関係する情報を含み得る。たとえば、確認メッセージ1120は、値1122、ステータス1124などを含み得る。そのような例では、ステータス1124は、イベントに関する情報を指示し得る。確認メッセージ1120は、
図11Bに示されているような、イベントに関係するさらなる詳細を閲覧するためのユーザ選択可能オプション1126をさらに含み得る。
【0069】
図11Bは、いくつかの実施形態による、イベントに関係する詳細を提示するためのページ1130の一例を示している。その詳細は、メッセージングプラットフォームを介した第1の当事者と第2の当事者との間の会話におけるメッセージ中に含まれるドキュメントから抽出されていることがある。その詳細は、会話の当事者(たとえば、第1の当事者または第2の当事者)によって入れられていることもある。その詳細は、当事者のうちの1つまたは複数の名前(参照番号1140)、値1150、説明1160、ステータス1170、注文番号1180などを含み得る。ただし、より多いまたはより少ない詳細が、ページ1130中に含まれ得ることを認識されたい。
【0070】
再び
図1を参照すると、130において、処理は、イベントに関係する情報に基づいて1つまたは複数のアクションを実施することをさらに含み得る。たとえば、その情報はデータベースに記憶され得、その結果、その情報は第1の当事者または第2の当事者に関連付けられる。別の例では、その情報の少なくとも一部分が、(
図11Aに例示されているように)第1の当事者または第2の当事者に送られたメッセージ中に含まれ得る。また別の例では、その情報は、第1の当事者または第2の当事者にレポートの形式で提示されるために、他の情報とともに、統合(aggregate)されるか、要約(summarize)されるか、または場合によっては収集(collect)され得る。
【0071】
図12は、いくつかの実施形態による、当事者のためのレポートの一例を示している。そのレポートは、3月7日から3月13日の時間フレームの間に発生した注文に関する情報を含む。1つの例示的な例では、そのレポートは、当事者がその時間フレーム中に100個の注文を完了したことを指示する。そのレポートは、その当事者が100個の注文から22,140ドルを稼得したことをも指示し得る。したがって、そのレポートは、100個の注文から稼得された金額を識別するために、100個の注文の各々からの稼得を統合した。
【0072】
図12に例示されているレポートは、イベントから識別され得る2つのタイプのメトリックを指示するが、上記で説明された2つのタイプのメトリックを含むことも含まないこともある、より多くのまたはより少ないメトリックがあり得ることを認識されたい。たとえば、メトリックは、ある当事者と会話した当事者の数、その当事者とのコンバージョンイベントに達した当事者の数、そのコンバージョンイベントに関係する情報などを含み得る。1つの例示的な例では、その当事者が商品の売り手である場合、第1の当事者のために生成されたレポートは、メッセージングプラットフォームを使用してその売り手によって行われた会話(たとえば、セールスピッチ)から発生した売上げを識別し得る。レポートは、売上げがメッセージングプラットフォーム(またはメッセージングプラットフォームを提供するソーシャルネットワーキングシステム)外で発生した場合、売り手がメッセージングプラットフォームを使用して関与した会話の何パーセントが売り手の実際の売上げを生じたかなど、その売り手についてのコンバージョンレートを識別する情報をも含み得る。
【0073】
図13は、いくつかの実施形態による、当事者のためのレポートの別の例を示している。
図13に示されているレポートは、メッセージングプラットフォームの内部で発生したイベントと、メッセージングプラットフォームの外部で発生したイベントとを例示している。たとえば、メッセージングプラットフォーム(またはメッセージングプラットフォームを提供するソーシャルネットワーキングシステム)は、イベントを実施するための方法を含み得る。上記で説明されたように、イベントがメッセージングプラットフォーム上で発生しなかったとき、そのイベントがいつ発生したかを識別することがより難しいことがある。したがって、本明細書で説明される技法は、イベントがメッセージングプラットフォームの外部でいつ発生したかを識別するための技法を提供する。
【0074】
図14は、いくつかの実施形態による、イベントを追跡するための分散型システムの簡略ブロック図である。分散型システムは、1つまたは複数のユーザデバイス(たとえば、第1のデバイス1460および第2のデバイス1480)に通信可能に結合された、ソーシャルネットワーキングシステム(SNS)1410を含む1つまたは複数のシステムを含み得る。いくつかの実施形態では、1つまたは複数のユーザデバイスは、1つまたは複数の通信ネットワーク(たとえば、通信ネットワーク1470および通信ネットワーク1490)を介してSNS1410に通信可能に結合され得る。通信ネットワーク1470および通信ネットワーク1490は、
図14では別個のネットワークとして例示されているが、それらのネットワークは同じネットワークであり得ることを認識されたい。通信ネットワークの例は、制限しないが、インターネット、ワイドエリアネットワーク(WAN)、ローカルエリアネットワーク(LAN)、イーサネットネットワーク、ワイヤレスワイドエリアネットワーク(WWAN)、ワイヤレスローカルエリアネットワーク(WLAN)、ワイヤレスパーソナルエリアネットワーク(WPAN)、公開または秘密ネットワーク、ワイヤードネットワーク、ワイヤレスネットワークなど、およびそれらの組合せを含む。IEEE802.XXプロトコルスイート、TCP/IP、IPX、SAN、AppleTalk(登録商標)、Bluetooth(登録商標)、InfiniBand、RoCE、ファイバーチャネル、イーサネット、ユーザデータグラムプロトコル(UDP)、非同期転送モード(ATM)、トークンリング、フレームリレー、ハイレベルデータリンク制御(HDLC)、ファイバー分散型データインターフェース(FDDI)、および/またはポイントツーポイントプロトコル(PPP)など、ワイヤードプロトコルとワイヤレスプロトコルの両方を含む、異なる通信プロトコルが、通信を容易にするために使用され得る。WWANは、符号分割多元接続(CDMA)ネットワーク、時分割多元接続(TDMA)ネットワーク、周波数分割多元接続(FDMA)ネットワーク、OFDMAネットワーク、シングルキャリア周波数分割多元接続(SC-FDMA)ネットワーク、WiMax(IEEE802.16)など、エアインターフェース技術を使用するネットワークであり得る。WLANは、IEEE802.1lxネットワーク(たとえば、Wi-Fiネットワーク)を含み得る。WPANは、Bluetoothネットワーク、IEEE802.15x、または何らかの他のタイプのネットワークであり得る。
【0075】
図14に示されている分散型システムは、一例にすぎず、特許請求の範囲において具陳される発明の実施形態の範囲を過度に限定するものではない。当業者は、多くの考えられる変形、代替、および修正を認識するであろう。たとえば、いくつかの実装形態では、分散型システムは、
図14に示されているシステムよりも多いまたは少ないシステムを有し得るか、2つまたはそれ以上のシステムを組み合わせ得るか、あるいはシステムの異なる設定または構成を有し得る。
【0076】
図14に示されているユーザデバイスは、クライアントデバイス、または単にクライアントと呼ばれることがある。ユーザデバイス(たとえば、第1のデバイス1460または第2のデバイス1480)は、たとえば、モバイルフォン、スマートフォン、携帯情報端末(PDA)、タブレットコンピュータ、電子ブック(eブック)リーダー、ゲーミングコンソール、ラップトップコンピュータ、ネットブックコンピュータ、デスクトップコンピュータ、シンクライアントデバイス、ワークステーションなど、コンピューティングデバイスであり得る。
【0077】
1つまたは複数のアプリケーション(「アプリ」)は、第1のデバイス1460または第2のデバイス1480によってホストおよび実行され得る。それらのアプリは、ウェブブラウザベースアプリケーションまたは他のタイプのアプリケーションであり得る。
図14に示されている例示的な実施形態では、第1のデバイス1460および第2のデバイス1480は、各々、メッセージングアプリケーションをホストおよび実行し、これは、ユーザがSNS1410のメッセージングプラットフォーム1420を介して他のユーザと通信することを可能にする。
【0078】
図14に例示されているように、メッセージングプラットフォーム1420は、ユーザインターフェースが第1のデバイス1460と第2のデバイス1480との各々によって提示されることを引き起こし得る。たとえば、第1のデバイス1460によって提示された第1のインターフェースは、会話が第2の当事者1462とのものであることを指示し得る。第1のインターフェースはまた、第1のメッセージ1464と第2のメッセージ1466とを含み得る。同様に、第2のデバイス1480によって提示された第2のインターフェースは、会話が第1の当事者1482とのものであることを指示し得る。第2のインターフェースはまた、第1のインターフェース中で提示されたメッセージに対応する、第1のメッセージ1464と第2のメッセージ1466とを含み得る。
【0079】
図14に示されている実施形態では、SNS1410は、(第1のデバイス1460に関連付けられた)第1の当事者と(第2のデバイス1480に関連付けられた)第2の当事者との間の会話を可能にするためのメッセージングプラットフォーム1420を含む。その会話は、メッセージングプラットフォーム1420を介して第1の当事者と第2の当事者との間で交換された1つまたは複数のメッセージを含み得る。たとえば、第2のデバイス1480は、第1の当事者に第1のメッセージ1464を送っていることがある。第1のデバイス1460は、少なくとも通信ネットワーク1470を通して第1のメッセージ1464を受信し得る。第1のメッセージ1464は、1本のズボンを買うという要求を含み得る。第1の当事者は、第1のデバイス1460を使用して、第1のメッセージ1464への応答(すなわち、第2のメッセージ1466)を送り得る。その応答は、その1本のズボンの価格を指示し得る。第2のデバイス1480は、少なくとも通信ネットワーク1490を通して第2のメッセージ1466を受信し得る。
【0080】
メッセージングプラットフォーム1420は、メッセージングプラットフォーム1420の内部および/または外部でのイベントの発生を決定およびハンドリングするためのイベントシステム1430をさらに含み得る。イベントの発生は多くのやり方で決定され得るが、このプロセスのための例は、イベントが発生したことを指示するために当事者にユーザ選択可能オプションを提示すること、(第1の当事者と第2の当事者との間で交換された1つまたは複数のメッセージに基づいて)イベントが発生したかどうかを決定するために、1つまたは複数の基準のセット、または機械学習モデルを使用すること、あるいは、イベントが発生したことを指示するメッセージ中に含まれるドキュメントから情報を抽出することを含む。
【0081】
情報がドキュメントから抽出される実施形態では、メッセージングプラットフォーム1420は、ドキュメント認識サブシステム1440をさらに含み得る。ドキュメント認識サブシステム1440は、入力として、メッセージ中に含まれるドキュメントを取り得る。そのドキュメントに基づいて、ドキュメント認識サブシステム1440は、イベントがメッセージングプラットフォーム1420の外部で発生したかどうかを識別し得る。ドキュメント認識サブシステム1440はドキュメントのコンテンツを利用し得るが、ドキュメントのメタデータが、コンテンツに加えてまたはコンテンツの代わりに使用され得ることも認識されたい。
【0082】
イベントが決定された後に、そのイベントに関係する情報が記憶域1450に記憶され得、その結果、その情報は第1の当事者および/または第2の当事者に関連付けられる。
図14は、SNS1410中に含まれる記憶域1450を例示しているが、記憶域1450は、SNS1410からリモートにあり得ることを認識されたい。
【0083】
図15は、本明細書で説明されるいくつかの実施形態を実装するために使用され得る、コンピュータシステム1500の一例を例示している。たとえば、いくつかの実施形態では、コンピュータシステム1500は、上記で説明された、システム、サーバ、デバイスなどのうちのいずれかを実装するために使用され得る。
図15に示されているように、コンピュータシステム1500は、バスサブシステム1502を介していくつかの他のサブシステムと通信する処理サブシステム1504を含む、様々なサブシステムを含む。これらの他のサブシステムは、処理加速ユニット1506と、I/Oサブシステム1508と、記憶サブシステム1518と、通信サブシステム1524とを含み得る。記憶サブシステム1518は、記憶媒体1522とシステムメモリ1510とを含む非一時的コンピュータ可読記憶媒体を含み得る。
【0084】
バスサブシステム1502は、コンピュータシステム1500の様々な構成要素およびサブシステムに、意図されるように互いと通信させるための機構を提供する。バスサブシステム1502は単一のバスとして概略的に示されているが、バスサブシステム1502の代替実施形態は複数のバスを利用し得る。バスサブシステム1502は、メモリバスまたはメモリコントローラ、周辺バス、様々なバスアーキテクチャのうちのいずれかを使用するローカルバスなどを含む、いくつかのタイプのバス構造のうちのいずれかであり得る。たとえば、そのようなアーキテクチャは、業界標準アーキテクチャ(ISA)バス、マイクロチャネルアーキテクチャ(MCA)バス、拡張ISA(EISA)バス、ビデオエレクトロニクス規格協会(VESA)ローカルバス、および、IEEE P1386.1規格に合わせて製造されたメザニンバスとして実装され得る周辺構成要素相互接続(PCI)バスなどを含み得る。
【0085】
処理サブシステム1504は、コンピュータシステム1500の動作を制御し、1つまたは複数のプロセッサ、特定用途向け集積回路(ASIC)、またはフィールドプログラマブルゲートアレイ(FPGA)を備え得る。プロセッサは、シングルコアプロセッサおよび/またはマルチコアプロセッサを含み得る。コンピュータシステム1500の処理リソースは、1つまたは複数の処理ユニット1532、1534などに編成され得る。処理ユニットは、1つまたは複数のプロセッサ、同じまたは異なるプロセッサからの1つまたは複数のコア、コアとプロセッサとの組合せ、あるいはコアとプロセッサとの他の組合せを含み得る。いくつかの実施形態では、処理サブシステム1504は、グラフィックスプロセッサ、デジタル信号プロセッサ(DSP)など、1つまたは複数の専用コプロセッサを含み得る。いくつかの実施形態では、処理サブシステム1504の処理ユニットの一部または全部が、特定用途向け集積回路(ASIC)、またはフィールドプログラマブルゲートアレイ(FPGA)など、カスタマイズされた回路を使用して実装され得る。
【0086】
いくつかの実施形態では、処理サブシステム1504中の処理ユニットは、システムメモリ1510にまたはコンピュータ可読記憶媒体1522に記憶された命令を実行し得る。様々な実施形態では、処理ユニットは、様々なプログラムまたはコード命令を実行し得、複数の同時に実行するプログラムまたはプロセスを維持し得る。所与の時間において、実行されるべきプログラムコードの一部または全部が、システムメモリ1510に、および/または潜在的に1つまたは複数の記憶デバイス上を含むコンピュータ可読記憶媒体1522上に、常駐し得る。好適なプログラミングを通して、処理サブシステム1504は、上記で説明された様々な機能性を提供し得る。コンピュータシステム1500が1つまたは複数の仮想マシンを実行している事例では、1つまたは複数の処理ユニットが各仮想マシンに割り振られ得る。
【0087】
いくつかの実施形態では、処理加速ユニット1506は、コンピュータシステム1500によって実施される処理全体を加速するように、カスタマイズされた処理を実施するために、または処理サブシステム1504によって実施される処理のうちのいくつかをオフロードするために、随意に提供され得る。
【0088】
I/Oサブシステム1508は、コンピュータシステム1500に情報を入力するための、および/あるいはコンピュータシステム1500からまたはコンピュータシステム1500を介して情報を出力するための、デバイスおよび機構を含み得る。概して、入力デバイスという用語の使用は、コンピュータシステム1500に情報を入力するための、すべての考えられるタイプのデバイスおよび機構を含むものとする。ユーザインターフェース入力デバイスは、たとえば、キーボード、マウスまたはトラックボールなどのポインティングデバイス、タッチパッド、またはディスプレイに組み込まれたタッチスクリーン、スクロールホイール、クリックホイール、ダイヤル、ボタン、スイッチ、キーパッド、音声コマンド認識システムをもつオーディオ入力デバイス、マイクロフォン、および他のタイプの入力デバイスを含み得る。ユーザインターフェース入力デバイスは、ユーザが、ジェスチャーと話されたコマンドとを使用して入力を受信するためのインターフェースを提供する1つおよび/または複数の入力デバイスを制御し、その入力デバイスと対話することを可能にする、動き検知および/またはジェスチャー認識デバイスをも含み得る。ユーザインターフェース入力デバイスは、ユーザから目の活動(たとえば、写真を撮るおよび/またはメニュー選択を行う間の「まばたき」)を検出し、目のジェスチャーを入力デバイスへの入力として変換する、目ジェスチャー認識デバイスをも含み得る。さらに、ユーザインターフェース入力デバイスは、ユーザが音声コマンドを通して音声認識システムと対話することを可能にする、音声認識検知デバイスを含み得る。
【0089】
ユーザインターフェース入力デバイスの他の例は、限定はしないが、3次元(3D)マウス、ジョイスティックまたはポインティングスティック、ゲームパッドおよびグラフィックタブレット、ならびに、スピーカーなどのオーディオ/ビジュアルデバイス、デジタルカメラ、デジタルカムコーダ、ポータブルメディアプレーヤ、ウェブカム、画像スキャナ、指紋スキャナ、バーコードリーダー3Dスキャナ、3Dプリンタ、レーザ測距器、ならびに視線追跡デバイスを含む。さらに、ユーザインターフェース入力デバイスは、たとえば、コンピュータ断層撮影、磁気共鳴撮像、位置放出トモグラフィ、および医療超音波検査デバイスなど、医療撮像入力デバイスを含み得る。ユーザインターフェース入力デバイスは、たとえば、MIDIキーボード、デジタル楽器など、オーディオ入力デバイスをも含み得る。
【0090】
概して、出力デバイスという用語の使用は、コンピュータシステム1500からユーザまたは他のコンピュータシステムに情報を出力するための、すべての考えられるタイプのデバイスおよび機構を含むものとする。ユーザインターフェース出力デバイスは、ディスプレイサブシステム、インジケータライト、または、オーディオ出力デバイスなどの非視覚的ディスプレイなどを含み得る。ディスプレイサブシステムは、陰極線管(CRT)、液晶ディスプレイ(LCD)またはプラズマディスプレイを使用するものなどのフラットパネルデバイス、投影デバイス、タッチスクリーンなどであり得る。たとえば、ユーザインターフェース出力デバイスは、限定はしないが、モニタ、プリンタ、スピーカー、ヘッドフォン、自動車ナビゲーションシステム、プロッタ、音声出力デバイス、およびモデムなど、テキスト、グラフィックス、およびオーディオ/ビデオ情報を視覚的に伝達する、様々なディスプレイデバイスを含み得る。
【0091】
記憶サブシステム1518は、コンピュータシステム1500によって使用される情報およびデータを記憶するための、リポジトリまたはデータストアを提供する。記憶サブシステム1518は、いくつかの実施形態の機能性を提供する基本プログラミングおよびデータ構築物を記憶するための、有形非一時的コンピュータ可読記憶媒体を提供する。記憶サブシステム1518は、処理サブシステム1504によって実行されたとき、上記で説明された機能性を提供する、ソフトウェア(たとえば、プログラム、コードモジュール、命令)を記憶し得る。ソフトウェアは、処理サブシステム1504の1つまたは複数の処理ユニットによって実行され得る。記憶サブシステム1518は、本開示の教示に従って使用されるデータを記憶するためのリポジトリをも提供し得る。
【0092】
記憶サブシステム1518は、揮発性および不揮発性メモリデバイスを含む1つまたは複数の非一時的メモリデバイスを含み得る。
図15に示されているように、記憶サブシステム1518は、システムメモリ1510とコンピュータ可読記憶媒体1522とを含む。システムメモリ1510は、プログラム実行中の命令およびデータの記憶のための揮発性メインランダムアクセスメモリ(RAM)と、固定命令が記憶された不揮発性読取り専用メモリ(ROM)またはフラッシュメモリとを含む、いくつかのメモリを含み得る。いくつかの実装形態では、起動中など、コンピュータシステム1500内の要素間で情報を転送するのを助ける基本ルーチンを含んでいる、基本入出力システム(BIOS)が、一般にROMに記憶され得る。RAMは、一般に、処理サブシステム1504によって現在動作させられ、実行されている、データおよび/またはプログラムモジュールを含んでいる。いくつかの実装形態では、システムメモリ1510は、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)など、複数の異なるタイプのメモリを含み得る。
【0093】
限定ではなく例として、
図15に示されているように、システムメモリ1510は、ウェブブラウザ、中間層アプリケーション、リレーショナルデータベース管理システム(RDBMS)などを含み得る、実行されているアプリケーションプログラム1512と、プログラムデータ1514と、オペレーティングシステム1516とをロードし得る。
【0094】
コンピュータ可読記憶媒体1522は、いくつかの実施形態の機能性を提供する、プログラミングおよびデータ構築物を記憶し得る。コンピュータ可読記憶媒体1522は、コンピュータシステム1500のための、コンピュータ可読命令、データ構造、プログラムモジュール、および他のデータの、記憶域を提供し得る。処理サブシステム1504によって実行されたとき、上記で説明された機能性を提供する、ソフトウェア(プログラム、コードモジュール、命令)は、記憶サブシステム1518に記憶され得る。例として、コンピュータ可読記憶媒体1522は、ハードディスクドライブ、磁気ディスクドライブ、CD ROM、DVD、Blu-Ray(登録商標)ディスク、または他の光媒体などの光ディスクドライブなど、不揮発性メモリを含み得る。コンピュータ可読記憶媒体1522は、限定はしないが、Zip(登録商標)ドライブ、フラッシュメモリカード、ユニバーサルシリアルバス(USB)フラッシュドライブ、セキュアデジタル(SD)カード、DVDディスク、デジタルビデオテープなどを含み得る。コンピュータ可読記憶媒体1522は、フラッシュメモリベースソリッドステートドライブ(SSD)、企業フラッシュドライブ、ソリッドステートROMなど、不揮発性メモリに基づくSSD、ソリッドステートRAM、ダイナミックRAM、スタティックRAM、DRAMベースSSD、磁気抵抗RAM(MRAM)SSDなど、揮発性メモリに基づくSSD、およびDRAMベースSSDとフラッシュメモリベースSSDとの組合せを使用するハイブリッドSSDをも含み得る。
【0095】
いくつかの実施形態では、記憶サブシステム1518は、コンピュータ可読記憶媒体1522にさらに接続され得る、コンピュータ可読記憶媒体リーダー1520をも含み得る。リーダー1520は、ディスク、フラッシュドライブなどのメモリデバイスからデータを受信し得、そのデータを読み取るように設定され得る。
【0096】
いくつかの実施形態では、コンピュータシステム1500は、限定はしないが、処理リソースおよびメモリリソースの仮想化を含む、仮想化技術をサポートし得る。たとえば、コンピュータシステム1500は、1つまたは複数の仮想マシンを実行するためのサポートを提供し得る。いくつかの実施形態では、コンピュータシステム1500は、仮想マシンの設定および管理を容易にした、ハイパーバイザなどのプログラムを実行し得る。各仮想マシンは、メモリリソース、計算(たとえば、プロセッサ、コア)リソース、I/Oリソース、およびネットワーキングリソースを割り振られ得る。各仮想マシンは、概して、他の仮想マシンとは無関係に実行する。仮想マシンは、一般に、その仮想マシン自体のオペレーティングシステムを実行し、そのオペレーティングシステムは、コンピュータシステム1500によって実行される他の仮想マシンによって実行される、オペレーティングシステムと同じであるか、またはそのオペレーティングシステムとは異なり得る。したがって、複数のオペレーティングシステムが、潜在的に、コンピュータシステム1500によって同時に実行され得る。
【0097】
通信サブシステム1524は、他のコンピュータシステムおよびネットワークへのインターフェースを提供する。通信サブシステム1524は、コンピュータシステム1500からの他のシステムからデータを受信するための、およびコンピュータシステム1500からの他のシステムにデータを送信するための、インターフェースとして働く。たとえば、通信サブシステム1524は、コンピュータシステム1500が、クライアントデバイスから情報を受信するための、およびクライアントデバイスに情報を送るための、インターネットを介した1つまたは複数のクライアントデバイスへの通信チャネルを確立することを可能にし得る。たとえば、コンピュータシステム1500が、
図14に示されているソーシャルネットワーキングシステム1410を実装するために使用されるとき、通信サブシステム1524は、第1のデバイス1460または第2のデバイス1480と通信するために使用され得る。
【0098】
通信サブシステム1524は、ワイヤード通信プロトコルおよび/またはワイヤレス通信プロトコルの両方をサポートし得る。たとえば、いくつかの実施形態では、通信サブシステム1524は、(たとえば、セルラー電話技術、3G、4G、またはEDGE(グローバル進化型高速データレート)などの高度データネットワーク技術、WiFi(IEEE802.XXファミリー規格)、または他のモバイル通信技術、またはそれらの任意の組合せを使用する)ワイヤレス音声および/またはデータネットワークにアクセスするための無線周波数(RF)トランシーバ構成要素、全地球測位システム(GPS)受信機構成要素、ならびに/あるいは他の構成要素を含み得る。いくつかの実施形態では、通信サブシステム1524は、ワイヤレスインターフェースに加えてまたはワイヤレスインターフェースの代わりにワイヤードネットワーク接続性(たとえば、イーサネット)を提供し得る。
【0099】
通信サブシステム1524は、様々な形式でデータを受信および送信し得る。たとえば、いくつかの実施形態では、他の形式に加えて、通信サブシステム1524は、構造化および/または非構造化データフィード1526、イベントストリーム1528、イベント更新1530などの形式で、入力通信を受信し得る。たとえば、通信サブシステム1524は、1つまたは複数のサードパーティ情報ソースからのウェブフィードおよび/またはリアルタイム更新など、データフィード1526をソーシャルメディアネットワークおよび/または他の通信サービスのユーザからリアルタイムで受信する(または送る)ように設定され得る。
【0100】
いくつかの実施形態では、通信サブシステム1524は、連続データストリームの形式のデータを受信するように設定され得、そのデータは、リアルタイムイベントのイベントストリーム1528、および/またはイベント更新1530を含み得、それらは、本質的に明示的終わりなしに連続または無限であり得る。連続データを生成するアプリケーションの例は、たとえば、センサーデータアプリケーション、金融ティッカー、ネットワーク性能測定ツール(たとえばネットワーク監視およびトラフィック管理アプリケーション)、クリックストリーム分析ツール、自動車交通監視などを含み得る。
【0101】
通信サブシステム1524は、コンピュータシステム1500から他のコンピュータシステムまたはネットワークにデータを通信するようにも設定され得る。データは、コンピュータシステム1500に結合された1つまたは複数のストリーミングデータソースコンピュータと通信していることがある1つまたは複数のデータベースに、構造化および/または非構造化データフィード1526、イベントストリーム1528、イベント更新1530など、様々な異なる形式で通信され得る。
【0102】
コンピュータシステム1500は、ハンドヘルドポータブルデバイス、ウェアラブルデバイス、パーソナルコンピュータ、ワークステーション、メインフレーム、キオスク、サーバラック、または任意の他のデータ処理システムを含む、様々なタイプのうちの1つであり得る。コンピュータおよびネットワークの絶え間なく変化する性質により、
図15に示されているコンピュータシステム1500の説明は、特定の例としてのものにすぎない。
図15に示されているシステムよりも多いまたは少ない構成要素を有する多くの他の設定が可能である。本明細書で提供される開示および教示に基づいて、当業者は、様々な実施形態を実装するための他のやり方および/または方法を諒解されよう。
【0103】
本明細書で説明されるいくつかの実施形態は、1つまたは複数のユーザによって自発的に提供される情報を含み得る、ソーシャルネットワーキングデータを利用する。そのような実施形態では、データプライバシーがいくつかのやり方で保護され得る。
【0104】
たとえば、ユーザは、ユーザデータが収集または使用される前に、データ収集に加わることを必要とされ得る。ユーザはまた、データ収集から脱退する機会を提供され得る。データ収集に加わる前に、ユーザは、データが使用されるやり方、データがどのくらいの時間の間保持されるか、およびデータを開示から保護するために配備されているセーフガードの説明を提供され得る。
【0105】
データが収集されたユーザを識別する情報は、そのデータからパージされるか、またはそのデータとの関連付けを解除され得る。(たとえば、規制要件を満たすために)識別情報が保持される必要がある場合、ユーザは、識別情報の収集と、行われる識別情報の使用と、識別情報が保持される時間の量とを通知され得る。とりわけユーザを識別する情報は、除去され得、たとえば、一般識別番号、または識別の他の不特定形式と置き換えられ得る。
【0106】
収集されると、データは、データへの無許可アクセスを防ぐためのセーフガードを含むセキュアデータ記憶ロケーションに記憶され得る。データは、暗号化フォーマットで記憶され得る。識別情報および/または非識別情報は、所定の時間期間の後にデータ記憶域からパージされ得る。
【0107】
本明細書では例示の目的で特定のプライバシー保護技法が説明されるが、当業者は、プライバシーが他の様式でも保護されることを認識されよう。
【0108】
前述の説明では、説明の目的で、本開示の例の完全な理解を提供するために、具体的な詳細が記載された。ただし、様々な例がこれらの具体的な詳細なしに実施され得ることは明らかであろう。たとえば、回路、システム、ネットワーク、プロセス、および他の構成要素は、不要な詳細で例を不明瞭にしないために、ブロック図の形式の構成要素として示され得る。他の事例では、よく知られている回路、プロセス、アルゴリズム、構造、および技法が、例を不明瞭にすることを回避するために、必要な詳細なしに示されていることがある。図および説明は、限定するものではない。
【0109】
説明は、例を提供するにすぎず、本開示の範囲、適用可能性、または設定を限定するものではない。そうではなく、例の説明は、当業者に、一例を実装することを可能にする説明を提供する。添付の特許請求の範囲に記載の本開示の趣旨および範囲から逸脱することなく、様々な変更が要素の機能および構成において行われ得ることを理解されたい。
【0110】
また、個々の例は、フローチャート、流れ図、データフロー図、構造図、またはブロック図として示される、プロセスとして説明され得ることに留意されたい。フローチャートは動作を逐次プロセスとして説明し得るが、動作の多くは並列にまたは同時に実施され得る。さらに、動作の順序は並べ替えられ得る。プロセスは、そのプロセスの動作が完了したときに終了されるが、図中に含まれていない追加のステップを有し得る。プロセスは、方法、機能、プロシージャ、サブルーチン、サブプログラムなどに対応し得る。プロセスが関数に対応するとき、そのプロセスの終了は、呼出し関数またはメイン関数へのその関数の復帰に対応し得る。
【0111】
「機械可読記憶媒体」または「コンピュータ可読記憶媒体」という用語は、限定はしないが、(1つまたは複数の)命令および/またはデータを記憶すること、含んでいること、または搬送することが可能な、ポータブルまたは非ポータブル記憶デバイス、光記憶デバイス、および様々な他の媒体を含む。機械可読記憶媒体またはコンピュータ可読記憶媒体は、データが記憶され得、ワイヤレスにまたはワイヤード接続上で伝搬する搬送波および/または一時的電子信号を含まない、非一時的媒体を含み得る。非一時的媒体の例は、限定はしないが、磁気ディスクまたはテープ、コンパクトディスク(CD)またはデジタル多用途ディスク(DVD)などの光記憶媒体、フラッシュメモリ、メモリまたはメモリデバイスを含み得る。コンピュータプログラム製品は、プロシージャ、機能、サブプログラム、プログラム、ルーチン、サブルーチン、モジュール、ソフトウェアパッケージ、クラス、あるいは、命令、データ構造、またはプログラム文の任意の組合せを表し得る、コードおよび/または機械実行可能命令を含み得る。
【0112】
さらに、例は、ハードウェア、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語、またはそれらの任意の組合せによって実装され得る。ソフトウェア、ファームウェア、ミドルウェア、またはマイクロコードで実装されたとき、必要なタスクを実施するためのプログラムコードまたはコードセグメント(たとえば、コンピュータプログラム製品)は、機械可読媒体に記憶され得る。1つまたは複数のプロセッサは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、必要なタスクを実施するためのプログラムコードまたはコードセグメントを実行し得る。
【0113】
図のうちのいくつかに示されているシステムは、様々な設定において提供され得る。いくつかの実施形態では、システムは、システムの1つまたは複数の構成要素がクラウドコンピューティングシステムの場合のように1つまたは複数のネットワークにわたって分散された、分散型システムとして設定され得る。
【0114】
構成要素がいくつかの動作を実施するように「設定される」ものとして説明される場合、そのような設定は、たとえば、電子回路または他のハードウェアを、動作を実施するように設計することによって、プログラマブル電子回路(たとえば、マイクロプロセッサ、または他の好適な電子回路)を、動作を実施するようにプログラムすることによって、またはそれらの任意の組合せによって、達成され得る。
【0115】
本開示で採用された用語および表現は、限定の用語ではなく、説明の用語として使用され、そのような用語および表現の使用において、示され、説明される特徴の等価物、またはそれらの特徴の一部分を除外するものではない。ただし、様々な修正が、請求されるシステムおよび方法の範囲内で可能であることを認識されたい。したがって、いくつかの概念および技法がとりわけ開示されたが、これらの概念および技法の修正および変形が当業者によって行われ得ること、ならびに、そのような修正および変形は、本開示によって定義されるシステムおよび方法の範囲内であると考えられることを理解されたい。
【0116】
特定の実施形態が説明されたが、様々な修正、改変、代替構築、および等価物が可能である。実施形態は、いくつかの特定のデータ処理環境内での動作に制限されず、複数のデータ処理環境内で自由に動作することができる。さらに、いくつかの実施形態が、特定の一連のトランザクションおよびステップを使用して説明されたが、これが限定するものではないことは当業者に明らかであろう。いくつかのフローチャートは動作を逐次プロセスとして説明するが、動作の多くは並列にまたは同時に実施され得る。さらに、動作の順序は並べ替えられ得る。プロセスは、図中に含まれていない追加のステップを有し得る。上記で説明された実施形態の様々な特徴および態様は、個々にまたは共同で使用され得る。
【0117】
さらに、いくつかの実施形態が、ハードウェアとソフトウェアとの特定の組合せを使用して説明されたが、ハードウェアとソフトウェアとの他の組合せも可能であることを認識されたい。いくつかの実施形態は、ハードウェアのみで、またはソフトウェアのみで、またはそれらの組合せを使用して実装され得る。一例では、ソフトウェアは、本開示で説明されるステップ、動作、またはプロセスのいずれかまたはすべてを実施するための、1つまたは複数のプロセッサによって実行可能なコンピュータプログラムコードまたは命令を含んでいる、コンピュータプログラム製品として実装され得、コンピュータプログラムは非一時的コンピュータ可読媒体に記憶され得る。本明細書で説明される様々なプロセスは、同じプロセッサ、または任意の組合せの異なるプロセッサ上で実装され得る。
【0118】
デバイス、システム、構成要素、またはモジュールが、いくつかの動作または機能を実施するように設定されるものとして説明される場合、そのような設定は、たとえば、電子回路を、動作を実施するように設計することによって、コンピュータ命令またはコード、あるいは、非一時的メモリ媒体に記憶されたコードまたは命令を実行するようにプログラムされた、プロセッサまたはコアを実行することによってなど、(マイクロプロセッサなどの)プログラマブル電子回路を、動作を実行するようにプログラムすることによって、あるいはそれらの任意の組合せによって、達成され得る。プロセスは、限定はしないが、プロセス間通信のための従来の技法を含む、様々な技法を使用して通信し得、およびプロセスの異なるペアが、異なる技法を使用し得、またはプロセスの同じペアが、異なる時間において異なる技法を使用し得る。
【0119】
実施形態の完全な理解を提供するために、具体的な詳細が本開示で与えられる。ただし、実施形態は、これらの具体的な詳細なしに実施され得る。たとえば、よく知られている回路、プロセス、アルゴリズム、構造、および技法が、実施形態を不明瞭にすることを回避するために、不必要な詳細なしに示された。この説明は、例示的な実施形態を提供するにすぎず、他の実施形態の範囲、適用可能性、または設定を限定するものではない。そうではなく、実施形態の前述の説明は、当業者に、様々な実施形態を実装することを可能にする説明を提供する。様々な変更が、要素の機能および構成において行われ得る。
【0120】
したがって、本明細書および図面は、限定的な意味ではなく例示的な意味で考慮されるべきである。ただし、追加、控除、削除、ならびに他の修正および変更が、特許請求の範囲に記載されているより広い趣旨および範囲から逸脱することなく、本明細書および図面に対して行われ得ることは明白であろう。したがって、特定の実施形態が説明されたが、これらは限定するものではない。様々な変更および等価物が、以下の特許請求の範囲内に入る。