(58)【調査した分野】(Int.Cl.,DB名)
前記データ処理システムにより、前記コンテンツ・アカウント識別子に対する履歴マッチング実施に基づいて前記所定の時間閾値または所定の期間閾値の少なくとも1つを調節するステップを含む、請求項2に記載の方法。
前記データ処理システムにより、前記コンテンツ・アカウント識別子に基づいて前記データ処理システムの前記データ構造に維持される前記複数のログ・エントリをフィルタするステップと、
前記データ処理システムにより、前記ログ・エントリを前記フィルタされた複数のログ・エントリから決定するステップと、
を含む、請求項1、2または3に記載の方法。
前記第2のフィールドは前記開始時間およびタイムゾーンを識別し、前記方法は、前記データ処理システムにより、前記タイムゾーンの前記開始時間を前記タイムゾーンと異なるデフォルトのタイムゾーンにコンバージョンするステップを含む、請求項1乃至4の何れかに記載の方法。
前記データ処理システムにより、前記音声呼エントリ内の第4のフィールドを解析して前記音声呼に対するラベルを識別するステップであって、前記ラベルは前記コンテンツ・プロバイダにより割り当てられる、ステップと、
前記データ処理システムにより、前記コンテンツ・アイテムの前記インプレッションに対応する前記データ構造を更新して、前記ラベルを前記識別されたコンテンツ・アイテム・インプレッションに付与するステップと、
を含む、請求項1乃至7の何れか1項に記載の方法。
前記データ処理システムにより、前記音声呼エントリ内の第5のフィールドを解析し前記音声呼に対するラベル値を識別するステップであって、前記ラベル値は前記コンテンツ・プロバイダにより割り当てられる、ステップと、
前記データ処理システムにより、前記コンテンツ・アイテム・インプレッションに対応する前記データ構造を更新して、前記ラベル値を前記識別されたコンテンツ・アイテム・インプレッションに付与するステップと、
をさらに含む、請求項8に記載の方法。
前記データ処理システムにより、前記コンテンツ・アイテムとの対話の指示を受信したことに応答して、前記データ処理システムにより、前記仮想電話番号を前記コンテンツ・アイテムに提供するステップを含む、請求項10に記載の方法。
前記データ処理システムにより、前記提供された仮想電話番号に行われた前記音声呼を受信するステップであって、前記音声呼は前記デバイス識別子および前記提供された仮想電話番号を示す、ステップと、
前記データ処理システムにより、前記音声呼を受信したことに応答して、前記音声呼の前記開始時間を検出するステップと、
前記データ処理システムにより、前記音声呼の前記開始時間を前記ログ・エントリに格納するステップと、
を含む、請求項10または11に記載の方法。
前記データ処理システムにより、前記提供された仮想電話番号に行われた前記音声呼を受信するステップであって、前記音声呼は前記デバイス識別子および前記提供された仮想電話番号を示す、ステップと、
前記データ処理システムにより、前記音声呼の終了を検出するステップと、
前記データ処理システムにより、前記検出された前記音声呼の終了に基づいて、前記音声呼の前記期間を前記ログ・エントリに格納するステップと、
を含む、請求項10または11に記載の方法。
前記データ処理システムにより、前記提供された仮想電話番号に行われた前記音声呼を受信するステップであって、前記音声呼は前記デバイス識別子および前記提供された仮想電話番号を示す、ステップと、
前記データ処理システムにより、発信側コンピューティング・デバイスおよび前記コンテンツ・プロバイダの前記デバイスの間の前記音声呼に対する通信チャネルを確立するステップと、
を含む、請求項10または11に記載の方法。
【発明を実施するための形態】
【0009】
様々な図面における同じ参照番号および指定は同じ要素を示す。
【0010】
本開示のシステムおよび方法は、コンテンツ・プロバイダから受信された音声呼エントリをデータ処理システムにより維持または検出されるログ・エントリと同期またはマッチするためのデータ処理システムに関する。コンテンツ・プロバイダから受信された音声呼エントリは不正確または破損していることがある。データ処理システムは、当該不正確なまたは破損したデータを解決する1つまたは複数のデータ処理技術を用いて、当該受信された音声呼データをデータ処理システムの内部ログ・エントリとマッチするように構成されることができる。
【0011】
コンテンツ・プロバイダは潜在的な顧客から多量の電話番号を受信しうる。コンテンツ・プロバイダは通話につながったコンテンツ・アイテムを識別するレポートから利益を得ることができる。しかし、コンテンツ・プロバイダが電話に関して提供できる情報は限定的または不完全であるので、データ処理システムが特定の電話に繋がるコンテンツ・アイテムを正確におよび高信頼に識別するのは困難でありうる。例えば、コンテンツ・プロバイダは、通話、通話開始時間、および通話期間を開始したデバイスの通話識別子(例えば、発信側ID)へのアクセスのみを有してもよい。データ処理システムは、当該デバイス識別子、通話時間および通話期間のような通話に関する情報を別々に記録することができる。しかし、データ処理システムにより検出された当該通話開始時間および期間は、異なるタイミングポリシ、同期していないタイマ、または夏時間に起因する時間スキューに起因して、当該通話開始時間およびコンテンツ・プロバイダにより記録された期間から変化しうる。
【0012】
したがって、制限された数の信号と当該信号を記録または測定する際の可変性に起因して、コンテンツ・プロバイダにより別々に提供される音声呼エントリに対応する、データ処理システムによりにより検出されたログ・データから特定の通話をデータ処理システムが特定するのは困難でありうる。
【0013】
本発明のソリューションのデータ処理システムは、データ・ファイルを介してコンテンツ・プロバイダから受信された音声呼エントリを用いてレポートを生成することができる。データ処理システムは、インタフェースを生成または提供することができる。当該インタフェースを介して、コンテンツ・プロバイダは当該データ・ファイルをアップロードすることができる。幾つかのケースでは、データ処理システムはデータ・フィード・インタフェースまたはストリーミング・インタフェースを含んでもよい。当該データ・フィード・インタフェースまたはストリーミング・インタフェースを介して、コンテンツ・プロバイダは音声呼エントリを提供する。当該音声呼エントリは、音声呼(例えば、発信側ID)、音声呼開始時間、音声呼期間、および場合によってはコンテンツ・プロバイダにより決定された任意のさらなる情報を開始するために使用されるデバイスのデバイス識別子を含むことができる。データ処理システムは、完全には信頼できないアップロードされた音声呼エントリ・データを、内部的に検出されたログ・エントリに相関付けまたはマッチすることができる。データ処理システムは、呼を不正確な時間情報にマッチするために使用しうる時間ウィンドウ(または時間範囲)または期間ウィンドウ(または期間範囲)の1つまたは複数を生成することで、通話開始時間および通話期間内のスキューを含む入力の不正確性を解決する。データ処理システムがログ・エントリにマッチする複数の音声呼エントリ(または音声呼エントリにマッチする複数のログ・エントリ)を識別する場合、データ処理システムは、タイブレークを起動して、当該音声呼エントリの1つを当該ログ・エントリに(または当該ログ・エントリの1つを当該音声呼エントリに)起因させるかまたは割り当てることができる。
【0014】
幾つかの実装では、データ処理システムは、デバイス(例えば、モバイル・デバイスのような通話コンピューティング・デバイス)を介して表示するための通話コンテンツ・アイテムを潜在的な顧客に提供する。幾つかの実装では、当該通話コンテンツ・アイテムは、当該潜在的な顧客が当該コンピューティング・デバイスに発信できるようにする電話番号を提供するように構成されることができる。データ処理システムは、音声呼をデータ処理システムに向ける当該通話コンテンツ・アイテムに対する仮想電話番号を動的に生成または割り当てることができる。当該潜在的な顧客は、当該通話コンテンツ・アイテムを介して示された電話番号を選択またはダイヤルすることができる。データ処理システムは、当該音声呼を受信し、当該音声呼をコンテンツ・プロバイダのプロバイダ・デバイス(例えば、サポートエージェントの通話コンピューティング・デバイス)にブリッジまたは転送することができる。顧客が当該通話を開始したとき、データ処理システムは顧客の発信側IDを識別し、暗号化された発信側IDデータ・フォーマットを生成することができる。データ処理システムは、当該暗号化された発信側IDデータ・フォーマットを、データ処理システムにより維持されるログまたは他のデータベースに格納することができる。幾つかの実装では、データ処理システムは、ハッシュ技術を用いて当該発信側IDの暗号化を促進することができる。メモリに格納された当該暗号化された発信側IDは当該デバイスのデバイス識別子に対応してもよい。データ処理システムは、検索サインイン、検索非サインイン、コンテンツ等のようなクエリ元に当該発信側IDをタグ付けすることができる。後の時点で、データ処理システムは、発信側ID、タイムゾーン情報を伴う通話開始時間、(例えば、秒での)通話期間、または通話が受信され行われたコンテンツ・プロバイダ・デバイスの電話番号の1つまたは複数を含むコンテンツ・プロバイダによりアップロードされる音声呼エントリ・データを受信することができる。当該システムはついで、再生成された暗号化された発信側IDを検索鍵として用いて検索を実施して、内部的に格納された暗号化された発信側IDを広告主がアップロードした通話データとマッチすることができる。
【0015】
例示的な例において、音声呼エントリは以下の値、即ち、start_time:2015−01−2000:09:00、time_zone:アメリカ/ロサンゼルス、call_duration:30秒、device_identifier:1234を有するデータフィールドを含むことができる。データ処理システムは当該通話開始時間をタイムゾーン非依存タイムスタンプ(例えば、協定世界時「UTC」またはグリニッジ標準時「GMT」)に変換することができる。データ処理システムは、通話時間および通話期間に関して夫々の範囲をともなうクエリを生成することができる。データ処理システムは、当該範囲を有するクエリを用いてログ・エントリ・データ構造の検索を実施して、当該音声呼エントリにマッチするログ・エントリを識別することができる。幾つかのケースでは、データ処理システムは、複数のタイムスタンプを含むように当該通話開始時間のクエリ範囲を拡張するためのロジックを用いることで、夏時間問題を説明することができる。幾つかのケースでは、データ処理システムは、複数の正当なクリック識別子の間の結びつきを識別し、ついで当該結びつきを壊すロジックを使用することができる。
【0016】
幾つかの実装では、データ処理システムは、ウェブ・ページとともに表示するための通話コンテンツ・アイテムを選択し提供する。当該通話コンテンツ・アイテムは、検索結果(例えば、メイン・コンテンツ)内にまたはそれに沿って検索エンジンにより(例えば、コンテンツ・セレクタを介して)含まれるリンク(例えば、画像、マルチメディア、ビデオ、テキスト)の形で補完的コンテンツ・アイテムを含んでもよい。幾つかのケースでは、当該通話コンテンツ・アイテムは、コンテンツ・パブリッシャ(例えば、記事またはマルチメディア・ストリーム)により提供されるメイン・コンテンツ内でまたはそれに沿ってリンクの形で補完的コンテンツ・アイテムを含んでもよい。当該コンテンツ・アイテムは電話番号へのリンクまたはボタンを含んでもよい。データ処理システムは、追跡データのコンテンツ・プロバイダへの提供を促進するように当該電話番号を選択、割り当て、生成、提供または割り当てることができる。この番号は、当該コンテンツ・アイテムとの対話に応答して当該コンテンツ・アイテムに対して動的に割り当てられ、提供され、または生成される仮想電話番号であってもよい。ユーザは、当該通話コンテンツ・アイテムの通話ボタンを選択またはクリックすることで当該コンテンツ・アイテムと対話して、当該仮想電話番号を受信することができる。ユーザは次いで提供された番号に発信することができる。データ処理システムはついで、当該通話を受信し、当該通話および当該コンテンツ・アイテムに関連付けられた追跡値を識別する。例えば、データ処理システムは、当該仮想電話番号を当該コンテンツ・アイテムのこのインプレッションに結び付け、リンクし、または関連付けてもよい。データ処理システムはついで、このコンテンツ・アイテムに対するインプレッション・ログにアクセスしてもよい。このコンテンツ・アイテムは、当該コンテンツ・アイテムのキーワード、当該コンテンツ・アイテムがともに表示されたウェブサイト、日時、コンテンツ・ネットワーク、または当該コンテンツ・アイテムがマッチする検索クエリを含んでもよい。
【0017】
別の例示的な実装では、データ処理システムは、検索エンジンへの検索クエリ入力を受信する。データ処理システムは、当該検索クエリに応答して、検索結果を提供し、さらに当該検索クエリにマッチする、当該検索結果とともに表示するための補完的コンテンツ・アイテムを選択し提供する。当該補完的コンテンツ・アイテムは、当該補完的コンテンツに関心があるユーザが発信できる仮想電話番号を表示してもよい。当該補完的コンテンツ・アイテムは、当該補完的コンテンツ・アイテムへの関心(例えば、当該補完的コンテンツ・アイテムのクリックまたは選択またはそれとの他の対話)の指示を受信したことに応答して当該仮想電話番号を表示してもよい。ユーザは、当該補完的コンテンツ・アイテムを介して提供される番号を用いて、当該補完的コンテンツ・アイテムに関連付けられたパーティに通話してもよい。
【0018】
データ処理システムを、仮想電話番号を使用するように構成することができる。仮想電話番号は直接関連付けられた物理電話線なしの電話番号を指してもよい。仮想電話番号は、当該電話番号がデバイスに直接関連付けられなくともよいという点で静的でない電話番号を指してもよい。これらの仮想電話番号は、コンテンツ・プロバイダ、Fixed、MobileまたはVoIPの何れかにより選択された事前設定された電話番号の1つに着呼を転送するようにプログラムされることができる。仮想電話番号は、従来の呼(PSTN)およびVOIPの間のゲートウェイのように動作することができる。仮想電話番号のサブスクライバは、追加のハードウェアを購入する必要なしにそれらの既存の電話を使用してもよい。仮想電話番号は、時刻、曜日に依存して異なる電話番号に呼を転送するように設定されることができる。
【0019】
データ処理システムはさらに、コンテンツ・アイテムを有する仮想電話番号を使用して、コンテンツ・プロバイダに対して行われた呼を追跡するように構成されることができる。例えば、内線番号コンテンツ・アイテムまたは発信専用コンテンツ・アイテムにより、仮想電話番号(またはコンテンツ転送番号)は、当該コンテンツ・アイテムから生ずる電話の受信と追跡を促進することができる。それを行うために、データ処理システムは、コンテンツ・プロバイダのコンテンツ・アイテムとともに表示される仮想電話番号を割り当て、選択、または提供することができる。潜在的な顧客がこの仮想電話番号に電話をかけたとき、データ処理システムは、当該通話を受信し当該通話を対応するコンテンツ・プロバイダにルーティングする。コンテンツ・プロバイダはついで、当該コンテンツ・アイテムにより生成される当該通話に関する情報を取得してもよい。幾つかのケースでは、データ処理システムは、顧客の番号ではなく転送番号を発信側識別番号として提供することで顧客の匿名性を維持してもよい。
【0020】
幾つかの実装では、データ処理システムは、データ処理システムが仮想電話番号をコンテンツ・アイテムに割り当てるとき、当該コンテンツ・アイテムに関する情報またはコンテンツ・アイテム情報を記録することができる。データ処理システムが通話を受信すると、データ処理システムは、当該記録された情報を当該仮想番号レコードから検索し、その当該コンテンツ・アイテムに関する情報を通話情報とともに記録することができる。したがって、幾つかの実装では、データ処理システムは、当該仮想番号を用いてログを検索することなく、当該仮想番号に間接的に依存して、電話を発生元コンテンツ・アイテムにリンクすることができる。
【0021】
図1は、ネットワークを介してデータを同期するための例示的なシステム100を示す。システム100はコンテンツ選択インフラを含むことができる。システム100は、コンテンツ・プロバイダ125、コンテンツ・パブリッシャ115またはコンピューティング・デバイス110の1つまたは複数とネットワーク105を介して通信するデータ処理システム120を含むことができる。ネットワーク105は、インターネット、ローカル・エリア・ネットワーク、広域ネットワーク、メトロ・エリア・ネットワーク、または他のエリア・ネットワーク、イントラネット、衛星ネットワーク、および音声またはデータ携帯電話ネットワークのような他の通信ネットワークのようなコンピュータ・ネットワークを含むことができる。ネットワーク105を使用して、ラップトップ、デスクトップ、タブレット、携帯情報端末、スマートフォン、またはポータブルコンピュータのような少なくとも1つのコンピューティング・デバイス110に表示しうる、ウェブ・ページ、ウェブサイト、ドメイン名、またはユニフォーム・リソース・ロケータのような情報リソースにアクセスすることができる。例えば、ネットワーク105を介してコンピューティング・デバイス110のユーザはウェブサイト・オペレータまたはコンテンツ・パブリッシャ115の少なくとも1つにより提供されるウェブ・ページにアクセスすることができる。本例では、コンピューティング・デバイス110のウェブ・ブラウザは、ウェブサイト・オペレータまたはコンテンツ・パブリッシャ115のウェブサーバにアクセスして、コンピューティング・デバイス110のモニタに表示するためのウェブ・ページを取り出すことができる。当該ウェブサイト・オペレータまたはコンテンツ・パブリッシャ115は一般にウェブ・ページを運営するエンティティを含む。1実装では、当該ウェブサイト・オペレータまたはコンテンツ・パブリッシャ115は、ネットワーク105と通信して当該ウェブ・ページをコンピューティング・デバイス110に利用可能とする少なくとも1つのウェブ・ページサーバを含む。
【0022】
ネットワーク105は任意のタイプまたは形態のネットワークであってもよく、ポイント・ツー・ポイントネットワーク、ブロードキャスト・ネットワーク、広域ネットワーク、ローカル・エリア・ネットワーク、電気通信ネットワーク、データ通信ネットワーク、コンピュータ・ネットワーク、ATM(Asynchronous Transfer Mode)ネットワーク、SONET(Synchronous Optical Network)ネットワーク、SDH(Synchronous Digital Hierarchy)ネットワーク、ワイヤレスネットワークおよび地上線ネットワークの何れかを含んでもよい。ネットワーク105は赤外線チャネルまたは衛星帯域のようなワイヤレス・リンクを含んでもよい。ネットワーク105のトポロジはバス型、星型、またはリング型ネットワークトポロジを含んでもよい。当該ネットワークは、高度携帯電話プロトコル(「AMPS」)、時分割多重アクセス(「TDMA」)、符号分割多重アクセス(「CDMA」)、全地球測位システム(「GSM(登録商標)」)、汎用パケット無線サービス(「GPRS」)またはユニバーサル・モバイル電気通信システム(「UMTS」)を含む、モバイル・デバイス間で通信するために使用される1つまたは複数の任意のプロトコルを用いる携帯電話ネットワークを含んでもよい。異なるタイプのデータを異なるプロトコルを介して送信してもよく、または同一のタイプのデータを異なるプロトコルを介して送信してもよい。
【0023】
システム100は少なくとも1つのデータ処理システム120を含むことができる。データ処理システム120は、ネットワーク105を介して、例えばコンピューティング・デバイス110、ウェブサイト・オペレータまたはコンテンツ・パブリッシャ・コンピューティング・デバイス115(またはコンテンツ・パブリッシャ115)、および少なくとも1つのコンテンツ・プロバイダ・コンピューティング・デバイス125(またはプロバイダ・デバイス125またはコンテンツ・プロバイダ125)と通信するためのプロセッサを有するコンピューティング・デバイスのような少なくとも1つのロジック・デバイスを含むことができる。データ処理システム120は少なくとも1つのサーバを含むことができる。例えば、データ処理システム120は少なくとも1つのデータ・センタに配置された複数のサーバを含むことができる。データ処理システム120は複数の論理的にグループ化されたサーバを含み、分散コンピューティング技術を促進することができる。サーバの当該論理グループをサーバ・ファームまたはマシン・ファームと称してもよい。当該サーバをまた、地理的に分散することができる。マシン・ファームを単一のエンティティとして管理してもよく、または、当該マシン・ファームは複数のマシン・ファームを含むことができる。各マシン・ファーム内の当該サーバは不均一であることができる。即ち、当該サーバまたはマシンの1つまたは複数はオペレーティング・システムプラットフォームの1つまたは複数のタイプに従って動作することができる。
【0024】
当該マシン・ファーム内のサーバを、関連付けられた記憶システムとともに高密度ラックシステムに格納し、企業データ・センタに配置することができる。例えば、当該サーバをこのように統合することはサーバおよび高性能記憶システムを局所化された高性能ネットワークに配置することで、当該システムのシステム管理可能性、データセキュリティ、物理セキュリティ、およびシステム性能を高めることができる。当該サーバおよび記憶システムを集約しそれらを高度なシステム管理ツールと結合することは、サーバリソースのより効率的な利用を可能とする。
【0025】
データ処理システム120は少なくとも1つのサーバを有するコンテンツ配置システムを含むことができる。データ処理システム120は、少なくとも1つのコンテンツ・セレクタ130、少なくとも1つの仮想番号エンジン135、少なくとも1つの追跡器140、少なくとも1つのプロバイダ・インタフェース145、少なくとも1つのマッチング・エンジン150、および少なくとも1つのデータ・リポジトリ155を含むことができる。コンテンツ・セレクタ130、仮想番号エンジン135、追跡器140、プロバイダ・インタフェース145、およびマッチング・エンジン150はそれぞれ、プログラム可能ロジック・アレイ・エンジン、または当該データベース・リポジトリまたはデータベース155と通信するように構成されたモジュールのような少なくとも1つの処理ユニットまたは他のロジック・デバイスを含むことができる。コンテンツ・セレクタ130、仮想番号エンジン135、追跡器140、プロバイダ・インタフェース145、マッチング・エンジン150およびデータ・リポジトリ155は別々のコンポーネント、単一のコンポーネント、またはデータ処理システム120の一部であることができる。システム100および、データ処理システムのようなそのコンポーネントは、1つまたは複数のプロセッサ、ロジック・デバイス、または回路のようなハードウェア要素を含んでもよい。
【0026】
データ処理システム120は複数のコンピューティング・デバイス110に関連付けられた匿名コンピュータ・ネットワーク活動情報を取得することができる。コンピューティング・デバイス110のユーザは、データ処理システム120を肯定的に認証して、ユーザのコンピューティング・デバイス110に対応するネットワーク活動情報を取得することができる。例えば、データ処理システム120は、コンピューティング・デバイス110のユーザに1つまたは複数のタイプのネットワーク活動情報を取得するための同意を促すことができる。コンピューティング・デバイス110のユーザのアイデンティティは匿名のままであることができ、コンピューティング・デバイス110は、一意な識別子(例えば、データ処理システムにより提供されたユーザまたはコンピューティング・デバイスまたはコンピューティング・デバイスのユーザの一意な識別子)に関連付けられてもよい。データ処理システムは各観察を対応する一意な識別子に関連付けることができる。
【0027】
本明細書で説明するシステムがユーザに関する個人情報を収集するか、または個人情報を利用しうる状況では、ユーザに、プログラムまたは特徴が個人情報(例えば、ユーザのソーシャル・ネットワークに関する情報、ソーシャル・アクションまたは活動、ユーザの嗜好、またはユーザの現在の位置)を収集しうるかどうかを制御する機会、またはユーザにより関連しうるコンテンツを当該コンテンツサーバから受信するかどうかまたはその方法を制御する機会を提供してもよい。さらに、一定のデータを、それが格納または使用される前に1つまたは複数の方法で扱ってもよく、その結果、ユーザに関する一定の情報が、パラメータ(例えば、人口学的パラメータ)を生成するときに除去される。例えば、ユーザのアイデンティティは、識別情報をユーザに対して決定できず、または位置情報が取得されるユーザの地理的位置を(例えば市、ZIPコード、または州レベルに)汎用化でき、その結果、ユーザの特定の位置を決定することができないように扱ってもよい。したがって、ユーザはどのように情報がユーザに関して収集されコンテンツサーバにより使用されるかに対する制御を有しうる。
【0028】
データ処理システム120はコンテンツ要求を受信することができる。当該要求は、データ処理システムの検索エンジン130への検索クエリ入力のようなクエリを含んでもよい。当該入力クエリは例えばテキスト、文字、または記号を含んでもよい。データ処理システム120は当該入力クエリを、ネットワーク105を介してコンピューティング・デバイス110から受信してもよい。当該入力クエリは、コンピューティング・デバイス110のユーザにより発話されネットワーク105およびインタフェースを介してデータ処理システムの検索エンジンに入力された単語のような音声を含んでもよい。当該要求は、当該要求に応答してコンテンツを選択するのを促進する情報を含んでもよく、またはそれに関連付けられてもよい。当該情報は、例えば、電子ドキュメントに関する文脈情報、ウェブ・ページ、電子アプリケーション、または選択されたコンテンツを表示すべきリンクを含んでもよい。データ処理システム120は、入力テキスト・ボックス、ボタン、ドロップ・ダウン、またはクライアントのユーザが検索のカテゴリを選択または示すことができるウィジェットを表示するインタフェースを提供してもよい。
【0029】
当該検索クエリまたはコンテンツ(例えば、補完的コンテンツ・アイテム)に対する他の要求に応答して、データ処理システム120は(例えば、コンテンツ・セレクタ130を介して)、当該要求を行うコンピューティング・デバイス110、または当該コンテンツ要求に関連付けられた他の幾つかのコンピューティング・デバイス110を介して提供または提示されるコンテンツを識別、選択、または取得することができる。幾つかの実装では、データ処理システム120は、任意の要求を受信したことに応答せずにコンテンツを識別、選択、または取得してもよい。当該コンテンツは、例えば、テキスト、文字、記号、画像、ビデオ、オーディオ、またはマルチメディアコンテンツを含んでもよい。当該コンテンツは、電話番号、仮想電話番号、または内線番号を含んでもよい。当該コンテンツ・アイテムは、コンテンツ・プロバイダにより提供され検索結果ページとともに表示するためにデータ処理システムにより(例えば、コンテンツ・セレクタを介して)含まれるリンクの形で補完的コンテンツ・アイテムを含んでもよい。当該コンテンツ・アイテムは、報告データのコンテンツ・プロバイダへの提供を促進する電話番号へのリンクまたはボタンを含んでもよい。当該コンテンツ・アイテムが仮想電話番号または内線番号を含むケースでは、当該コンテンツ・アイテムを通話コンテンツ・アイテムと称してもよい。当該コンテンツ要求は、例えば、オンライン記事、プロモーション、クーポン、または製品説明への要求を含むことができる。データ処理システム120は例えば、コンピューティング・デバイス110のようなコンピューティング・デバイスから当該要求を受信することができる。例えば、データ処理システム120は、モバイル・デバイス(例えば、スマートフォンまたはタブレット)で実行されているモバイルアプリケーションのようなコンピューティング・デバイス110で実行されているアプリケーションを介して当該要求を受信することができる。幾つかのケースでは、データ処理システム120は、コンテンツに対する別々の要求を受信しなくてもよく、その代わり、当該検索クエリに応答してまたは検索結果とともに当該コンテンツ(例えば、補完的コンテンツ・アイテム)を選択し提供する。幾つかの事例では、ウェブ・ページは、モバイル・デバイス110のユーザが(例えば、モバイル・デバイス110を介して)当該ウェブ・ページを訪問したことに応答して、コンテンツをデータ処理システム120に要求してもよい。
【0030】
当該コンテンツ要求は、コンテンツ選択を促進する情報を含むことができる。例えば、データ処理システム120は、コンテンツ識別またはコンテンツ選択を促進する情報をコンピューティング・デバイス110に要求してもよい。データ処理システム120は、コンテンツ要求をコンピューティング・デバイス110から受信したことに応答して情報を要求または取得してもよい。当該情報は、コンピューティング・デバイス110にコンテンツを表示することに関する情報(例えば、コンテンツ・スロットのサイズまたは位置)または当該コンテンツを表示または操作するためのコンピューティング・デバイス110の利用可能なリソースを含んでもよい。
【0031】
データ処理システム120は、当該コンテンツ要求に応答するか、またはそうでない場合はオンライン・ドキュメントに表示するための候補(例えば、ウェブ・ページ)である複数のコンテンツ・アイテム(例えば、第1の候補コンテンツ・アイテムおよび第2の候補コンテンツ・アイテム)を識別してもよい。データ処理システムは、オンライン・プロセスを開始または利用して、当該オンライン・ドキュメントに表示するための当該複数のコンテンツ・アイテムの1つまたは複数を選択してもよい。
【0032】
データ処理システム120はコンテンツ・セレクタ130を含んでもよい。コンテンツ・セレクタ130は、候補コンテンツ・アイテムの主題を分析、解析、または処理して、当該候補コンテンツ・アイテムの主題がウェブ・ページに対応するかどうかを判定してもよい。コンテンツ・セレクタ130は、当該候補コンテンツ・アイテムのターム、文字、テキスト、記号、または画像を、画像処理技術、文字認識技術、またはデータベース検索を用いて識別、分析、または認識してもよい。当該候補コンテンツ・アイテムは、当該候補コンテンツ・アイテムの主題を示すメタデータを含んでもよく、この場合、コンテンツ・セレクタ130は、当該候補コンテンツ・アイテムの主題が当該ウェブ・ページまたは検索クエリに対応するかどうかを判定するために当該メタデータを処理してもよい。
【0033】
コンテンツ・プロバイダは、コンテンツ・アイテムを含むコンテンツ・キャンペーンをセットアップするときに、追加のインジケータを提供してもよい。コンテンツ・プロバイダは、コンテンツ・セレクタ130が候補コンテンツ・アイテムに関する情報を用いて検索を実施することで識別しうる情報を当該コンテンツ・キャンペーンまたはコンテンツ・グループレベルで提供してもよい。例えば、当該候補コンテンツ・アイテムは一意な識別子を含んでもよい。当該一意な識別子をコンテンツ・グループ、コンテンツ・キャンペーン、またはコンテンツ・プロバイダにマップしてもよい。コンテンツ・セレクタ130は、コンテンツ・プロバイダに関するデータ・リポジトリ155に格納された情報に基づいて決定してもよい。
【0034】
データ処理システム120は様々な技術を用いて当該コンテンツを選択してもよい。例えば、データ処理システム120は、パートナ・コンテンツ選択ネットワークからの参照または導出からコンテンツを選択してもよい。幾つかの実装では、当該コンテンツは、キーワードまたはマッチング技術を用いて選択されなくてもよいが、参照または導出に基づいて選択してもよい。
【0035】
データ処理システム120は仮想番号エンジン135を含んでもよい。仮想番号エンジン135を、一意な仮想電話番号(例えば、一意な転送番号)を識別するように設計および構築することができる。仮想番号エンジン135は、表示するための当該一意な仮想電話番号に、クライアント・コンピューティング・デバイス110でウェブ・ページとともに表示されている当該選択されたコンテンツ・アイテムを提供してもよい。当該仮想番号は、それがコンテンツ・プロバイダのデバイスまたは通話エージェントに一意に対応するので、一意でありうる。当該仮想番号は、それがコンテンツ・プロバイダのデバイスまたは通話エンジンに一意にマップするので、一意でありうる。仮想番号エンジン135は、コンピューティング・デバイス110のユーザにより選択されたとき、コンピューティング・デバイス110にデータ処理システム120で通信チャネルを開始させるリンクを当該一意な仮想電話番号に提供してもよい。例えば、コンピューティング・デバイス110を介して仮想番号エンジン135により提供される当該リンクを選択するステップは、データ処理システム120への電話を開始することができる。
【0036】
幾つかの実装では、データ処理システム120は、当該コンテンツ・アイテムの関心の指示を受信したことに応答して、当該コンテンツ・アイテムとともにウェブ・ページに表示するための仮想電話番号を提供することができる。例えば、データ処理システム120は、ボタン、ドロップ・ダウンメニュー、アイコン、ロール・オーバ・アイコン、または他のユーザ・インタフェース・ウィジェットで当該ウェブ・ページに当該コンテンツ・アイテムを表示することができる。ユーザがユーザ・インタフェース・ウィジェットと対話するとき(例えば、ボタンのクリックまたは選択)、データ処理システムはユーザ選択の指示を受信することができる。
【0037】
ユーザ選択の指示を受信したことに応答して、データ処理システム120は、仮想電話番号を識別、選択、生成し、または仮想電話番号をコンテンツ・アイテムに割り当てる。データ処理システム120は利用可能な仮想電話番号のプールまたはリポジトリにアクセスしてもよい。当該仮想電話番号は、当該コンテンツ・アイテムに関連付けられたコンテンツ・プロバイダに既に割り当てられていてもよい。当該仮想電話番号は、当該コンテンツ・アイテムを含むコンテンツ・キャンペーンまたはコンテンツ・グループに割り当てられてもよい。当該仮想電話番号は、無料通話「800」番号、「900」番号、市内番号、または長距離番号のような課金番号であってもよい。
【0038】
データ処理システムは、当該仮想電話番号が別のコンテンツ・アイテムまたはコンテンツ・プロバイダに割り当てられていない場合に、当該仮想電話番号が利用可能な仮想電話番号であると判定してもよい。例えば、仮想電話番号の制限された番号および電話番号の購入に関連付けられたコストのため、仮想番号エンジン135を、仮想電話番号の再利用またはリサイクルを促進する1つまたは複数のポリシで構成してもよい。仮想番号エンジン135は、当該番号が或る時間間隔または期間(例えば、2時間、24時間、72時間、週、30日、60日、90日等)表示するために提供されていない場合、仮想番号を再利用してもよい。データ処理システムは、異なるプロバイダ・デバイスに対して同一の仮想番号を使用することができる。データ処理システムは、どのプロバイダ・デバイスに当該通話を転送すべきかを発信側の発信側IDおよび仮想電話番号に基づいて判定することができる。例えば、データ処理システムは、当該発信側ID(またはデバイス識別子)および仮想電話番号に基づいてタプルを形成することができる。当該タプルは、コンテンツ・プロバイダのプロバイダ・デバイスの一意な静的な識別子にマップしてもよい。データ処理システムは、このタプルを一意なタプルとして維持することができる。したがって、データ処理システムは、当該第1のデバイスと異なる第2のデバイスの第2のデバイス識別子で仮想電話番号を再利用でき、当該第2の識別子および第2のコンテンツ・プロバイダの第2のプロバイダ・デバイスにマップする仮想電話番号に基づいて第2の一意なタプル生成することができる。当該タプル・マッピングを保存することによって、データ処理システムは仮想電話番号を再利用でき、それによりデータ処理システムが維持する仮想電話番号の数を減らすことができる。
【0039】
当該仮想電話番号に、ユーザ・インタフェースを介してコンテンツ・アイテムを提供することができる。データ処理システムにより提供されたユーザ・インタフェースの1例が
図2に例示されている。ユーザは、ユーザ・インタフェースを介して提供または運搬される当該仮想電話番号に対応する電話を開始することができる。
【0040】
データ処理システム120は追跡器140を含んでもよい。追跡器140は、コンテンツ・アイテム・インプレッション・データまたはログ・エントリ・データのような追跡データを受信、取得、決定、または識別し、データ・リポジトリ155内の当該データをコンテンツ・アイテム・インプレッション・データ構造160またはログ・エントリ・データ構造165のような1つまたは複数のデータベースまたはデータ構造に格納するように設計および構築されてもよい。コンテンツ・アイテム・インプレッション・データは、コンテンツ・アイテムに関連付けられた情報、当該コンテンツ・アイテムの選択、または当該コンテンツ・アイテムのインプレッションを含んでもよい。例えば、追跡データは、ウェブ・ページとともにまたはウェブ・ページ上に表示するための当該コンテンツ・アイテムを選択するために使用されたコンテンツ選択基準を含んでもよい。コンテンツ選択基準はキーワード、ターム、フレーズ、地理的位置、デバイス・タイプ等を含んでもよい。追跡器140は、コンテンツ・セレクタ130、コンテンツ・プロバイダ125、またはユーザのコンピューティング・デバイス110からまたはそれらを介して追跡データを取得してもよい。幾つかのケースでは、コンテンツ・セレクタ130は当該追跡データをインプレッション・ログまたはデータ構造に格納してもよく、追跡器140は当該追跡データを当該インプレッション・データ構造から取得してもよい。
【0041】
追跡器140は、ログ・エントリ・データを検出、識別、決定または取得することができる。ログ・エントリ・データは、当該コンテンツ・アイテム・インプレッションに関連付けられた音声呼情報を含むことができる。音声呼情報は、例えば、音声呼の開始時間、当該音声呼を開始したデバイスのデバイス識別子(例えば、通話コンテンツ・アイテムにより提供される仮想電話番号を呼び出すコンピューティング・デバイス110の発信側ID)、および当該音声呼の期間を含むことができる。データ処理システム120は当該通話を受信したことに応答して当該音声呼の開始時間を検出することができる。データ処理システム120は、当該通話を受信したことに応答してタイムスタンプを生成するように構成されたカウンタ、タイマ、クロック、または他のタイミング・デバイスを含むことができる。幾つかのケースでは、データ処理システム120はタイムスタンプをタイムゾーンで生成する。データ処理システム120は、当該タイムスタンプをUTCまたはGMTのようなデフォルトのタイムゾーンで生成することができる。データ処理システム120は当該タイムスタンプを所定のフォーマットで生成することができる。当該フォーマットは、例えば、当該日付および時刻を含み、<YYYY−MM−DD><HH:MM:SS>のように秒を含む。YYYYは4桁の年に対応し、MMは2桁の月に対応し、HHは24時間フォーマットの2桁での時間に対応し、MMは2桁の分に対応し、SSは2桁の秒に対応する。例えば、当該タイムスタンプは、2015−01−2000:09:00であることができる。幾つかのケースでは、データ処理システム120はコンピューティング・デバイス110の位置、または通話をもたらしたコンテンツ・アイテムを提供したコンテンツ・プロバイダ125の位置に対応するタイムゾーンで当該タイムスタンプを生成することができる。例えば、データ処理システム120は、当該コンテンツ・アイテムのコンテンツ・アカウントから、コンテンツ・プロバイダ125により確立された位置情報を決定することができる。幾つかのケースでは、当該コンテンツ・アイテムは位置情報(例えば、レストランの住所)を含むことができる。
【0042】
データ処理システム120は音声呼の期間を決定することができる。データ処理システム120は、コンピューティング・デバイスとコンテンツ・プロバイダのプロバイダ・デバイスの間の通話のブリッジに続いて当該通話を監視することができる。データ処理システム120は、1つまたは複数のパーティによる当該通話のハングアップ、当該通話の終了、当該通話の切断、または当該音声呼からの解放に応答して、当該通話の停止を検出するために当該通話を監視することができる。データ処理システム120は、データ処理システム120のタイマ/カウンタ/クロックを介して、当該通話の停止に対応する第2のタイムスタンプを決定することができる。データ処理システム120は、終了タイムスタンプと開始タイムスタンプの間の差異を決定することで当該通話の期間を決定することができる。幾つかのケースでは、データ処理システム120は、当該通話の開始に応答してストップウォッチまたはカウンタを開始し、当該通話の停止に応答して当該カウンタまたはストップウォッチを停止してもよい。データ処理システム120はついで、当該カウンタの値に基づいて通話の期間を決定することができる。当該期間のフォーマットは、例えば、HH:MM:SSであることができる。
【0043】
例えば、データ・リポジトリに格納されたログ・エントリ・データ構造165は以下の表1に示される情報を含むことができる。ログ・エントリ・データ構造165は、データ処理システム120により受信された音声呼に対するログ・エントリを格納、維持、編成、または操作するためのテーブルフォーマットまたは他のデータ・フォーマットを含むことができる。
【0045】
追跡器140は、コンテンツ・アイテムのユーザのコンピューティング・デバイス110からの選択またはコンピューティング・デバイス110からの電話を受信したことに応答して、ログ・エントリを取得し格納するように構成されてもよい。追跡器140は、当該コンテンツ・アイテムを提供し、当該コンテンツ・アイテムのユーザのコンピューティング・デバイス110から選択を受信し、または電話をコンピューティング・デバイス110から受信したことに応答して、コンテンツ・アイテム・インプレッション・レコードを取得し格納するように構成されてもよい。当該選択は当該コンテンツ・アイテムのクリックを含んでもよい。幾つかのケースでは、当該選択は電話番号リンク(例えば、リンク220)の選択を指してもよい。例えば、追跡器140はリンク230の選択に応答してログ・エントリ・データを格納しなくてもよいが、追跡器140は、電話番号リンク220の選択(または電話番号の要求)、または電話を受信したことに応答して当該ログ・エントリ・データを格納してもよい。データ処理システム120は、電話番号リンク220を介した電話番号の選択または要求と比較して、URL230の選択を区別するように構成されてもよい。
【0046】
コンテンツ・アイテム・インプレッション・データ構造160をデータ・リポジトリ155に格納することができる。コンテンツ・アイテム・インプレッション・データ構造160は、インプレッション・レコードを格納、維持、編成、または操作するためのテーブルフォーマットまたは他のデータ・フォーマットを含むことができる。インプレッション・レコードは、コンテンツ・アイテムまたは補完的コンテンツ・アイテムをウェブ・ページに表示するインスタンスを指してもよい。当該インプレッションは、当該コンテンツ・アイテムが表示される当該ウェブ・ページに関する情報(例えば、当該ウェブ・ページのユニフォーム・リソース・ロケータ、当該コンテンツ・スロットの場所/位置、当該ウェブ・ページのキーワード)、当該コンテンツ・アイテムが選択される結果となる、ユーザによる検索エンジンへの検索クエリ入力、当該コンテンツ・アイテムのキーワードおよび/または(例えば、広義の、フレーズのまたは厳密なマッチまたは他の関連性または類似性メトリックを介して)表示するために当該コンテンツ・アイテムが選択されることとなる当該ウェブ・ページまたは検索クエリのキーワード、当該インプレッションに関連付けられたタイムスタンプ、当該コンテンツ・アイテムが表示されているコンピューティング・デバイス110の地理的位置、またはデバイスのタイプを含んでもよい。
【0047】
データ処理システム120は、コンテンツ・アイテム・インプレッション・レコードを当該コンテンツ・アイテム・インプレッション・データ構造に時間ベースで格納し、当該インプレッション・レコードを幾つかの期間(例えば、24時間、48時間、72時間、30日、60日、90日等)の後に除去または削除してもよい。データ処理システム120は、イベント、条件またはトリガに応答して当該インプレッション・レコードを除去してもよい。例えば、データ処理システム120は、インプレッション履歴情報を削除する要求に応答して、または当該インプレッションに関連付けられた通話の停止の後の或る時間間隔または期間の後に、当該インプレッション・レコードを削除してもよい。
【0048】
データ処理システム120は(例えば、追跡器140を介して)、当該インプレッション・データ構造に格納された追跡データとデータベースに格納された仮想電話番号の間のリンクを生成することができる。当該リンクは、当該追跡データと当該仮想電話番号の間のポインタまたは他の関連付け機構を含んでもよい。幾つかのケースでは、追跡器140は、当該インプレッション・データ構造内のインプレッション・レコードを、マップされた仮想電話番号で更新してもよい。幾つかのケースでは、当該リンクを生成するステップは、データ処理システム120が、当該追跡データおよび当該仮想電話番号を含む第2のデータ構造またはデータ・レコードまたはエントリを生成するステップを指してもよい。例えば、追跡器140は、対応する仮想電話番号と関連付けられる追跡データをエントリに提供する追跡リンク・データ構造を生成してもよい。このデータ構造はさらに、インプレッション・レコードまたはコンピューティング・デバイス110に関する情報を含んでもよい。
【0049】
コンテンツ・アイテム・インプレッション・データ構造165は表2で示すように以下のフィールドを含むことができる。
【0051】
匿名ハッシュ技術または暗号化技術を用いて、当該ログ・エントリ・データ構造の1つまたは複数の値、フィールド、またはエントリを格納することができる。幾つかの実装では、データ処理システム120は条件に基づいて追跡データと仮想電話番号の間のリンクを除去してもよい。当該条件は、例えば、仮想電話番号の要求を受信するが当該番号を提供する期間(例えば、2時間、4時間、48時間、72時間、1週間等)内に番号への通話を受信しないステップと、または当該番号への一定数の呼(例えば、2回の呼、3回の呼、5回の呼等)を受信するステップを含んでもよい。
【0052】
データ処理システム120は(例えば、追跡器140または仮想番号エンジン135を介して)ウェブ・ページを介して第1の仮想電話番号を提供することができる。コンピューティング・デバイス110は通話機能を備えてもよく、当該番号をダイヤルするかまたはデバイス110の通話プロセスを開始する当該番号の対話的なリンクを選択することで、当該仮想電話番号への通話(または他の電気通信チャネル)を開始してもよい。幾つかの実装では、ユーザは、当該ウェブ・ページおよび電話番号が表示されているデバイス110と異なるデバイスから当該仮想電話番号への通話を開始してもよい。例えば、ユーザは、補完的コンテンツ・アイテムおよび電話番号を有するウェブ・ページを、デスクトップ・コンピュータ、ラップトップ・コンピュータ、またはタブレットから参照し、次いで、当該番号に固定電話または携帯電話からかけてもよい。データ処理システム120は当該仮想電話番号を当該コンテンツ・アイテムの選択に割り当て、当該仮想電話番号と当該コンテンツ・アイテム向けの追跡データとをリンクできるので、ユーザは当該仮想電話番号を異なるデバイスから呼び出すことができ、データ処理システム120は依然として当該対応する追跡データにアクセスすることができる。
【0053】
データ処理システム120は(例えば、仮想番号エンジン135または追跡器140を介して)、通話をクライアント・デバイスから受信して、第1の仮想電話番号を介して第1の通信チャネルを開始することができる。例えば、当該クライアント・デバイスは第1の仮想電話番号をダイヤルして電気通信チャネルを開始してもよく、データ処理システム120は当該電気通信の開始の指示(例えば、ベル音)を受信してもよい。データ処理システム120は、当該通話(またはその指示)を受信した際に1つまたは複数の機能を実施してもよい。
【0054】
当該通話を受信したことに応答して、データ処理システム120は、第1の仮想電話番号を用いてデータベース内の検索を実施して、コンテンツ・プロバイダに対応する第2の番号を識別し、コンテンツ・アイテム・インプレッション・データを識別することができる。例えば、第1の仮想電話番号は、データ処理システム120に発信するために使用され、さらに、リンクされたコンテンツ・アイテム・インプレッション・データにアクセスしプロバイダ・デバイスの第2の番号を識別するために使用されてもよい。第2の番号はコンテンツ・プロバイダ(または顧客サービス担当者またはそのエージェント・デバイス)に発信するために使用されてもよい。幾つかのケースでは、コンテンツ・プロバイダは、コンテンツ・キャンペーンをセットアップするときに第2の番号を提供し、第2の番号をデータ処理システム120のデータベースに格納してもよい。
【0055】
データ処理システム120は、第2の番号を識別した際に、第2の番号を使用してクライアント・デバイスとコンテンツ・プロバイダ・デバイスの間の第2の通信チャネルを確立することができる。データ処理システム120が第2の番号をダイヤルしてもよく、コンテンツ・プロバイダが通話を受信してもよい。コンテンツ・プロバイダ(または顧客サービス担当者)が当該通話に応答してもよい。データ処理システム120は、第1の通話を第2の通話とマージまたはブリッジして、コンテンツ・プロバイダの顧客サービス担当者にユーザを接続する第2の通信チャネルを生成してもよい。幾つかのケースでは、データ処理システム120は当該通話をブリッジするように構成されたブリッジ・モジュールを備える。当該ブリッジ・モジュールは呼をブリッジするように構成されたハードウェアまたはソフトウェアを含むことができる。当該ブリッジ・モジュールを、当該通話を開始したコンピューティング・デバイスと当該通話を受信したプロバイダ・デバイスとの間の通信を促進するためのデータパケット・ルーティングまたは中継技術で構成することができる。
【0056】
データ処理システム120は、コンテンツ・プロバイダ125から音声呼エントリを受信するように設計および構築されたプロバイダ・インタフェース145を備える。当該音声呼エントリは音声呼エントリ・データ構造の形であることができる。プロバイダ・インタフェース145は、コンテンツ・プロバイダが音声呼エントリ情報を含むデータ・ファイルをアップロード、フィード、または転送できるようにするための入力テキスト・ボックス、ボタン、ファイルブラウザ、または他の入力機構を含むグラフィカル・ユーザ・インタフェースを提供することができる。幾つかのケースでは、プロバイダ・インタフェース145は、リアルタイムに、または、コンテンツ・プロバイダ125がデータを記録または検出したことまたは当該データをデータ処理システム120に利用可能としたことに応答してデータフィードまたはストリーミングデータを受信するように構成されたアプリケーション・プログラミング・インタフェースを含むことができる。幾つかのケースでは、プロバイダ・インタフェース145を、当該音声呼エントリの定期的アップロード、音声呼エントリのバッチ・アップロード、または音声呼エントリのリアルタイム・フィードに対して構成することができる。プロバイダ・インタフェース145を、セキュアな通信プロトコル(例えば、認証証明書を要求できる暗号化された通信チャネル)のような1つまたは複数のネットワーク・プロトコルを使用するように構成することができる。
【0057】
コンテンツ・プロバイダ125は、当該音声呼エントリを或るフォーマットで生成、記録、格納、または維持することができる。幾つかのケースでは、コンテンツ・プロバイダ125は、対応するフィールドに対してデータ処理システム120により使用されるフォーマットと同一のフォーマットで、1つまたは複数のフィールドに対する1つまたは複数の値を記録する。幾つかのケースでは、コンテンツ・プロバイダ125により使用されるフォーマットは、データ処理システム120により使用されるフォーマットと異なってもよい。かかるケースでは、データ処理システム120は、コンテンツ・プロバイダ125により提供されるフィールドのフォーマットを、データ処理システム120により維持されるログ・エントリ・データと一貫したフォーマットに変換してもよい。例えば、当該音声呼エントリ内の開始時間は、データ処理システム内のログ・エントリのタイムゾーンと異なり得るタイムゾーンであることができる。プロバイダ・インタフェース145は、当該音声呼エントリ内の開始時間に対するタイムゾーンを決定し、当該タイムゾーンを当該ログ・エントリに使用される同一のタイムゾーンに変換することができる。例えば、当該音声呼エントリは、タイムゾーン情報に関するフィールドを含むことができる。当該タイムゾーン情報は、太平洋標準時(「PST」)または太平洋夏時間(「PDT」)のようなタイムゾーン識別子を用いて地理的位置またはタイムゾーンを示してもよい。データ処理システムは、時間オフセットを決定するためのタイムゾーン変換データ構造にアクセスして、当該音声呼エントリ内の開始時間を当該ログ・エントリで使用される同一のタイムゾーンに変換するために使用することができる。
【0058】
当該デバイス識別子に対するフォーマットは、データ処理システム120により予め決定されてもよく、または、データ処理システム120により規定されてもよい。当該デバイス識別子に対するフォーマットは、先行する「+」符号(例えば、+15555551234」)を有するE.164フォーマットであってもよい。データ処理システム120は、「5555551234」、「(555)555−1234」、「555−555−1234」、「(555)555−1234」のような当該デバイス識別子向けの1つまたは複数のフォーマットを可能としてもよい。データ処理システムは、電話帳を用いて当該デバイス識別子を解析することができる。データ処理システム120が番号を解析できない場合、データ処理システム120は、プロバイダ・インタフェース145を介してコンテンツ・プロバイダにエラーを報告してもよい。データ処理システム120は、この誤った音声呼エントリをさらなる処理から除外することができる。
【0059】
開始時間フォーマットは、例えば以下の1つまたは複数を含むことができる。
(1)完全な日付プラス時間および分:
YYYY−MM−DDThh:mmTZD(例えば、1997−07−16T19:20+01:00)
(2)完全な日付プラス時間、分および秒:
YYYY−MM−DDThh:mm:ssTZD(例えば、1997−07−16T19:20:30+01:00)
(3)完全な日付プラス時間、分、秒および秒の小数
YYYY−MM−DDThh:mm:ss.sTZD(例えば、1997−07−16T19:20:30.45+01:00)
ここで、
YYYY=4桁の年
MM=2桁の月(01=1月等)
DD=2桁の日付(01から31まで)
hh=2桁の時間(00から23まで)(午前/午後は不可)
mm=2桁の分(00から59まで)
ss=2桁の秒(00から59まで)
s=秒の小数を表す1つまたは複数の桁
TZD=タイムゾーン指定子(Zまたは+hh:mmまたは−hh:mm)
である。
【0060】
時刻を、UTC指定子(「Z」)を用いてUTC(協定世界時)で表すことができる。時刻を、時間および分のタイムゾーン・オフセットを用いて現地時間で表すことができる。「+hh:mm」のタイムゾーン・オフセットは、日付/時刻が、UTCより「hh」時間および「mm」分だけ先行する現地タイムゾーンを使用することを示す。「−hh:mm」のタイムゾーン・オフセットは、日付/時刻が、UTCより「hh」時間および「mm」分だけ遅れている現地タイムゾーンを使用することを示す。
【0061】
当該音声呼エントリは、当該音声呼を開始したデバイスのデバイス識別子、2)タイムゾーン情報を伴う通話開始時間、3)通話期間、4)コンバージョン・ラベル(例えば、購入、サブスクリプション、または調査)、5)コンバージョン時刻、6)コンバージョン値(例えば、当該コンバージョンに関連付けられた価格または他のターム)、または7)コンバージョン通貨(例えば、米国ドル)のうち1つまたは複数のフィールドを含むことができる。幾つかのケースでは、当該音声呼エントリ・データ構造は表3で示すように3つのフィールド、即ち、デバイス識別子、開始時間、および期間を含むことができる。表3は表2に示されるプロバイダ_Aにより提供される音声呼エントリ・データ構造を示す。
【0063】
幾つかのケースでは、当該音声呼エントリ・データ構造は、コンバージョン・ラベルを示す第4のフィールドまたは以下の表4で示すようにコンバージョン量または値を示す第5のフィールドのような追加のフィールドを含むことができる。
【0065】
コンテンツ・プロバイダ125はそれらの自身のコンバージョン・ラベルを決定または割り当てることができ、例えば、当該コンバージョン・ラベルはデータ処理システム120により予め設定または決定されていなくてもよい。コンテンツ・プロバイダ125は当該コンバージョン・ラベルおよび量を記録または決定することができる。当該ラベルは文字、文字記号、テキスト、番号、字句、または英数字値を含むことができる。
【0066】
例えば、潜在的な顧客は検索クエリ「最高の安いテレビ」を入力することができる。データ処理システム120は、検索結果を返し、コンテンツ・アイテムID「Item_1」を有する補完的コンテンツ・アイテムのような補完的コンテンツ・アイテムを選択し、表2で例示したデータ構造のようなコンテンツ・アイテム・インプレッション・データ構造に当該情報を格納することができる。データ処理システム120は、当該コンテンツ・アイテムに対する仮想電話番号800−555−4567を提供することができる。当該潜在的な顧客は仮想電話番号に発信でき、データ処理システム120は当該通話をコンテンツ・プロバイダのプロバイダ・デバイス125(例えば、オンライン電子小売店)にブリッジすることができる。データ処理システム120は、当該通話および開始時間を開始した顧客デバイスのデバイス識別子のような、当該音声呼に関連付けられたパラメータまたは値を検出し、表1に例示したデータ構造のようなログ・エントリに当該情報を格納することができる。
【0067】
コンテンツ・プロバイダ125は、当該通話を受信し、当該通話が、1234ABCのデバイス識別子を有する顧客のデバイスから来たと判定することができる。コンテンツ・プロバイダ125は、当該デバイス識別子および開始時間を表3に例示したデータ構造のような音声呼エントリ・データ構造に記録することができる。幾つかのケースでは、コンテンツ・プロバイダ125は当該期間を記録しなくてもよく、または、当該開始時間および当該期間の一方のみを記録してもよい。コンテンツ・プロバイダ125は、顧客への製品販売のようなコンバージョンの際に、「購入」のようなラベルをもつコンバージョンのタイプを記録し、さらに、$800の購入価格のようなコンバージョンの量を記録することができる。
【0068】
データ処理システム120は、コンテンツ・プロバイダ125により提供される音声呼エントリに対応するログ・エントリ・データ構造165に格納されたログ・エントリをマッチし、相関付け、フィルタし、または識別するように設計および構築されたマッチング・エンジン150を備えることができる。マッチング・エンジン150は、データ処理システムのログ・エントリ内の1つまたは複数のフィールドの1つまたは複数の値とコンテンツ・プロバイダにより提供される音声呼エントリ内の1つまたは複数のフィールドの1つまたは複数の値との間に不一致が存在すると判定することができる。この不一致を解決するために、マッチング・エンジン150は閾値に基づく範囲を生成することができる。例えば、マッチング・エンジン150は、当該音声呼エントリに含まれるデバイス識別子を当該ログ・エントリで示されたデバイス識別子とマッチすることで、1つまたは複数の音声呼エントリに対応する1つまたは複数のログ・エントリを識別することができる。表1および2で示すように、デバイス識別子1234ABCは各データ構造内の2つのエントリに対応し、デバイス識別子1235DEFおよび1235GHIはそれぞれ各データ構造内の1つのエントリに対応する。
【0069】
その後、データ処理システム120は、当該音声呼エントリに関連付けられた追加のフィールドおよびログ・エントリを用いて特定の音声呼を識別することができる。例えば、マッチング・エンジン150は、当該デバイス識別子に対する当該音声呼エントリに格納された開始時間が、当該デバイス識別子に対するログ・エントリに格納された開始時間の所定の閾値内であると判定することができる。マッチング・エンジン150は当該所定の閾値をデータ・リポジトリ155から取り出すことができる。当該所定の閾値は、例えば、10秒、30秒、1分、2分、10分、30分、1時間、または正確にログ・エントリを音声呼エントリにマッチングすることを促進する別の閾値であることができる。幾つかのケースでは、データ処理システム120は、当該デバイス識別子に対する当該音声呼エントリに格納された期間が、当該デバイス識別子に対する当該ログ・エントリに格納された当該期間の所定の閾値内であると判定することができる。マッチング・エンジン150は、当該開始時間に対する閾値と同一であることができるか、または異なる閾値でありうる、期間に対する所定の閾値を取り出すことができる。例えば、当該所定の期間閾値は、例えば、10秒、30秒、1分、2分、10分、30分、1時間、または正確にログ・エントリを音声呼エントリにマッチングすることを促進する別の閾値であることができる。
【0070】
データ処理システム120は、当該所定の閾値を用いて音声呼エントリに対するクエリを生成することができる。例えば、データ処理システム120は、デバイス識別子1234ABCおよび開始時間2015−01−2000:08:57を含む表3の第1の音声呼エントリに対するマッチング・クエリを、デバイス識別子1234ABCを含み2015−01−2000:08:57にプラスまたはマイナス30秒の開始時間を有する全てのログ・エントリを問い合わせるように生成することができる。データ処理システムは、このマッチング・クエリを満たすように表1のログ・エントリ・データ構造に格納された第1のログ・エントリを識別することができる。なぜならば、当該第1のログ・エントリは、同一のデバイス識別子を有し、2015−01−2000:09:00の開始時間が対応する音声呼エントリの開始時間から30秒内であるからである。
【0071】
幾つかのケースでは、データ処理システム120は、開始時間および期間に基づいてマッチを決定するマッチング・クエリを、デバイス識別子1234ABCを含み2015−01−2000:08:57プラスまたはマイナス30秒の開始時間とおよび00:14:34プラスまたはマイナス5分の期間とを有する全てのログ・エントリを問い合わせるように生成することができる。データ処理システムは、このマッチング・クエリを満たす表1のログ・エントリ・データ構造に格納された第1のログ・エントリを識別することができる。なぜならば、第1のログ・エントリが同一のデバイス識別子を有し、2015−01−2000:09:00の開始時間が対応する音声呼エントリの開始時間から30秒内であり、かつ、00:15:34の当該期間が対応する音声呼エントリの期間の5分内であるからである。
【0072】
いったんデータ処理システム120がマッチング・ログ・エントリを識別すると、データ処理システム120は、当該ログ・エントリに対する仮想電話番号(例えば、800−555−4567)を取り出し、当該仮想電話番号を用いてコンテンツ・アイテム・インプレッション・データ構造内の検索を実施し、通話をもたらした対応するコンテンツ・アイテム・インプレッションを識別することができる。例えば、表2に例示した第1のエントリは、仮想電話番号800−555−4567に対するコンテンツ・アイテム・インプレッション・レコードである。データ処理システムは、当該コンテンツ・アイテム・インプレッション・レコードを、コンテンツ・プロバイダにより提供される追加の情報で更新することができる。例えば、データ処理システム120は、音声呼エントリ・データ構造を介してコンテンツ・プロバイダにより提供されるコンバージョン・ラベルまたはコンバージョン値(または他の任意のフィールドまたは値)を含むように当該コンテンツ・アイテム・インプレッション・レコードを更新することができる。幾つかのケースでは、マッチング・エンジン150は、コンテンツ・プロバイダへのレポートを生成するために使用できるレポート・データ構造のような異なるデータ構造を生成することができる。
【0073】
データ処理システムは、音声呼エントリを介してコンテンツ・プロバイダにより提供される情報、ならびにデータ処理システム120により維持されるコンテンツ・アイテム・インプレッション情報を用いて、レポートを生成することができる。当該レポートは、広告インプレッション、クリック、選択、電話、またはコンバージョンの複数を結び付け、リンクし、または関連付けてもよい。データ処理システムは、データ・ファイルを介してコンテンツ・プロバイダから受信された音声呼エントリを用いて当該関連付けを実施することができる。当該レポートは、データ処理システム120のプロバイダ・インタフェース145により提供される動的または対話的なレポートを含むことができる。当該レポートは、チャート、グラフ、パイ・チャート、棒グラフ、ヒストグラム、テーブル、スプレッドシート、コンテキストレポート、または画像を含むことができる。当該レポートは、クリック率、コンバージョン率、クリック単価、または投資対効果のようなパフォーマンス情報を含むことができる。例えば、コンテンツ・プロバイダが、コンテンツ・アイテムItem_1がデバイス識別子1234ABCに提供されることとなったコンテンツ・アイテム・オークションに勝つために$0.2の指値を有してもよい。データ処理システム120は、0.2の指値が$800のコンバージョンをもたらしたと判定することができる。データ処理システム120はさらに、このコンテンツ・アイテムItem_1(またはコンテンツ・キャンペーンCamp_A)に関連付けられた全てのかかる指値とコストを識別し、これらの値を集約して、当該通話コンテンツ・キャンペーンに対する投資対効果を生成することができる。例えば、データ処理システム120は、ログ・エントリにマッチするコンテンツ・プロバイダの全ての音声呼エントリを識別し、コンテンツ・アイテムIDまたはキャンペーンIDに基づいてマッチング・エントリをフィルタして、特定のコンテンツ・アイテムまたはキャンペーンに対するレポートを生成することができる。幾つかのケースでは、当該レポートはコンテンツ・アカウントまたはコンテンツ・グループ向けであることができる。
【0074】
データ処理システム120は(例えば、マッチング・エンジン150を介して)、或る範囲でクエリを生成するために使用される閾値を調節することができる。例えば、データ処理システムがどのマッチング・クエリも識別しないかまたは3個未満のマッチング・クエリを識別する場合、データ処理システム120は当該閾値または範囲を増大させることができる。データ処理システム120が多すぎるマッチング・クエリ(例えば、2個より多く、3個より多く、4個より多く、または5個より多く)を受信する場合、データ処理システム120は当該閾値または範囲を減らすことができる。幾つかのケースでは、データ処理システム120は、コンテンツ・プロバイダに対する過去のマッチング性能に基づいて、コンテンツ・プロバイダに固有な閾値を調節することができる。例えば、コンテンツ・プロバイダAは一般に開始時間の10秒以内である開始時間データをログ・エントリで提供してもよく、プロバイダBは2分のデルタのようなより大きな不一致をもつ開始時間データを提供してもよい。したがって、データ処理システム120は、プロバイダAと比較してプロバイダBに対してより大きな閾値を使用してもよい。データ処理システムは当該所定の閾値をデータ・リポジトリ155に格納することができる。データ処理システムは、当該履歴マッチング性能を評価して当該閾値を調節し続けることができる。データ処理システムはデータ・リポジトリ155に格納された当該所定の閾値を更新することができる。例えば、データ・リポジトリ155は閾値データ構造を含むことができる。
【0075】
幾つかのケースでは、マッチング・エンジン150は、単一の音声呼エントリにマッチする複数のログ・エントリを識別することができる。データ処理システム120は当該単一の音声呼エントリにマッチする複数のログ・エントリを識別することができる。なぜならば、当該複数のログ・エントリが当該音声呼エントリの開始時間の当該所定の閾値または範囲内に入る開始時間を有してもよいからである。複数のマッチング・エントリを識別したことに応答して、マッチング・エンジン150は、タイブレーク機構を開始して、開始時間において当該音声呼エントリに近いマッチング・ログ・エントリを選択することができる。例えば、マッチング・エンジン150は、第1のマッチング・ログ・エントリの開始時間と音声呼エントリの開始時間の間の第1の時間差異を決定することができる。マッチング・エンジン150は、第2のマッチング・ログ・エントリの開始時間と当該音声呼エントリの開始時間の間の第2の時間差異を決定することができる。マッチング・エンジン150は第1の時間差異および第2の時間差異に対する絶対値を決定することができる。マッチング・エンジン150は、第1の時間差異の絶対値および第2の時間差異の絶対値のうち最小値を決定することができる。データ処理システム120は、当該最小時間差異に対応するログ・エントリをマッチング・ログ・エントリとして選択し、このログ・エントリを使用して、当該コンテンツ・アイテム・インプレッション・データを識別または抽出して、レポートを生成することができる。
【0076】
幾つかのケースでは、当該マッチングは、当該コンテンツ・アイテム・インプレッション・データ構造に格納されたコンテンツ・アイテムのコンテンツ・アイテム・インプレッション時刻に基づくことができる。例えば、データ処理システム120は、仮想電話番号を識別しなくてもよく、コンテンツ・プロバイダIDのようなコンテンツ・アイテム・インプレッション・レコードに格納された開始時間または他の情報を用いてコンテンツ・アイテム・インプレッション・レコードと音声呼エントリを直接相関付けてもよい。
【0077】
マッチング・エンジン150は例えば、米国における夏時間の変化を説明することができる。米国では、秋の夏時間への変更の間に1時間が2回繰り返す。コンテンツ・プロバイダがコンバージョンを通話開始時間とともに、当該時間に夏時間情報をタグ付けせずにアップロードする場合、データ処理システムは、両方の可能な開始時間を包含しうる閾値でクエリを生成することができる。例えば、このクエリに対する閾値を、当該閾値から或る時間だけ増大させることができる。したがって、マッチング・エンジン150は、コンテンツ・プロバイダが当該開始時間に夏時間情報をタグ付けしない場合であっても夏時間への変更の間に発生しうるコンバージョンを自動的に説明することができる。
【0078】
図2は、1実装に従うコンピュータ・ネットワークを介した通話の文脈の提供を促進するユーザ・インタフェース200のブロック図である。ユーザ・インタフェース200は、ウェブ・ブラウザにより描画されたウェブ・ページのようなコンピューティング・デバイスで実行されるアプリケーションにより表示されるページを含んでもよい。当該ウェブ・ページは検索エンジン205に対するインタフェースであってもよく、検索クエリ入力ボックス210を含んでもよい。検索クエリ210に応答して、検索エンジン205は検索結果225を提供する。データ処理システムは(例えば、コンテンツ・セレクタを介して)さらに、補完的コンテンツ・アイテムのようなコンテンツ・アイテム215を提供することができる。コンテンツ・アイテム215は、当該検索エンジン(またはコンテンツ・セレクタ)により含まれるリンクを当該検索結果に含めてもよい。コンテンツ・アイテム215は、電話番号220をクリックするためのリンクまたはボタン、ならびにターゲットまたはランディングのウェブ・ページに対するウェブ・アドレスを含んでもよい。ユーザは電話リンク220をクリックしてもよい。電話リンク220はログ・エントリ・データおよびコンテンツ・アイテム・インプレッション・データの提供を促進でき、データ処理システムは、当該選択を受信したことに応答して、仮想電話番号230を提供してもよい。仮想電話番号230はポップアップ・ウィンドウであってもよく、リンク220を置き換えてもよく、当該コンテンツ・アイテムの隣に表示されてもよく、通知、警告、SMSテキストメッセージまたは電子メールを介してユーザデバイスに送信されてもよい。
【0079】
なお
図2を参照すると、例示的なユーザ・インタフェース200は、幾つかの実装に従って、コンテンツ・アイテム215に仮想番号220を提供する。ユーザ・インタフェースは検索エンジンユーザ・インタフェース205または検索エンジン結果ページ205を含む。検索エンジン205は、ユーザが「タクシー」のような検索クエリを入力しうる入力テキスト・ボックス210を含む。検索エンジン205は検索結果225(例えば、検索結果1等)を提供することができる。データ処理システムは(例えば、コンテンツ・セレクタ130を介して)、当該検索クエリに応答してコンテンツ・アイテムを選択し、検索クエリ210に応答して当該検索結果にそってそれらを表示するために提供することができる。データ処理システムは、コンテンツ・アイテム・インプレッションに対する一意なコンテンツインプレッション識別子を確立、生成、または識別することができる。コンテンツ・アイテム・インプレッションはコンピューティング・デバイスを介して当該コンテンツ・アイテムの提示を指すことができる。コンテンツ・アイテム・インプレッションは、当該コンテンツ・アイテムの表示、当該コンテンツ・アイテムの再生、当該コンテンツ・アイテムのコンピューティング・デバイスへの送信、またはコンピューティング・デバイスを提供するための当該コンテンツ・アイテムの選択を指すことができる。幾つかのケースでは、データ処理システムは、当該コンテンツ・アイテムとの対話に応答して、例えば、当該コンテンツ・アイテムのクリックまたは選択に応答して、当該コンテンツインプレッション識別子を生成することができる。当該コンテンツ・アイテム・インプレッション識別子は、当該コンテンツ・アイテムまたはコンテンツ・アイテム・インプレッションに関連付けられたプロセス識別子またはIPアドレス識別子のような1つまたは複数のパラメータまたはフィールドを含むことができるか、または、それらに基づくことができる。本例では、補完的コンテンツ・アイテム215はタクシー・サービス・プロバイダに関連してもよい。当該補完的コンテンツ・アイテムは当該タクシー・プロバイダのウェブサイトへのウェブリンク235を含んでもよい。補完的コンテンツ・アイテム215はさらに、仮想番号にアクセスするためのリンク220を含んでもよい。ユーザはリンク220を選択してもよい。当該リンクの選択を受信したことに応答して、データ処理システムは(例えば、仮想番号エンジン230を介して)仮想電話番号230を表示してもよい。テキスト220を置き換えることによって、ユーザを別のウェブサイトに向けることによって、ポップアップ・ウィンドウを介して仮想電話番号230を表示してもよい。幾つかのケースでは、リンク220を選択するステップはユーザのデバイスに当該仮想電話番号を発信させてもよい。例えば、データ処理システム120は、当該選択を受信し、当該仮想電話番号をユーザのデバイスに提供し、さらに当該仮想電話番号に発信するようにユーザのデバイスに指示してもよい。
【0080】
データ処理システム120が補完的コンテンツ・アイテム215、リンク220、または補完的コンテンツ・アイテム215に対応する電話番号の他の要求の選択を受信するとき、データ処理システムは、コンテンツ・アイテムの仮想電話番号へのマッピングを格納するデータベースにアクセスして、当該選択されたコンテンツ・アイテムまたはコンテンツ・アイテム・インプレッション識別子を第1の仮想電話番号にマップすることができる。当該データベースがデータ・リポジトリ155に格納されてもよく、幾つかのコンテンツ・アイテム、コンテンツ・グループ、またはコンテンツ・キャンペーンの仮想電話番号へのマッピングを含んでもよい。当該データベースはコンテンツ・プロバイダの仮想電話番号へのマッピングを含んでもよい。幾つかの実装では、当該データベースは、仮想電話番号を動的に割り当て、当該データベースに、動的に生成され/割り当てられた仮想電話番号のコンテンツ・プロバイダ、コンテンツ・キャンペーン、コンテンツ・グループ、またはコンテンツ・アイテムへのマッピングを格納してもよい。
【0081】
データ処理システム120は、当該データベース内の検索を実施して、当該コンテンツ・アイテムを当該仮想電話番号にマップしてもよい。データ処理システム120は、当該コンテンツ・アイテム(例えば、コンテンツ・アイテム・インプレッション識別子)、コンテンツ・キャンペーン、コンテンツ・グループ、またはコンテンツ・プロバイダの一意な識別子を使用して、当該コンテンツ・アイテムを当該仮想電話番号にマップするために当該検索を実施してもよい。例えば、データ処理システム120が電話番号リンク230の選択を受信する。電話番号リンク230の選択は、データ処理システム120への仮想電話番号の要求を開始する。仮想電話番号120の当該要求は、当該コンテンツ・アイテムまたはコンテンツ・プロバイダの一意な識別子のようなコンテンツ・アイテム215に関する情報を含んでもよい。幾つかのケースでは、当該要求は当該コンテンツ・アイテムが表示されているウェブ・ページのURL、またはターゲットページ230へのリンクを含んでもよく、この場合、データ処理システム120は、識別されたウェブ・ページにアクセスして、当該コンテンツ・アイテムを当該仮想電話番号にマップしてもよい。したがって、データ処理システム120は、提供されたコンテンツ・アイテム215に関連付けられたまたは当該仮想電話番号の当該要求に(リンク220の選択を介して)関連付けられた識別子または他のインジケータを使用して、当該データベース内で当該検索を実施して当該コンテンツ・アイテムを当該仮想電話番号にマップすることができる。
【0082】
図3は、1実装に従うコンピュータ・ネットワークを介してデータを同期する方法の図を示す。方法300を、
図1、
図2または
図4に例示した1つまたは複数のシステム、コンポーネントまたはインタフェースを介して実施することができる。これらは、例えば、データ処理システム、仮想番号エンジン、追跡器、コンテンツ・セレクタ、プロバイダ・インタフェース、マッチング・エンジンまたはデータ・リポジトリを含む。簡単な概要では、および幾つかの実装では、方法300は310で、データ処理システムが音声呼エントリを受信するステップを含む。315で、データ処理システムが、複数のログ・エントリを格納するログ・データ構造にアクセスする。320で、データ処理システムは、当該データ構造を解析して当該複数のログ・エントリのログ・エントリを識別する。325で、データ処理システムが当該音声呼エントリのデバイス識別子を当該ログ・エントリのデバイス識別子とマッチする。330で、データ処理システムは、夫々の開始時間の所定の閾値または当該ログ・エントリの期間が満たされると判定する。335で、データ処理システムは、仮想電話番号を当該ログ・エントリから取り出す。340で、データ処理システムは、検索を実施してコンテンツ・アイテム・インプレッション識別子を決定する。345で、データ処理システムは、当該音声呼エントリを介して提供されたデータを当該コンテンツ・アイテム・インプレッション識別子に対応するデータ構造に格納する。
【0083】
さらに詳細には、方法300は310で、データ処理システムが音声呼エントリを受信するステップを含む。コンテンツ・プロバイダは、当該音声呼エントリを生成して、当該音声呼エントリをデータ処理システムに提供することができる。データ処理システムは1つまたは複数の音声呼エントリを受信することができる。データ処理システムは、1つまたは複数の音声呼エントリを含むデータ・ファイル、アップロード、またはフィードを受信することができる。幾つかのケースでは、当該音声呼エントリをデータ処理システムにプッシュすることができる。幾つかのケースでは、データ処理システムは、ネットワークを介してアクセス可能でありコンテンツ・プロバイダにより確立されたデータベースまたはメモリから当該音声呼エントリをプルすることができる。幾つかのケースでは、データ処理システムは、リアルタイムに、例えば、コンテンツ・プロバイダが当該音声呼エントリを格納、記録、または生成することに応答して、音声呼エントリを受信することができる。
【0084】
データ処理システムは、コンテンツ・アカウント識別子を用いて確立された通信チャネルを介して当該音声呼エントリを受信することができる。例えば、当該通信チャネルは、コンテンツ・プロバイダがデータ処理システムにより提供されたプロバイダ・インタフェースにログインすることで確立されたセキュアな通信チャネルであることができる。当該プロバイダ・インタフェースにログインするために、コンテンツ・プロバイダは、例えば、コンテンツ・アカウント識別子、ユーザ名、パスワード、セキュリティコード、指紋、生体コード、コンテンツ・プロバイダに入力されたコード等を含みうる認証証明書を送信してもよい。幾つかのケースでは、データ処理システムをマルチファクタ認証で構成してもよい。
【0085】
当該音声呼エントリは、1つまたは複数のフォーマットで1つまたは複数の値を有する1つまたは複数のフィールドを含むことができる。例えば、第1のフィールドは当該音声呼を開始したデバイスのデバイス識別子を識別することができる。第2のフィールドは当該音声呼の開始時間を識別することができる。第3のフィールドは当該音声呼の期間を識別することができる。第4のフィールドはコンバージョン・ラベルを含むことができる。第5のフィールドはコンバージョン値を含むことができる。当該音声呼エントリは、表3で示すようにテーブルまたはデータ構造フォーマットを含むことができる。データ処理システムは、当該フィールドの値を、或るフォーマットを、マッチング・エントリの識別またはレポートの生成により貢献しうる別のフォーマットにコンバージョンすることができる。例えば、当該音声呼エントリ内の開始時間は第1のタイムゾーンであってもよく、データ処理システムの当該ログ・エントリに格納された開始時間は第2のタイムゾーンであることができる。当該音声呼エントリは当該タイムゾーンを示してもよい(例えば、第2のフィールドは当該開始時間およびタイムゾーンを識別することができる)。データ処理システムは当該タイムゾーンの開始時間を当該タイムゾーンと異なるデフォルトのタイムゾーンに変換することができる。当該デフォルトのタイムゾーンは、当該ログ・エントリに対してデータ処理システムにより使用されるタイムゾーンであることができる。当該デフォルトのタイムゾーンはUTCまたはGMT、または他の幾つかのデフォルトのタイムゾーンであることができる。
【0086】
315で、データ処理システムは複数のログ・エントリを格納するログ・データ構造にアクセスする。データ処理システムは当該データ構造をデータ処理システムのメモリで維持することができる。当該データ構造は、データ処理システムにより受信された音声呼に対応する複数のログ・エントリを格納することができる。データ処理システムは、データ・リポジトリに格納することで当該データ構造を維持でき、当該データ構造にアクセスしてログ・エントリを識別するように構成されてもよい。データ処理システムは、データ処理システムにより受信された音声呼に対する新たなログ・エントリで当該データ構造を更新することができる。音声呼を受信するステップは、データ処理システムが当該音声呼を潜在的な顧客コンピューティング・デバイスから受信し、ついでコンテンツ・プロバイダのプロバイダ・デバイスに当該通話を転送またはブリッジするステップを指すことができる。データ処理システムは、リアルタイムに当該音声呼を受信したことに応答して、毎日、タイムリーに、バッチモードで、条件、イベントまたは要求に応答してのような時間間隔に基づいて当該データ構造を更新することができる。
【0087】
幾つかのケースでは、当該ログ・データ構造は、当該データ・リポジトリ内で暗号化することができる。データ処理システムを、データ処理システムが当該データ構造にアクセスすることを許可または認可する認証証明書またはセキュリティトークンで構成することができる。
【0088】
当該ログ・データ構造は、ファイル構造フォーマットを用いて当該ログ・エントリを維持することができる。例えば、当該ログ・データ構造は当該ログ・エントリを関係データベースで編成することができる。データ処理システムは、検索クエリ、検索の実施、またはログ・エントリを解析し、識別し、当該データ構造から抽出するのを促進するように、当該データ構造または当該ログ・エントリを当該データ構造で編成することができる。例えば、当該ログ・エントリは、仮想電話番号に基づいて編成され、日付、開始時間、または期間を受信することができる。
【0089】
320で、データ処理システムは当該ログ・データ構造を解析して、当該複数のログ・エントリのログ・エントリを識別する。データ処理システムは当該ログ・データ構造を解析して当該データ構造の第1のログ・エントリを識別することができる。幾つかのケースでは、データ処理システムは、デバイス識別子、開始時間、および期間の1つまたは複数を含むかまたはそれらに基づくクエリで当該データ構造を解析することができる。幾つかのケースでは、データ処理システムは、閾値とのマッチおよび比較のような追加のプロセスを実施することで、当該ログ・データ構造を解析して当該ログ・エントリを識別することができる。例えば、当該データ構造を解析するステップは音声呼エントリのデバイス識別子を当該ログ・エントリのデバイス識別子とマッチするステップを含むことができる。当該データ構造を解析するステップはまた、当該ログ・エントリに格納された開始時間または期間が当該音声呼エントリに格納された夫々の開始時間の所定の閾値または期間内であると判定するステップを含むことができる。
【0090】
幾つかのケースでは、データ処理システムは当該ログ・エントリをフィルタして、コンテンツ・プロバイダの当該コンテンツ・アカウント識別子に対応する1つまたは複数のログ・エントリを識別する。例えば、データ処理システムは、複数のコンテンツ・プロバイダに対するログ・データ構造内のログ・エントリを含むデータ・リポジトリを維持することができる。クエリを実行する前に当該ログ・エントリをフィルタすることで、データ処理システムは、プロセッサのクロック・サイクル、メモリ、一時的メモリ、またはネットワーク帯域幅のようなより少ない計算リソースを用いることによって、当該マッチング・クエリをより効率的に識別することができる。データ処理システムは、コンテンツ・プロバイダ・アカウント識別子に基づいて当該データ構造を予めフィルタすることで、検索結果に対するレイテンシを減らすことができる。したがって、データ処理システムは、コンテンツ・アカウント識別子に基づいてフィルタされるフィルタされたログ・データ構造に当該クエリを実行することで、マッチング・ログ・エントリをより効率的に識別することができる。
【0091】
325で、データ処理システムは当該音声呼エントリのデバイス識別子を当該ログ・エントリのデバイス識別子とマッチする。幾つかのケースでは、データ処理システムは、当該音声呼エントリのデバイス識別子と当該ログ・エントリのデバイス識別子の間の1対1マッピングを実施して、マッチがあるかどうかを判定することができる。マッチは厳密なマッチを指すことができる。幾つかのケースでは、データ処理システムは誤ったタームまたはフォーマットをフィルタして、当該デバイス識別子の特徴を識別することができる(例えば、英数字文字を順序付け、句読点またはダッシュ「−」、スラッシュ「/」、ピリオド「.」、または大文字化のようなフォーマットをフィルタまたは無視する)。例えば、データ処理システムは、当該音声呼エントリ内のデバイス識別子のフォーマットを、当該ログ・エントリに格納されたデバイス識別子のフォーマットに変換して、同一のフォーマットでのデバイス識別子が厳密なマッチであるかどうかのマッチを決定することができる。
【0092】
幾つかのケースでは、当該デバイス識別子を当該ログ・エントリに暗号化プロトコルとともに格納することができる。当該デバイス識別子を、暗号化された発信側IDハッシュデータ・フォーマットを用いて当該ログに格納することができる。当該暗号化プロトコルはハッシュ暗号化技術を含むことができる。データ処理システムは、復号化技術を実施して当該デバイス識別子を決定することができる。当該復号化技術は、当該デバイス識別子を決定する逆ハッシュ技術を含むことができる。当該格納された暗号化された発信側IDを復号化する際、データ処理システムは、当該ログ・エントリの格納された暗号化されたデバイス識別子により示された当該デバイス識別子を当該音声呼エントリのデバイス識別子と比較することができる。したがって、当該ログ・エントリ内のデバイス識別子を1つまたは複数のフォーマットに格納するかまたは暗号化でき、データ処理システムは、当該マッチングを実施するとき、当該格納されたデバイス識別子を復号化するか、または、フォーマット変換を実施してマッチを決定することができる。
【0093】
330で、データ処理システムは、当該ログ・エントリの夫々の開始時間または期間の所定の閾値が満たされると判定する。データ処理システムは、当該デバイス識別子とマッチしたことに応答して、当該音声呼エントリの開始時間または期間の少なくとも1つが当該ログ・エントリの夫々の開始時間または期間の所定の閾値を満たすと判定することができる。当該ログ・エントリをデータ処理システムに格納でき、当該ログ・エントリは、コンテンツ・アイテム・インプレッションから生じたデータ処理システムにより受信された通話に関する情報を含むことができる。データ処理システムは、当該音声呼エントリに含まれるデバイス識別子を当該ログ・エントリで示されたデバイス識別子とマッチすることにより、ログ・エントリ・データ構造にアクセスして当該音声呼エントリに対応する1つまたは複数のログ・エントリを識別することができる。
【0094】
データ処理システムは、当該音声呼エントリの開始時間または期間の少なくとも1つが夫々の開始時間の所定の閾値または当該ログ・エントリの期間内であるとさらに判定することで、当該マッチング・ログ・エントリを決定することができる。例えば、データ処理システムは当該開始時間に対する範囲閾値または当該期間に対する範囲閾値を決定し、クエリを当該範囲閾値で生成することができる。当該クエリは、当該音声呼エントリで提供された同一のデバイス識別子を含むデータ処理システムのログ・エントリ、および当該音声呼エントリの開始時間の範囲内に入る開始時間を識別することができる。当該クエリは、当該音声呼エントリで提供された同一のデバイス識別子を含むデータ処理システムのログ・エントリ、当該音声呼エントリの開始時間の範囲内に入る開始時間、および当該音声呼エントリの当該期間の範囲内に入る期間を識別することができる。
【0095】
例えば、データ処理システムは、所定の時間閾値に基づいて当該音声呼エントリの開始時間に対する開始時間範囲を識別することができる。データ処理システムは、当該所定の時間閾値を取り出し、音声呼エントリに対する当該開始時間範囲を、start_time_range = [voice_call_entry_start_time − predetermined_threshold, voice_call_entry_start_time + predetermined_threshold]のように生成することができる。データ処理システムは、当該期間所定の閾値に基づいて当該音声呼エントリの期間に対する期間範囲を識別することができる。データ処理システムは当該所定の期間閾値を取り出し、音声呼エントリに対する期間範囲を、duration_range = [voice_call_entry_duration − predetermined_duration_threshold, voice_call_entry_duration + predetermined_duration_threshold]のように生成することができる。データ処理システムは、当該デバイス識別子を含む第1のターム、当該開始時間範囲を含む第2のタームおよび当該期間範囲を含む第3のタームでクエリを生成することができる。例えば、当該クエリは{device_identifier; start_time_range; duration_range}であることができる。データ処理システムは、当該クエリを使用して、当該データ構造の検索を実施して当該マッチング・ログ・エントリを識別することができる。
【0096】
データ処理システムは履歴マッチング性能に基づいて当該閾値を調節することができる。データ処理システムは、当該コンテンツ・アカウント識別子に対する履歴マッチング性能に基づいて当該閾値を調節することができる。例えば、データ処理システムにより使用される当該閾値が音声呼エントリにマッチするあまりに多くのまたはあまりに少ないログ・エントリをもたらす場合、データ処理システムは当該閾値を調節することができる。例えば、当該閾値が5個より多くのマッチング・ログ・エントリをもたらす場合、データ処理システムは当該閾値より低いかもしれない。当該閾値がゼロ、1、2または3個のマッチング・エントリをもたらす場合、データ処理システムは当該閾値を増大させてもよい。
【0097】
幾つかのケースでは、履歴マッチング性能はマッチング成功率を示すことができる。データ処理システムは、マッチング・ログ・エントリが発見された場合、マッチが成功したとみなしてもよい。データ処理システムは、コンテンツ・プロバイダにより受信された音声呼エントリの数で成功したマッチの数を除すことに基づくマッチング成功率を決定することができる。データ処理システムは、データ処理システムにより実行された検索クエリの数で成功したマッチの数を除すことに基づくマッチング成功率を決定することができる。データ処理システムは、所定の範囲閾値を増大または減少するかどうかを判定するために、マッチング閾値と当該マッチング成功率を比較することができる。当該マッチング閾値は、例えば、10%、20%、30%、40%、50%、60%、75%、90%、95%、または99%、100%または当該所定の範囲閾値の調節を促進する他の幾つかのパーセントであることができる。データ処理システムは、当該範囲閾値を所定の間隔(例えば、10秒、20秒、30秒、1分、5分等)だけ増大または減少することができる。
【0098】
例示的な例において、データ処理システムはマッチング成功率が9%であると判定する。データ処理システムは当該マッチング成功率をマッチング閾値と比較することができる。当該マッチング閾値は90%であってもよい。90%の当該マッチング閾値は、データ処理システムが、コンテンツ・プロバイダにより提供される音声呼エントリの90%に対するマッチング・ログ・エントリを識別するように構成されると示してもよい。9%のマッチング成功率が90%のマッチング閾値以下である(例えば、当該閾値を満たさない)と判定したことに応答して、データ処理システムは、追加のログ・エントリを識別するために、クエリに使用される開始時間および期間の少なくとも1つに対する範囲閾値を増大させることができる。データ処理システムは、当該更新されたクエリを新たな範囲で再実行することができる。データ処理システムは、当該マッチング閾値が満たされる(例えば、当該マッチング成功率が当該マッチング閾値と等しいかまたはそれを超える)まで、当該クエリを更新し、当該クエリを同一のデータセットに再実行してもよい。
【0099】
335で、データ処理システムが仮想電話番号をログ・エントリから取り出す。データ処理システムは、所定の閾値が満たされると判定したことに応答して、当該仮想電話番号を当該ログ・エントリから取り出すことができる。データ処理システムは、当該仮想電話番号を動的にコンテンツ・プロバイダのコンテンツ・アイテムに割り当てていてもよい。データ処理システムは、コンテンツ・プロバイダの当該コンテンツ・アイテムとの対話に応答して、当該仮想電話番号を当該ログ・エントリのデバイス識別子を有するデバイスに提供していてもよい。
【0100】
データ処理システムは以前に当該コンテンツ・アイテムの当該仮想電話番号を当該デバイスに提供していてもよい。例えば、データ処理システムは、当該デバイス識別子を有するデバイスを介して表示するためのコンテンツ要求を受信することができる。データ処理システムは、(例えば、コンテンツ選択基準、キーワード、検索語、トピック、または位置に基づいて)当該要求に応答して当該コンテンツ・アイテムを選択することができる。データ処理システムは、当該デバイス識別子を有するデバイスで表示するための選択されたコンテンツ・アイテムを提供することができる。データ処理システムは、コンテンツ・アイテム・インプレッション識別子を生成し、当該IDをコンテンツ・アイテム・インプレッションに割り当てることができる。データ処理システムは、当該コンテンツ・アイテム・インプレッションIDに対するコンテンツ・アイテム・インプレッション・レコードを生成することができる。データ処理システムは当該コンテンツ・アイテムとの対話の指示を受信することができる。例えば、当該対話は、当該コンテンツ・アイテムのボタンまたはリンクのクリックまたは選択の形態であることができる。当該指示を受信したことに応答して、データ処理システムは、当該仮想電話番号を当該コンテンツ・アイテムに提供し、当該仮想電話番号を、当該デバイス識別子を有するデバイスに提供することができる。
【0101】
データ処理システムは提供された仮想電話番号に行われた音声呼を受信することができる。当該音声呼は当該デバイス識別子および当該提供された仮想電話番号を示すことができる。例えば、データ処理システムは発信側IDを介して当該デバイス識別子を決定することができる。データ処理システムは当該提供された仮想電話番号を決定することができる。なぜならば、当該仮想電話番号は、データ処理システムがそれを介して通話を受信した電話番号であるからである。当該通話を受信したことに応答して、データ処理システムは当該音声呼の開始時間を検出することができる。この開始時間は、データ処理システムにより検出または決定される開始時間であることができる。この開始時間はデフォルトのタイムゾーンであることができる。データ処理システムは当該音声呼の開始時間をログ・エントリに格納することができる。データ処理システムはさらに、当該音声呼が終了または停止したことまたは当該デバイス識別子を有するデバイスが当該通話から解放された(例えば、ハングアップした)ことを検出または判定することができる。データ処理システムは、当該通話が終了したときに基づいて当該通話の期間を当該ログ・エントリに格納することができる。
【0102】
幾つかの実装では、データ処理システムは、記録されたコンテンツ・アイテム自体に関する情報を用いて、受信された呼を元のコンテンツ・アイテムにマッチすることができる。データ処理システムが仮想電話番号をコンテンツ・アイテムに割り当てるとき、データ処理システムは当該コンテンツ・アイテムに関する情報を記録することができる。データ処理システムが呼を受信すると、データ処理システムは、当該記録された情報を仮想番号レコードから検索し、当該コンテンツ・アイテムに関するその情報を通話情報とともに記録することができる。したがって、幾つかの実装では、データ処理システムは、ログを検索するために当該仮想番号を用いることなく、当該仮想番号に間接的に依存して通話を発信側コンテンツ・アイテムにリンクすることができる。例えば、データ処理システムが当該提供された仮想番号に行われた音声呼を受信したとき、データ処理システムは当該コンテンツ・アイテム・インプレッション識別子を識別することができる。
【0103】
340で、データ処理システムは検索を実施してコンテンツ・アイテム・インプレッション識別子を決定する。データ処理システムは、当該識別された仮想電話番号を用いてコンテンツ・アイテム・インプレッション・データ構造内の検索を実施して、当該仮想電話番号を当該コンテンツ・アイテムに提供させたコンテンツ・アイテムのインプレッションを識別するコンテンツ・アイテム・インプレッション識別子を決定することができる。
【0104】
345で、データ処理システムは、当該音声呼エントリを介して提供されたデータを当該コンテンツ・アイテム・インプレッション識別子に対応するデータ構造に格納する。幾つかのケースでは、データ処理システムは、当該コンテンツ・アイテム・インプレッションに対応するデータ構造を、当該音声呼エントリで提供された情報で更新する。データ処理システムは、当該音声呼を当該識別されたコンテンツ・アイテム・インプレッションに起因させるように、当該コンテンツ・アイテム・インプレッションに対応する当該コンテンツ・アイテム・インプレッション・データ構造または異なるデータ構造を更新することができる。データ処理システムはさらに、当該音声呼エントリに関するデータまたは情報を、コンバージョンタイプ、コンバージョン・ラベルまたはコンバージョン値のような当該コンテンツ・アイテム・インプレッションに起因させることができる。
【0105】
例えば、データ処理システムは、当該音声呼エントリの1つまたは複数のフィールドを解析または識別することができる。データ処理システムは、コンテンツ・プロバイダにより割り当てられていた当該音声呼に対するコンバージョン・ラベルを識別する当該音声呼エントリ内の第4のフィールドを識別することができる。当該コンバージョン・ラベルは、例えば、購入、サブスクリプション、または調査を含むことができる。データ処理システムは、当該音声呼エントリ内の第5のフィールドを識別して、コンテンツ・プロバイダにより割り当てられたコンバージョン値を識別することができる。当該コンバージョン値は数値、文字、グレード(例えば、A、B、C、D、またはF)、カテゴリ(例えば、高い値、中間値、低い値)、またはスケール(例えば、1を最低値および10を最高値、または1を最高値および10を最低値として、1乃至10)を含むことができる。例えば、当該コンバージョン値は$800または「高」であることができる。
【0106】
幾つかのケースでは、データ処理システムは、音声呼エントリにマッチするかまたはクエリを閾値範囲で満たす複数のログ・エントリを識別することができる。例えば、第2のログ・エントリは当該開始時間範囲および期間範囲を満たすことができる。単一のマッチング・エントリを決定するために、データ処理システムは、当該ログ・エントリを識別するために2つのマッチング・ログ・エントリの開始時間を、当該音声呼エントリの開始時間に最も近い開始時間と比較することができる。幾つかのケースでは、当該データ処理は、当該ログ・エントリを識別するための当該2つのマッチング・ログ・エントリの期間を、当該音声呼エントリの期間に最も近い期間と比較することができる。例えば、当該2つのマッチング・エントリの開始時間が同一である場合、データ処理システムは、当該ログ・エントリを識別するための期間に基づく、当該音声呼エントリで提供される期間に最も近い期間とのさらなる比較を行うことができる。
【0107】
1実装では、データ処理システムは、当該音声呼エントリに含まれるデバイス識別子を第2のログ・エントリで示される第2のデバイス識別子とマッチし、当該音声呼エントリの開始時間が第2のログ・エントリの夫々の第2の開始時間の所定の閾値内にあると判定することにより、当該音声呼エントリに対応するデータ処理システムのメモリに維持される第2のログ・エントリを決定する。第2のデバイス識別子は第1のデバイス識別子と同一であることができる。例えば、データ処理システムは、当該ログ・エントリが当該一意なデバイス識別子にマッチするように当該デバイス識別子を含むクエリを使用することができる。しかし、幾つかのケースでは、当該ログ・エントリ内のデバイス識別子は一意でないかもしれず、この場合、データ処理システムは複数のログ・エントリを同一のデバイス識別子で識別してもよい。幾つかのケースでは、当該デバイス識別子は部分的に紛失または破損しているかもしれず、この場合、データ処理システムは、当該音声呼エントリで提供されるデバイス識別子にマッチする複数のログ・エントリを識別することができる。
【0108】
データ処理システムは第1のログ・エントリの開始時間と当該音声呼エントリ内の音声呼の開始時間の間の第1の差異(または夫々の期間)を決定することができる。データ処理システムは、第2のログ・エントリの第2の開始時間と当該音声呼エントリ内の当該音声呼の第2の開始時間(または夫々の期間)の間の第2の差異を決定することができる。データ処理システムは、第1の差異および第2の差異(例えば、より小さい差異)の比較に基づいて第1のログ・エントリをマッチング・エントリとして選択することができる。データ処理システムはついで、当該マッチング・エントリを使用して仮想電話番号を識別することができる。
【0109】
図4は、例示的な実装に従うコンピュータシステム400のブロック図である。当該コンピュータシステムまたはコンピューティング・デバイス400を使用して、システム100、システム800、コンテンツ・プロバイダ125、コンピューティング・デバイス110、コンテンツ・パブリッシャ115、データ処理システム120、仮想番号エンジン135、追跡器140、コンテンツ・セレクタ130、プロバイダ・インタフェース145、マッチング・エンジン150およびデータ・リポジトリ155を実装することができる。コンピューティング・システム400は、バス405または情報を通信するための他の通信コンポーネントおよびプロセッサ410または情報を処理するための処理回路に接続されたバス405を含む。コンピューティング・システム400はまた、1つまたは複数のプロセッサ410または情報を処理するための処理回路に接続された当該バスを含むことができる。コンピューティング・システム400はまた、情報、およびプロセッサ410により実行される命令を格納するためにバス405に接続されたランダム・アクセスメモリ(RAM)または他の動的記憶デバイスのようなメイン・メモリ415を備える。メイン・メモリ415はまた、プロセッサ410による命令の実行中に位置情報、一時的変数、または他の中間情報を格納するために使用することができる。コンピューティング・システム400はさらに、読取専用メモリ(ROM)420またはプロセッサ410に対する静的な情報および命令を格納するためにバス405に接続された他の静的な記憶デバイスを含んでもよい。固体デバイス、磁気ディスクまたは光ディスクのような記憶デバイス425は情報および命令を永続的に格納するためにバス405に接続される。
【0110】
コンピューティング・システム400を、バス405を介して、情報をユーザに表示するための液晶ディスプレイ、またはアクティブ・マトリックス・ディスプレイのようなディスプレイ435に接続してもよい。英数字および他のキーを含むキーボードのような入力デバイス430が、情報およびコマンド選択をプロセッサ410に通信するためにバス405に接続されてもよい。入力デバイス430はタッチ・スクリーンディスプレイ435を含むことができる。入力デバイス430はまた、方向情報およびコマンド選択をプロセッサ410に通信し、ディスプレイ435上のカーソル移動を制御するためのマウス、トラックボール、またはカーソル方向キーのようなカーソル・コントロールを含むことができる。
【0111】
本明細書説明したプロセス、システムおよび方法を、プロセッサ410がメイン・メモリ415に含まれる命令の構成を実行することに応答して、コンピューティング・システム400により実装することができる。かかる命令を当該記憶デバイス425のような別のコンピュータ可読媒体からメイン・メモリ415に読み込むことができる。メイン・メモリ415に含まれる命令の構成の実行は、コンピューティング・システム400に本明細書説明した例示的なプロセスを実行させる。マルチプロセッシング構成での1つまたは複数のプロセッサを使用して、メイン・メモリ415に含まれる命令を実行してもよい。代替的な実装では、ハードワイヤード回路をソフトウェア命令の代わりにまたはそれと組み合わせて使用して例示的な実装に影響を及ぼしてもよい。したがって、実装はハードウェア回路およびソフトウェアのどの特定の組合せにも限定されない。
【0112】
1つの例示的なコンピューティング・システムを
図4で説明したが、本明細書で説明した機能的動作の主題の実装を、他のタイプのデジタル電子回路で、または本明細書で開示した構造およびそれらの構造的均等物を含むコンピュータ・ソフトウェア、ファームウェア、またはハードウェアで、またはそれらの1つまたは複数の組合せで実装することができる。
【0113】
本明細書で説明した主題および動作の実装をデジタル電子回路で、または本明細書で開示した構造およびそれらの構造的均等物を含むコンピュータ・ソフトウェア、ファームウェア、またはハードウェアで、またはそれらの1つまたは複数の組合せで実装することができる。本明細書で説明する主題を、1つまたは複数のコンピュータ・プログラム、例えば、データ処理装置による実行またはデータ処理装置の動作の制御のために1つまたは複数のコンピュータ記憶媒体で符号化されたコンピュータ・プログラム命令からなる1つまたは複数の回路として実装することができる。代替または追加として、当該プログラム命令を、データ処理装置による実行のために適切な受信器装置に送信するための情報を符号化するために生成された人工的に生成される伝播信号、例えば、マシン−生成される電気、光、または電磁気信号で符号化することができる。コンピュータ記憶媒体は、コンピュータ可読記憶デバイス、コンピュータ可読記憶基板、ランダムまたはシリアル・アクセスメモリアレイまたはデバイス、またはそれらの1つまたは複数の組合せであることができ、または、それに含まれることができる。さらに、コンピュータ記憶媒体は伝播信号ではないが、コンピュータ記憶媒体は、人工的に生成される伝播信号で符号化されたコンピュータ・プログラム命令のソースまたは宛先であることができる。当該コンピュータ記憶媒体はまた、1つまたは複数の別々のコンポーネントまたは媒体(例えば、複数のCD、ディスク、または他の記憶デバイス)であることができ、または、それに含まれることができる。
【0114】
本明細書で説明した動作を、1つまたは複数のコンピュータ可読記憶デバイスまたはから受信された他のソースに格納されたデータに対してデータ処理装置により実施することができる。
【0115】
「データ処理装置」という用語または「コンピューティング・デバイス」は様々な装置、デバイス、およびデータを処理するためのマシンを包含し、例えばプログラム可能プロセッサ、コンピュータ、システム・オン・チップ、または以上のうち複数または組合せを含む。当該装置は、特殊目的ロジック回路、例えば、FPGA(フィールドプログラム可能ゲートアレイ)またはASIC(特殊用途向け集積回路)を含むことができる。当該装置はまた、ハードウェアに加えて、着目する当該コンピュータ・プログラムのための実行環境を生成するコード、例えば、プロセッサファームウェア、プロトコル・スタック、データベース管理システム、オペレーティング・システム、クロスプラットフォームランタイム環境、仮想マシン、またはそれらの1つまたは複数の組合せを構成するコードを含むことができる。当該装置および実行環境は、様々な異なるコンピューティングモデルインフラのようなウェブサービス、分散コンピューティングおよびグリッドコンピューティングインフラを実現することができる。
【0116】
コンピュータ・プログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとしても知られる)を、コンパイル型またはインタプリタ型言語、宣言型言語または手続型言語を含む任意の形態のプログラミング言語で書くことができ、それを、スタンドアロンプログラムとしてまたは回路、コンポーネント、サブルーチン、オブジェクト、またはコンピューティング環境での使用に適した他のユニットとしてを含めて任意の形態で展開することができる。コンピュータ・プログラムが、ファイルシステム内のファイルに対応してもよいがその必要はない。プログラムを、他のプログラムまたはデータを保持するファイルの部分(例えば、マークアップ言語ドキュメントに格納された1つまたは複数のスクリプト)に、着目する当該プログラム専用の単一のファイルに、または複数の協調型ファイル(例えば、1つまたは複数の回路、サブプログラム、またはコードの部分を格納するファイル)に格納することができる。コンピュータ・プログラムを、1つのコンピュータ上、または、1つのサイトに配置されるかまたは複数のサイトに分散し通信ネットワークにより相互接続された複数のコンピュータ上で実行されるように展開することができる。
【0117】
コンピュータ・プログラムの実行に適したプロセッサは、例えば、両方の汎用目的および特殊目的マイクロプロセッサ、および任意の種類のデジタルコンピュータの任意の1つまたは複数のプロセッサを含む。一般に、プロセッサは、読取専用メモリまたはランダム・アクセスメモリまたはその両方から命令とデータを受信する。コンピュータの本質的な要素は、命令に従ってアクションを実施するためのプロセッサおよび命令およびデータを格納するための1つまたは複数のメモリデバイスである。一般に、コンピュータは、データを格納するための1つまたは複数の大容量記憶デバイス、例えば、磁気、光磁気ディスク、または光ディスクを含むか、または、それらとデータを送受信するようにそれらに動作可能に接続される。しかし、コンピュータがかかるデバイスを有する必要はない。さらに、コンピュータを別のデバイス、例えば、少しだけ例を挙げれば携帯電話、携帯情報端末(PDA)、モバイル・オーディオ・プレイヤまたはビデオ・プレイヤ、ゲーム・コンソール、全地球測位システム(GPS)受信器、またはポータブル記憶デバイス(例えば、ユニバーサル・シリアル・バス(USB)フラッシュ・ドライブ)、に組み込むことができる。コンピュータ・プログラム命令およびデータを格納するのに適したデバイスはあらゆる種類の、例えば半導体メモリデバイス、例えば、EPROM、EEPROM、およびフラッシュメモリデバイスを含む不揮発性メモリ、媒体およびメモリデバイス、磁気ディスク、例えば、内部ハード・ディスクまたは取外し可能ディスク、光磁気ディスク、およびCDROMおよびDVD−ROMディスクを含む。当該プロセッサおよび当該メモリを特殊目的ロジック回路により補完するかまたはそれに組み込むことができる。
【0118】
ユーザとの対話を提供するために、本明細書で説明する主題の実装を、情報をユーザに表示するためのディスプレイデバイス、例えば、CRT(カソード・レイ・チューブ)またはLCD(液晶ディスプレイ)モニタおよびキーボードおよびポインティング・デバイス、例えば、ユーザがそれにより入力を当該コンピュータに提供できるマウスまたはトラックボール有するコンピュータで実装することができる。他種のデバイスを使用してユーザとの対話を同様に提供することができる、例えば、ユーザに提供されるフィードバックは、任意の形態のセンサ・フィードバック、例えば、視覚的フィードバック、可聴フィードバック、または触覚フィードバックであることができ、ユーザからの入力を、音響、会話、または触覚入力を含む任意の形態で受信することができる。
【0119】
本発明の諸実施形態では、当該補完的コンテンツ・アイテムは任意の好都合な形態をとってもよく、画像、テキスト等を含むコンテンツであってもよい。幾つかの実装では、当該コンテンツは広告または他のスポンサーされたコンテンツであってもよい。
【0120】
示したように、データ処理システム120は、当該コンテンツ要求に応答するか、またはそうでない場合はオンライン・ドキュメントに表示するための候補(例えば、ウェブ・ページ)である複数のコンテンツ・アイテム(例えば、第1の候補コンテンツ・アイテムおよび第2の候補コンテンツ・アイテム)を識別しうる。データ処理システムは、オンラインオークションプロセスを開始または利用して、当該オンライン・ドキュメントに表示するための1つまたは複数当該複数のコンテンツ・アイテムを選択してもよい。オークションシステムは、オンライン・ドキュメント内に表示されるべきコンテンツ・アイテムに対する複数の入札を決定してもよい。当該オークションシステムは、オークションプロセスを通じて当該入札を実行して、1つまたは複数の落札を決定することができる。当該落札に対応するコンテンツ・アイテムは、当該オンライン・ドキュメント上でまたはそれとともに表示するために選択されてもよい。
【0121】
幾つかの実装では、データ処理システムは、コンテンツ・プロバイダへの通話を開始し、当該通話の当該2つの部分をブリッジしてもよい(例えば、顧客の通話を、コンテンツ・プロバイダへのデータ処理システムの通話とともにデータ処理システムにブリッジする)。幾つかの実装では、データ処理システムは当該通話をコンテンツ・プロバイダに転送してもよい。コンテンツ・プロバイダは、当該通話の間または後に、コンバージョンが当該通話を介して発生した(例えば、商品またはサービスの購入が行われた)と判定してもよい。コンテンツ・プロバイダは当該コンバージョン情報をデータ処理システムに提供することができる。データ処理システムは、当該仮想電話番号を介して行われた通話に対応するコンテンツ・アイテム・インプレッション・データまたは追跡データを識別し、当該コンテンツ・アイテム・インプレッション・レコードまたはデータを当該コンバージョン情報で更新して性能レポートを生成することができる。
【0122】
別の例示的な実装では、データ処理システムは検索エンジンへの検索クエリ入力を受信する。データ処理システムは、当該検索クエリに応答して、検索結果を提供し、さらに、当該検索クエリにマッチする当該検索結果とともに表示するためのコール広告を選択し提供する。当該コール広告は広告主に対する仮想電話番号を表示してもよい。当該コール広告は、当該仮想電話番号を受信したことに応答して、当該コール広告における関心(例えば、当該コール広告のクリックまたは選択または当該コール広告との他の対話)の指示を表示してもよい。ユーザは、当該コール広告を介して提供された番号を用いて、広告主に関連付けられたコール広告に発信してもよい。コンテンツ・プロバイダは、当該通話の間または後に、商品またはサービスの購入のようなコンバージョンが当該通話を介して発生したと判定してもよい。コンテンツ・プロバイダは当該コンバージョン情報をデータ処理システムに提供することができる。データ処理システムは、当該仮想電話番号を介して行われた通話に対応するコンテンツ・アイテム・インプレッション・データまたは追跡データを識別し、当該コンテンツ・アイテム・インプレッション・レコードまたはデータを当該コンバージョン情報で更新して、性能レポートを生成することができる。
【0123】
当該暗号化された発信側IDに格納されたメモリが当該デバイスのデバイス識別子に対応する実装では、後の時点で、データ処理システムは、1)発信側ID、2)タイムゾーン情報を伴う通話開始時間、3)(例えば、秒での)通話期間、4)コンバージョン・ラベルのようなラベル(例えば、購入、サブスクリプション、または調査)、5)コンバージョン時間、6)コンバージョン値のようなラベル値(例えば、当該コンバージョンに関連付けられた価格または他のターム)、7)コンバージョン通貨(例えば、米国ドル)、または8)当該通話が受信され行われたコンテンツ・プロバイダ・デバイスの電話番号のうち1つまたは複数を含む、コンテンツ・プロバイダによりアップロードされたコンバージョン・データを含む音声呼エントリを受信することができる。当該システムはついで、再生成された暗号化された発信側IDを検索鍵として用いて検索を実施して、当該内部的に格納された暗号化された発信側IDを、広告主がアップロードした通話データとマッチすることができる。
【0124】
データ処理システムは当該音声呼エントリ内の第4のフィールドを解析して、当該音声呼に対するコンバージョン・ラベルを識別することができる。当該コンバージョン・ラベルを、コンテンツ・プロバイダにより割り当てることができる。データ処理システムは、当該データ構造に対応するコンテンツ・アイテム・インプレッションを更新して、当該コンバージョン・ラベルを当該識別されたコンテンツ・アイテム・インプレッションに起因させることができる。当該コンバージョン・ラベルは、購入、サブスクリプション、または調査のうち少なくとも1つを含むことができる。データ処理システムは、当該音声呼エントリ内の第5のフィールドを解析して、当該音声呼に対するコンバージョン値、当該コンバージョン値により割り当てられたコンテンツ・プロバイダを識別することができる。データ処理システムは、当該コンテンツ・アイテム・インプレッションに対応する当該データ構造を更新して、当該コンバージョン値を当該識別されたコンテンツ・アイテム・インプレッションに起因させることができる。
【0125】
本明細書は多くの特定の実装の詳細を含むが、これらを任意の発明の範囲またはクレームしたものの範囲に対する限定として解釈するべきではなく、寧ろ、特定の発明の特定の実装に固有な特徴の説明として解釈すべきである。本明細書で別々の実装の文脈で説明した特定の特徴をまた、単一の実装における組合せで実装することができる。反対に、単一の実装の文脈で説明した様々な特徴をまた、複数の実装で別々にまたは任意の適切な副次的組合せで実装することができる。さらに、機能は一定の組合せで動作するとして上述され、初期にはそのようにクレームされているが、クレームした組合せからの1つまたは複数の特徴を幾つかのケースでは当該組合せから実施でき、当該クレームした組合せが副次的組合せまたは副次的組合せの変形に関連してもよい。
【0126】
同様に、動作を当該図面において特定の順序で描いてあるが、これを、所望の結果を実現するために、かかる動作を示した特定の順序または逐次的順序で実施すること、または、全ての例示された動作が実施されることを要求するとして理解するべきではない。一定の状況では、マルチタスクおよび並列処理が有利でありうる。さらに、上述の実装における様々なシステムコンポーネントの分離は全ての実装においてかかる分離を要求するとして解釈すべきではなく、当該説明されたプログラムコンポーネントおよびシステムを一般に単一のソフトウェア製品に統合するかまたは複数のソフトウェア製品にパッケージ化できることは理解されるべきである。
【0127】
「または」への言及は、「または」を用いて説明した任意の事項が当該説明された事項の1つ、複数、および全ての何れかを示し得るように、包含的に解釈されうる。
【0128】
このように、当該主題の特定の実装を説明した。他の実装は添付の特許請求の範囲内にある。幾つかのケースでは、特許請求の範囲に記載した動作を異なる順序で実施して、依然として所望の結果を達成することができる。さらに、添付図面に示したプロセスは、所望の結果を得るために必ずしも示した特定の順序、または逐次的順序を必要としない。特定の実装では、マルチタスクおよび並列処理が有利でありうる。