(58)【調査した分野】(Int.Cl.,DB名)
前記ユーザの個人情報が、前記ユーザの識別子と、データサービスにアクセスするために前記ユーザが使用可能な計算装置の1つ又は複数の識別子とを含む、請求項1に記載のコンピュータ実装方法。
前記第1計算装置及び前記第2計算装置は、前記第1計算装置が、前記第2計算装置からそれぞれのウェブサーバへのデータアクセス要求を処理するよう構成されるように一世帯内に配置されている、請求項1に記載のコンピュータ実装方法。
前記第2計算装置がパーソナルコンピュータ、タブレットコンピュータ、及びスマートフォンからなるグループから選択された1つである、請求項1に記載のコンピュータ実装方法。
もし前記計算装置レコードが、前記第2計算装置の前記ユーザが前記データアクセス要求を前記ユーザの個人情報に関連付ける許可を受けているかどうかを示していない場合は、前記第1計算装置は、前記データアクセス要求を前記第2計算装置の前記識別子に関連付けるよう構成されている、請求項8に記載のコンピュータ実装方法。
もし前記計算装置レコードが、前記第2計算装置の前記ユーザが前記データアクセス要求の前記ユーザの個人情報への関連付けを許可しないことを示している場合は、前記第1計算装置は、前記データアクセス要求を飛ばすよう構成されている、請求項8に記載のコンピュータ実装方法。
前記第2計算装置がパーソナルコンピュータ、タブレットコンピュータ、及びスマートフォンからなるグループから選択された1つである、請求項12に記載の第1計算装置。
もし前記計算装置レコードが、前記第2計算装置の前記ユーザが前記データアクセス要求を前記ユーザの個人情報に関連付ける許可を受けているかどうかを示していない場合は、前記第1計算装置は、前記データアクセス要求を前記第2計算装置の前記識別子に関連付けるよう構成されている、請求項15に記載の第1計算装置。
もし前記計算装置レコードが、前記第2計算装置の前記ユーザが前記データアクセス要求の前記ユーザの個人情報への関連付けを許可しないことを示している場合は、前記第1計算装置は、前記データアクセス要求を飛ばすよう構成されている、請求項15に記載の第1計算装置。
1つ又は複数のプロセッサと1つ又は複数のプログラムを格納するメモリとを含む第1計算装置により実行されるよう構成された1つ又は複数のプログラムを格納する非一時的なコンピュータ可読記憶媒体であって、前記1つ又は複数のプログラムが、
第2計算装置からデータアクセス要求を受け取る命令であって、前記データアクセス要求は、遠隔サーバにおけるデータサービスにアクセスするために前記第2計算装置のユーザによって生成される、受け取る命令と、
前記ユーザが以前に前記第2計算装置を介して個人情報及び許可を前記第1計算装置に与えているかを特定する命令と、
前記ユーザの個人情報及び許可が見つかる場合は、
前記データアクセス要求のレコードを生成する命令であって、前記レコードは、前記ユーザの個人情報及び前記データアクセス要求の識別子を含む、生成する命令とを含み、
前記ユーザの個人情報は見つかるが、前記ユーザの許可が見つからない場合は、
前記データアクセス要求のレコードを生成する命令であって、前記レコードは、前記データアクセス要求の識別子及び前記第2計算装置の識別子を含む、生成する命令とを含み、
前記ユーザの個人情報も許可も見つからない場合は、
前記第2計算装置に関連付けられた1つ又は複数のユーザ識別子を特定する命令と、
前記1つ又は複数のユーザ識別子に関連付けられた個人情報を前記第2計算装置に返す命令であって、前記第2計算装置の前記ユーザが前記1つ又は複数のユーザ識別子のいずれかに関連付けられた個人情報を選択できるように、前記1つ又は複数のユーザ識別子に関連付けられた前記個人情報が前記第2計算装置で表示される、返す命令とを含む、非一時的なコンピュータ可読記憶媒体。
【発明を実施するための形態】
【0007】
図1は、ある世帯における、インターネット上の複数のウェブサーバと通信する複数の計算装置を含むクライアント・サーバコンピュータネットワークを示すブロック図であり、このコンピュータネットワークは、幾つかの実装例に従って、この世帯からのウェブイベントをこの世帯の特定成員に関連付ける役割を担うこの世帯のルータと遠隔ウェブトラフィック・ロギングサーバとを含む。この例では、世帯180の計算装置には、1つ又は複数のコンピュータ103(例えばデスクトップ、ラップトップ、タブレットなど)、ゲームコンソール122、スマートフォン又はMP3プレーヤ124、スマートテレビ117、及びテレビメータ116(例えばセットトップボックス)が含まれる。幾つかの実装例では、スマートテレビ117及びテレビメータ116は1つの装置として結合してもよい。図示したように、これら計算装置からのデータアクセス要求は、この世帯のルータ120、インターネットサービスプロバイダ128、及び通信ネットワーク130を介してそれぞれのウェブサーバ140に送られる。
【0008】
上述したように、異なる世帯成員118とこの世帯の計算装置との関係は多対多である。言い換えれば、1人の世帯成員がコンピュータ103からオンラインショッピング・ウェブサイトに検索クエリを送信する一方で、同時に別の世帯成員がスマートテレビ117からソーシャルネットワーキング・ウェブサイトを訪問することがある。同様に、同じ世帯成員が、ある時にオンラインゲームをするためにゲームコンソール122を使用しながら自分のスマートフォン124から友人に電子メッセージを送ることもあろう。これらウェブイベントはすべてルータ120によって捕捉(capture)できるが、複数の世帯成員と複数の計算装置との間の多対多の関係によって、どの世帯成員が特定のデータアクセス要求に関わっているのかを特定するのは困難である。幾つかの実装例では、単一のインターネット接続及びルータを共有する一世帯内の複数の個別成員に関連付けられたウェブイベントを追跡することに関心がある。例えば、これは多数の世帯成員が、個人的に及び/又は世帯として自分たちのウェブ行動を測定するパネルの参加者となっている場合に当てはまる。幾つかの実装例では、パネル参加者である世帯の一成員が、自分がインターネットをブラウジングするのに使用するつもりの計算装置から自分のアカウントに最初にログインすることが求められる。世帯及び/又は個別成員と、この世帯のウェブ行動に関連付けられたデータの収集に関心があるサービス提供機関(例えばウェブトラフィック・ロギングサーバ150を動作させる組織)と、の間で交わされた使用条件では、そうした個人が収集ソフトウェア又はそのサービス提供機関における自分のアカウントにログインするか、ウェブセッション開始前に情報収集にそれ以外の態様で同意していなければ、個人レベルのデータをウェブセッションに関しては収集しないよう規定されているかもしれない。言い換えれば、使用条件では、このサービス提供機関は、この世帯から任意データを収集する前又は他の目的で世帯のデータを使用する前に、世帯成員から事前の承認を受ける必要がある。幾つかの実装例では、この世帯から収集されたデータが正当であるだけでなく有意義であって、サードパーティデータ・アナリスト(例えば広告会社の営業部員)がそのデータから有用な結果を得られることを保証するため、この合意は世帯成員が従うべきプロトコルを指定する。例えば、インターネットのブラウジングを開始する前に、世帯成員(パネリストとも呼ぶ)は、その後のウェブブラウジング行動がログ記録されるべきか否かを指定するため自分のアカウントにログインする必要がある。
【0009】
幾つかの実装例では、ある世帯がそのウェブブラウジング行動がログ記録されることに同意すれば、その世帯は、各世帯成員に関する人口統計学的(demographic)情報を提供し、その人口統計学的情報を用いてウェブトラフィック・ロギングサーバ150において各世帯成員のアカウントを作成する。さらに、この世帯は、世帯成員がインターネットをブラウジングするのに使用する計算装置のリストを提出することもできる。こうした情報は、世帯成員においてウェブトラフィック・ロギングサーバ150及び場合によってはルータ120で格納される。この世帯が新たな計算装置を購入したり既存の計算装置の使用を中止したりする度に、この世帯は、その関連装置情報をそれに合わせて更新するようになっている。任意の世帯におけるインターネットにアクセス可能な計算装置は、概ね2つの別個のグループに区別できることに注目されたい。コンピュータ103及びスマートフォン124などの第1グループの計算装置は、通常、より一般的且つ/又はアクセス可能なユーザインターフェース及びオペレーティングシステムを備えているので、サードパーティ開発者にとって、異なる世帯成員が自分のアカウントへのログインして、ルータ120及びウェブトラフィック・ロギングサーバ150へ命令を与えるためのアプリケーションの開発は比較的容易である。スマートテレビ117及びゲームコンソール122などの第2グループの計算装置は、サードパーティアプリケーション(例えばパネリスト登録用のアプリケーション)をサポートするのをより困難にするより独自に開発されたオペレーティングシステム上で動作する。両方のグループの計算装置から発生するウェブブラウジング行動を捕捉するため、多数のアプローチが本明細書に記載されているが、それぞれのアプローチでは、世帯内の1つ又は複数の計算装置と、特別にプログラムされたルータ120と、ウェブトラフィック・ロギングサーバ150とが協働する。
【0010】
図2は、幾つかの実装例に従って、この世帯内で異なる計算装置を使用する異なる世帯成員からのデータアクセス要求を処理するためのルータ120の構成要素を示すブロック図である。ルータ120は、メモリ126に格納されたモジュール、プログラム、及び/又は命令を実行し、従って処理動作を実行するための1つ又は複数の処理ユニット(CPU)202と、1つ若しくは複数のネットワーク又は他の通信インターフェース110と、メモリ126と、これらの構成要素を相互に接続するための1つ又は複数の通信バス214とを含む。幾つかの実装例では、ルータ120は、表示装置208と1つ又は複数の入力装置206(例えば、キーボード又はマウス)とを備えたユーザインターフェース304を含む。幾つかの他の実装例では、ルータ120は、別の計算装置と出入力アクセサリを共有している。例えば、ある世帯成員は、例えばウェブブラウザウィンドウ又は専用アプリケーションを用いて、ルータ120に有線又は無線で接続されたコンピュータ103からルータ120を構成できる。
【0011】
幾つかの実装例では、メモリ126は、DRAM、SRAM、DDR RAM、又は他のランダムアクセス固体メモリ素子などの高速ランダムアクセスメモリを含む。幾つかの実装例では、メモリ126は、1つ又は複数の磁気ディスク記憶装置、光学ディスク記憶装置、フラッシュメモリ装置、又は他の不揮発性固体記憶装置などの不揮発性メモリを含む。幾つかの実装例では、メモリ126は、1つ又は複数のCPU 202から遠隔地に配置された1つ又は複数の記憶装置を含む。メモリ126或いはメモリ126内の不揮発性メモリ素子は、非一時的なコンピュータ可読記憶媒体を含む。幾つかの実装例では、メモリ126又はメモリ126のコンピュータ可読記憶媒体は、次の要素又はそれらの要素の部分集合を格納し、且つ付加的な要素も含むことができる。
・様々な基本システムサービスを処理し且つハードウェア依存タスクを実行するためのプロシージャを含むオペレーティングシステム216;
・通信ネットワークインターフェース210と、インターネット、他のワイドエリアネットワーク、ローカルネットワーク、メトロポリタン地域ネットワークなどの1つ又は複数の通信ネットワーク(有線又は無線)とを介してルータ120を他の計算装置に接続するために使用されるネットワーク通信モジュール218;
・異なる計算装置からのデータアクセス要求及び異なるウェブサーバからのこれら要求への応答を調べるためのウェブトラフィック検査モジュール220であって、データアクセス要求から情報を抽出し、その情報を分析してそれに従って適切な動作を特定するデータアクセス要求分析モジュール222と、分析結果及びルータ120が実行した対応する動作をウェブトラフィック・ロギングサーバ150に報告するウェブトラフィック報告モジュール224とを含むウェブトラフィック検査モジュール220;
・それぞれのレコード(226-1, ..., 226-M)が、1人の世帯成員のユーザID 228、その世帯成員に関する他の情報230、及び関連付けられた装置情報232(例えば、その世帯成員がインターネットをブラウジングするのに頻繁に使用する計算装置の識別子)などの世帯成員の個人情報を含む複数のユーザレコード226;
・それぞれのレコード(234-1, ..., 234-N)が装置ID 236(例えば、IPアドレス又はMACアドレス)、装置タイプ238(例えば、コンピュータ、ゲームコンソール、スマートフォン、スマートテレビなど)、装置位置240(例えば、居間、寝室など)、ユーザ情報242(例えば、インターネットブラウジングに当該計算装置を使用する可能性が高い世帯成員のユーザID)を含む複数の計算装置レコード234;及び
・それぞれのレコード(244-1, ..., 244-P)が世帯の特定の計算装置からのウェブサーバへのデータアクセス要求に対応した複数のデータアクセスレコード244であって、それぞれがレコードID246、装置ID247、ユーザID248、タイムスタンプ、及びウェブアドレス249(例えばねURL)を含んでいる。
【0012】
後述するように、ルータ120内の異なる構成要素は、任意の計算装置からのそれぞれのウェブブラウジング行動を、可能なら(その世帯成員の同意があれば)その世帯成員に関連付けるデータアクセスレコードを生成し、次にそのデータアクセスレコードをウェブトラフィック・ロギングサーバ150に提出することによって協働する。
【0013】
図3は、幾つかの実装例に従って異なる世帯からウェブトラフィックデータを収集し且つ編成するためのウェブトラフィック・ロギングサーバの構成要素を示すブロック図である。ウェブトラフィック・ロギングサーバ150は、メモリ312に格納されたモジュール、プログラム、及び/又は命令を実行し、従って処理動作を実行するための1つ又は複数の処理ユニット(CPU)302と、1つ若しくは複数のネットワーク又は他の通信インターフェース310と、メモリ312と、これらの構成要素を相互に接続するための1つ又は複数の通信バス314とを含む。幾つかの実装例では、ウェブトラフィック・ロギングサーバ150は、表示装置308と1つ又は複数の入力装置306(例えばキーボード又はマウス)とを備えたユーザインターフェース304を含む。
【0014】
幾つかの実装例では、メモリ312は、DRAM、SRAM、DDR RAM、又は他のランダムアクセス固体メモリ素子などの高速ランダムアクセスメモリを含む。幾つかの実装例では、メモリ312は、1つ又は複数の磁気ディスク記憶装置、光学ディスク記憶装置、フラッシュメモリ装置、又は他の不揮発性固体記憶装置などの不揮発性メモリを含む。幾つかの実装例では、メモリ312は、1つ又は複数のCPU302から遠隔地に配置された1つ又は複数の記憶装置を含む。メモリ312或いはメモリ312内の不揮発性メモリ素子は、非一時的なコンピュータ可読記憶媒体を含む。幾つかの実装例では、メモリ312又はメモリ312のコンピュータ可読記憶媒体は、次の要素又はそれらの要素の部分集合を格納し、且つ付加的な要素も含むことができる。
・様々な基本システムサービスを処理し且つハードウェア依存タスクを実行するためのプロシージャを含むオペレーティングシステム316;
・通信ネットワークインターフェース310と、インターネット、他のワイドエリアネットワーク、ローカルネットワーク、メトロポリタン地域ネットワークなどの1つ又は複数の通信ネットワーク(有線又は無線)とを介してウェブトラフィック・ロギングサーバ150を他のコンピュータに接続するために使用されるネットワーク通信モジュール318;
・多数の世帯から収集されたウェブトラフィックデータ・レコードを調べてそれらレコードから統計的情報を導き出すためのウェブトラフィック分析モジュール320;幾つかの実装例では、ウェブトラフィック分析モジュール320は、データアクセスレコードの原因である複数の個人であって、異なる世帯のルータが、これらデータアクセスレコードに関して関連付けできない特定の世帯成員の特徴を記述する1つ又は複数の分類器(例えば、性別分類器モジュール322又は年齢分類器モジュール324)をさらに含む;
・それぞれのレコード(328-1, ..., 328-M)が一意のレコードID 330及び関連付けられたウェブトラフィックデータ332及び世帯データ334(例えば、異なるルータにより提出されたデータアクセスレコードから抽出された情報)を含む複数のウェブトラフィックレコード326;
・それぞれのレコード(338-1, ..., 338-N)が各世帯成員のユーザ情報レコード340などの特定の世帯から収集された情報を含む複数の世帯情報レコード336。
【0015】
図1に示したように、図示した計算装置は、ルータ120を介してウェブサーバ140と通信する。言い換えれば、これら計算装置いずれからの各データアクセス要求もその宛先に到着する前にルータ120を通過し、これがルータ120に、その要求が特定の計算装置を使用する特定の世帯成員に一意に関連付けられているかをチェックする特別な機会を提供する。もしそうであれば、ルータ120は、それに従ってデータアクセスレコードを生成できる。そうでなければ、ルータ120は、ルータ自身が持っているその他の情報を活用することで、データアクセス要求の原因が誰かを特定できないままその要求をウェブトラフィック・ロギングサーバ150に報告する可能性を低くできる。下記は、データアクセス要求が出された計算装置のタイプと、ルータ120のメモリ126内に格納されているその計算装置を使用する世帯成員の情報とに基づいてこの曖昧さを低下させるための3つのアプローチである。
【0016】
図4Aは、幾つかの実装例に従って、第1計算装置(例えば、ルータ120)により受け取られたデータアクセス要求の原因となった世帯成員の特定を試みるための、第1計算装置及び第2計算装置(例えば、コンピュータ103)により実行される第1のインタラクティブ処理を示すフローチャートである。例えば、任意の世帯成員は、タブレットコンピュータを使ってオンライン書店から本を注文することができる。この取引の一環として、タブレットコンピュータはデータアクセス要求(例えば、HTTP要求)をそのオンライン書店に関連付けられたウェブサーバに送信する必要があり、このデータアクセス要求の第1ストップはルータ120である(401)。
【0017】
データアクセス要求が受け取られると(403)、ルータ120は、このデータアクセス要求内の1つ又は複数のパラメータを調べ(405)、次にそれに従って適切な動作を行う。例えば、ルータ120は、このデータアクセス要求から、この世帯のどの第2計算装置からこのデータアクセス要求が発信されたかを示す装置IDを抽出する。幾つかの実装例では、この装置IDは第2計算装置(例えば、ラップトップコンピュータ)のIPアドレスである。幾つかの実装例では、この装置IDは、第2計算装置(例えば、スマートフォン)のMACアドレスである。抽出された装置IDを使って、次にルータ120はそれ自身のメモリを調べて、第2計算装置のユーザが自分の個人情報と、データアクセス要求をユーザの個人情報に関連付ける許可を与えているかを確認する(407)。
図2に関連して述べたように、この装置IDに関連付けられた計算装置レコードは、例えば、どの世帯成員がその第2計算装置を現在使用しているかを示すユーザ情報を含むことができ、仮にそうであれば、その世帯成員が、ルータ120がこのデータアクセス要求をその世帯成員に関連付ける許可を与えているかを示すユーザ情報を含むことができる。
【0018】
ルータ120は、任意の世帯成員がそれまでに自分のアカウントにログインして自分のウェブブラウジング行動が自分の名前でログ記録される許可を与えていることを確認すると、ルータ120は、次にその要求に関するデータレコード(例えば、データアクセスレコード)を生成し(411)、このレコードは、少なくともそのデータアクセス要求の識別子(ルータ120又はウェブトラフィック・ロギングサーバ150によってそのデータアクセス要求に一意に割り当てられる)と、その世帯成員の個人情報(例えば、ユーザID)と、場合によってはこの要求が発信された第2計算装置を特定する装置IDとを含む。
【0019】
幾つかの実装例では、ルータ120は、装置IDに関連付けられたユーザ情報が装置レコード内に存在しないことを確認することがあるが、これは、世帯成員が、プロトコルに従って自分のアカウントにログインしないでウェブのブラウジングを開始する場合に起こりうる。この場合は、ルータ120はユーザレコードを調べて、その第2計算装置に関連付けられた1つ又は複数のユーザ識別子を特定できる(413)。上述したように、各世帯成員は、自分がインターネットのブラウジングに頻繁に使用する計算装置のリストを提出することになっている。このデータアクセス要求が送信された第2計算装置に関連付けられたユーザIDを識別すると、次にルータ120は、これらユーザ識別子に関連付けられた個人情報を第2計算装置に返す(415)。例えば、ルータ120は、この第2計算装置の使用を登録した世帯成員の名前を返してもよい。
【0020】
この個人情報を受け取ると(417)、次に、この第2計算装置は、その第2計算装置の現在のユーザにこの個人情報を表示する。上述したように、タブレット又はスマートフォンのような計算装置は、その装置のユーザが、ルータ120で自分のアカウントにログインするためのインストール済みアプリケーションを備えていることがある。この第2計算装置は、受け取られた個人情報を使ってユーザアイコンのリストを画面上に表示でき、各ユーザアイコンは、この装置の使用を登録している1人の世帯成員を表している。これらユーザアイコンのうち1つをユーザが選択した(419)ことに応答して、この第2計算装置は、ユーザが選択したアイコンに関連付けられた個人情報をルータ120に返す(412)。ルータ120は次に、ステップ411に関連して上述したように、それに従ってデータアクセスレコードを生成する。そうすることによって、この第2計算装置を現在使用している世帯成員は、自分の個人情報とこのデータアクセス要求を自分に関連付ける許可とをさかのぼって提出できる。
【0021】
幾つかの実装例では、上述のアプローチは、第2計算装置がそれを介してルータ120とデータ交換し且つルータ120にユーザ指定動作の実行を命令する既定のアプリケーション・プログラミング・インタフェース(API)を、ルータ120が第2計算装置にエクスポーズすることによって達成可能である。例えば、任意のウェブサイトを訪れる前に、第2計算装置のユーザはその装置上でアプリケーションを起動し、自分のユーザ名及びパスワード(必要なら)をルータ120に提供することでルータ120において自分のアカウントにログインできる。又、このアプリケーションは、ルータ120及びウェブトラフィック・ロギングサーバ150に格納されているこの世帯の個人情報及び装置情報を更新するため、この世帯によって使用される。
【0022】
幾つかの実装例では、第2計算装置を使用する世帯成員は、自分のアカウントにログインした後、ルータ120が第2計算装置からのデータアクセス要求をその世帯成員に関連付けるための許可を拒否できる。この場合、ルータ120は、データアクセスレコードを生成したり、その世帯成員のウェブブラウジングイベントに関してなにもウェブトラフィック・ロギングサーバ150に送ったりしない。幾つかの他の実装例では、任意の世帯成員は、ルータ120がウェブブラウジングセッションをログ記録する許可を与えられているかをそのルータに通知しないでウェブブラウジングセッションの最初又は途中で自分のアカウントにログインできる。この場合、ルータ120は許可が与えられていないことは拒否を意味するものと推定し、従ってこのウェブブラウジングセッションのログ記録はそれ以上の動作を行わない。代替的には(
図4Aに示したように)、ルータ120は、データアクセス要求に関するデータレコードを生成でき(409)、このデータレコードは、そのデータアクセス要求の識別子と、第2計算装置の識別子と、オプションで第2計算装置の種類とを含み、次にルータ120は、このデータレコードをさらなる処理のためウェブトラフィック・ロギングサーバ150に送ることができる。
【0023】
図4Bは、幾つかの実装例に従って、第1計算装置(例えば、ルータ120)が、第2計算装置からのデータアクセス要求をどのように処理するかをさらに示すフローチャートである。第1計算装置は、先ず第2計算装置からデータアクセス要求を受け取る(431)。このデータアクセス要求は、遠隔サーバ(例えば、ウェブサーバ)におけるデータサービスにアクセスするために第2計算装置のユーザによって生成される。このデータアクセス要求に応答して、第1計算装置は、ユーザが第2計算装置を介して第1計算装置にそれ以前に個人情報及び許可を与えているかを確認する(433)。ユーザの個人情報及びユーザの許可が両方とも見つかれば、第1計算装置は、次にこのデータアクセス要求のレコードを生成し、このレコードは、ユーザの個人情報及びこのデータアクセス要求の識別子を含む(435)。ユーザの個人情報が見つかるが、ユーザの許可は見つからない場合、次に、第1計算装置はこのデータアクセス要求のレコードを生成し、このレコードは、このデータアクセス要求の識別子と第2計算装置の識別子とを含む(437)。ユーザの個人情報もユーザの許可もどちらも見つからない場合は、第1計算装置は、第2計算装置に関連付けられた1つ又は複数のユーザ識別子を特定し(439)、次に、この1つ又は複数のユーザ識別子に関連付けられた個人情報を第2計算装置に返す(441)。この1つ又は複数のユーザ識別子に関連付けられた個人情報は、第2計算装置で表示され、第2計算装置のユーザが、この1つ又は複数のユーザ識別子のいずれかに関連付けられた個人情報を選択できるようになっている。
【0024】
幾つかの実装例では、ユーザがそれ以前に個人情報及び許可を第1計算装置に与えているかを確認するため、第1計算装置は、このデータアクセス要求から第2計算装置の識別子を抽出し、この第2計算装置の識別子を用いて計算装置レコードを特定する。次に、第1計算装置はこの計算装置レコードを調べて、このレコードが第2計算装置のユーザの個人情報とそのユーザの個人情報をデータアクセス要求に関連付ける許可とを含んでいるかを確認する。
【0025】
時として、任意の世帯成員は、新たに購入した計算装置を用いてこの装置を登録する前にインターネットをブラウジングすることがあり、ルータ120が、第2計算装置の識別子を用いて計算装置レコードを特定できないことがある。この場合、第1計算装置は、次にデータアクセス要求に従って第2計算装置の装置タイプを特定する。これは、例えば第2計算装置が上述した第1グループに属するのか第2グループに属するのかである。すると、第1計算装置は、第2計算装置の識別子及び特定された装置タイプを用いて新たな計算装置レコードを生成する。次に、第1計算装置は、登録メッセージを第2計算装置に送り、第2計算装置はグラフィカルユーザインターフェースを表示するよう構成されており、このグラフィカルユーザインターフェースは、第2計算装置のユーザにこのグラフィカルユーザインターフェースへ個人情報及び許可を与えるよう促し、ユーザが与えたこの個人情報及び許可を第1計算装置に転送する。最終的に、第1計算装置は、ユーザが与えたこの個人情報及び許可を用いて新たな計算装置レコードを更新する。
【0026】
図5Aは、幾つかの実装例に従って、第1計算装置(例えば、ルータ120)により受け取られたデータアクセス要求の原因となった世帯成員の特定を試みるための、第1計算装置及び第2計算装置により実行される第2のインタラクティブ処理を示すフローチャートである。第2計算装置は、この世帯成員がルータ120における自分のアカウントへのログインで使用するユーザログインサービスを提供するコンピュータ103か、或いはルータ120に関連付けられたユーザログインサービスを持たないゲームコンソール122でよいことに注目されたい。
【0027】
データアクセス要求が受け取られると(503)、ルータ120は、このデータアクセス要求内の1つ又は複数のパラメータを調べ(505)、次にそれに従って適切な動作を行う。例えば、ルータ120は装置IDをこのデータアクセス要求から抽出し、次に、この装置IDに関連付けられた装置レコードを特定する。第2計算装置に関連付けられた個人情報や許可が存在しない場合は、ルータ120は、このデータアクセス要求を特定の世帯成員に関連付けることができない。しかし、ルータ120は、第2計算装置がユーザログインサービスを提供するか否かを装置レコード内の情報に基づいて特定できる(507)。例えば、
図1に関連して上述したように、コンピュータ103やスマートフォン124などの装置はルータ120に関連付けられたユーザログインサービスを提供できるが、スマートテレビ117やゲームコンソール122などの他の装置はそれができない。
【0028】
ルータ120は第2計算装置がユーザログインサービスを提供することを確認すると(570・はい)、次にルータ120は、第2計算装置にそのログインサービスを画面に表示するよう通知する(509)。この通知を受け取ると(510)、次に、第2計算装置は、世帯成員の個人情報を第2計算装置の現在のユーザに表示することでユーザログインサービスを表示する。例えば、この個人情報は、画面上でユーザアイコンのリスト形式で表示してもよく、各ユーザアイコンは、この装置の使用を登録している1人の世帯成員を表している。例えばこれらユーザアイコンのうち1つをユーザが選択したことによるユーザ入力(513)に応答して、この第2計算装置は、ユーザが選択したアイコンに関連付けられた個人情報をルータ120に返す(515)。ルータ120は次に、ステップ411に関連して上述したように、それに従ってデータアクセスレコードを生成する。しかし、ルータ120は第2計算装置がユーザログインサービスを提供しないことを確認すると(507・いいえ)、すなわち、例えばこのデータアクセス要求がゲームコンソール122からのものであれば、ルータ120は、第2計算装置の識別子を特定し(519)、そのデータアクセス要求のデータレコードを生成する(521)。例えば、このデータレコードは、そのデータアクセス要求の識別子と、第2計算装置の識別子と、オプションで第2計算装置の種類とを含み、これはウェブトラフィック・ロギングサーバ150により処理できる。幾つかの実装例では、ルータ120は、世帯からの事前承認があった場合のみステップ519及び521に関連付けられた動作を行う(例えば、世帯が、ウェブトラフィック・ロギングサーバ150を管理するービス提供機関との契約書に署名している場合)。
【0029】
図5Bは、幾つかの実装例に従って、第1計算装置が、第2計算装置からのデータアクセス要求をどのように処理するかを示すフローチャートである。第1計算装置は、先ず第2計算装置からデータアクセス要求を受け取る(531)。このデータアクセス要求は、遠隔サーバ(例えば、ウェブサーバ)におけるデータサービスにアクセスするために第2計算装置のユーザによって生成される。第1計算装置は、このデータアクセス要求に応答してこのデータアクセス要求を調べ、第2計算装置がユーザログインサービスを提供しており、このサービスによりユーザが、第1計算装置にこのデータアクセス要求を第2計算装置のユーザへ関連付けることを許可できるか否かを特定する(533)。第2計算装置がユーザログインサービスを提供している場合は、第1計算装置は、第2計算装置に、ユーザログインサービスを使って第2計算装置のユーザから個人情報及び許可を収集させる。第2計算装置からユーザの個人情報及びユーザの許可を受け取ると(537)、第1計算装置は、ユーザの許可に従ってデータアクセス要求をユーザの個人情報に関連付けることによってデータレコードを生成する(539)。第2計算装置がユーザログインサービスを提供しない場合、第1計算装置は、データアクセス要求を第2計算装置の識別子に関連付けることによってデータレコードを生成する(541)。
【0030】
幾つかの実装例では、このデータアクセス要求を調べるため、第1計算装置は、このデータアクセス要求から第2計算装置の識別子を抽出し、第2計算装置のこの識別子を用いて計算装置レコードを特定する。次に、第1計算装置は、この計算装置レコードの装置タイプを調べて第2計算装置がユーザログインサービスを提供するかどうかを確認する。対応する装置レコードが存在しない計算装置に関しては、第1計算装置は、データアクセス要求に従って第2計算装置の装置タイプを特定する。これは、例えば第2計算装置が上述した第1グループに属するのか第2グループに属するのかである。すると、第1計算装置は、第2計算装置の識別子及び特定された装置タイプを用いて新たな計算装置レコードを生成する。第2計算装置が複数の既定の装置タイプのいずれかであれば(例えば、コンピュータ又はスマートフォン)、第1計算装置は登録メッセージを第2計算装置に送る。それに応答して、第2計算装置はグラフィカルユーザインターフェースを表示し、このグラフィカルユーザインターフェースは、第2計算装置のユーザにこのグラフィカルユーザインターフェースへ個人情報及び許可を与えるよう促し、ユーザが与えたこの個人情報及び許可を第1計算装置に転送する。すると、第1計算装置は、ユーザが与えたこの個人情報及び許可を用いて新たな計算装置レコードを更新する。しかし、第2計算装置が複数の既定の装置タイプのいずれかでもなければ(例えば、第2計算装置がスマートテレビ又はゲームコンソールである)、第1計算装置は第2計算装置の識別子を用いて新たな計算装置レコードを更新する。
【0031】
図6Aは、幾つかの実装例に従って、第1計算装置(例えば、ルータ120)により受け取られたデータアクセス要求の原因となった世帯成員の特定を試みるための、第1計算装置、第2計算装置(例えば、コンピュータ103又はゲームコンソール122)、及び第3計算装置(例えば、コンピュータ103又はスマートフォン124)により実行される第3のインタラクティブ処理を示すフローチャートである。言い換えると、第2計算装置はユーザログインサービスを提供できる場合もあればできない場合もあるが、第3計算装置はユーザログインサービスを提供できる。
【0032】
データアクセス要求が受け取られると(603)、ルータ120は、このデータアクセス要求内の1つ又は複数のパラメータを調べ(605)、次にそれに従って適切な動作を行う。例えば、ルータ120は装置IDをこのデータアクセス要求から抽出し、次に、この装置IDに関連付けられた装置レコードを特定する。第2計算装置に関連付けられた個人情報や許可が存在しない場合は、ルータ120は、このデータアクセス要求を特定の世帯成員に関連付けることができない。しかし、ルータ120は、第2計算装置がユーザログインサービスを提供するか否かを装置レコード内の情報に基づいて特定できる(607)。
【0033】
ルータ120は第2計算装置がユーザログインサービスを提供することを確認すると(607・はい)、次にルータ120は、第2計算装置にそのログインサービスを画面に表示するよう通知する(609)。この通知を受け取ると(610)、次に、第2計算装置は、世帯成員の個人情報を第2計算装置の現在のユーザに表示することでユーザログインサービスを表示する。例えば、この個人情報は、画面上でユーザアイコンのリスト形式で表示してもよく、各ユーザアイコンは、この装置の使用を登録している1人の世帯成員を表している。例えばこれらユーザアイコンのうち1つをユーザが選択したことによるユーザ入力(613)に応答して、この第2計算装置は、ユーザが選択したアイコンに関連付けられた個人情報をルータ120に返す(615)。ルータ120は次に、ステップ411に関連して上述したように、それに従ってデータアクセスレコードを生成する。
【0034】
しかし、ルータ120は第2計算装置がユーザログインサービスを提供しないことを確認すると(607・いいえ)、すなわち、例えばこのデータアクセス要求がゲームコンソール122からのものであれば、ルータ120は、第2計算装置に物理的に隣接した第3計算装置を特定する(619)。
図2に関連して上述したように、ルータ120はこれら計算装置の位置情報を格納できる。幾つかの実装例では、計算装置(例えば、タブレット又はスマートフォン)は、ルータ120が提供するAPIを使ってその位置情報を更新できる。この場合、ルータ120はデータアクセス要求が居間に配置されたゲームコンソールからのものであり、同じ部屋にスマートフォンが現時点で位置していることを確認すれば、ルータ120はこのスマートフォンを第3計算装置であると識別でき、そのスマートフォンにそのユーザログインサービスを表示するよう通知する(621)。
【0035】
この通知を受け取ると(623)、次に、第3計算装置は、世帯成員の個人情報を第2計算装置の現在のユーザに表示することでユーザログインサービスを表示する。例えば、この個人情報は、画面上でユーザアイコンのリスト形式で表示してもよく、各ユーザアイコンは、この装置の使用を登録している1人の世帯成員を表している。例えばこれらユーザアイコンのうち1つをユーザが選択したことによるユーザ入力(627)に応答して、この第3計算装置は、ユーザが選択したアイコンに関連付けられた個人情報をルータ120に返す(629)。すると、ルータ120は、第3計算装置により提供されたユーザの個人情報に関連付けることでそれに従ってデータアクセス要求を生成する(631)。
【0036】
図6Bは、幾つかの実装例に従って、第1計算装置が、第2計算装置からのデータアクセス要求をどのように処理するかを示すフローチャートである。第1計算装置は、先ず第2計算装置からデータアクセス要求を受け取る(631)。このデータアクセス要求は、遠隔サーバ(例えば、ウェブサーバ)におけるデータサービスにアクセスするために第2計算装置のユーザによって生成される。このデータアクセス要求に応答して、第1計算装置は、第2計算装置がユーザログインサービスを提供しており、このサービスによってユーザが、第1計算装置にこのデータアクセス要求を第2計算装置のユーザへ関連付けることを許可できるか否かを特定する(633)。第2計算装置がこのユーザログインサービスを提供している場合、ユーザがデータアクセス要求を第2計算装置のユーザに関連付けるか否かの命令を与えることができるように、第1計算装置は第2計算装置にそのユーザログインサービスを表示させる。(641)。第2計算装置からユーザの個人情報及びユーザの許可を受け取ると、第1計算装置は、ユーザの許可に従ってデータアクセス要求をユーザの個人情報に関連付けることによってデータレコードを生成する。第2計算装置がこのユーザログインサービスを提供しない場合、第1計算装置は、第2計算装置に物理的に隣接した第3計算装置を特定する(635)。幾つかの実装例では、第3計算装置はユーザログインサービスを提供しており、このサービスにより第2計算装置のユーザは、第1計算装置がこのデータアクセス要求を第2計算装置のユーザ又はこの世帯内の他の任意計算装置のユーザに関連付けることを許可できる。すると、第1計算装置は、第3計算装置に音声又は視覚警報信号を出力させて、第2計算装置のユーザの応答を促す(637)。例えば、第3計算装置がスマートフォンであれば、そのスマートフォンはその世帯成員の注意を喚起するため所定の呼び出し音を発生させ、又は所定の方法でその画面を点滅させればよい。すると、その警報信号に気づいた第2計算装置のユーザは、第3計算装置により提供されるユーザログインサービスを介してこのデータアクセス要求をユーザに関連付けるか否かの命令を与える。こうしたユーザ命令に応答して、第1計算装置はそれに従ってデータレコードを生成する(639)。
【0037】
幾つかの実装例では、第2計算装置がユーザログインサービスを提供する否かを確認するため、第1計算装置は、このデータアクセス要求から第2計算装置の識別子を抽出し、この第2計算装置の識別子を用いて計算装置レコードを特定する。次に、第1計算装置は、この計算装置レコードの装置タイプを調べて第2計算装置がユーザログインサービスを提供するかどうかを確認する。対応する装置レコードが存在しない新規の計算装置に関しては、第1計算装置は、データアクセス要求に従って第2計算装置の装置タイプを特定する。これは、例えば第2計算装置が上述した第1グループに属するのか第2グループに属するのかである。すると、第1計算装置は、第2計算装置の識別子及び特定された装置タイプを用いて新たな計算装置レコードを生成する。第2計算装置が複数の既定の装置タイプのいずれかであれば(例えば、コンピュータ又はスマートフォン)、第1計算装置は登録メッセージを第2計算装置に送る。それに応答して、第2計算装置はグラフィカルユーザインターフェースを表示し、このグラフィカルユーザインターフェースは、第2計算装置のユーザにこのグラフィカルユーザインターフェースへ個人情報及び許可を与えるよう促し、ユーザが与えたこの個人情報及び許可を第1計算装置に転送する。すると、第1計算装置は、ユーザが与えたこの個人情報及び許可を用いて新たな計算装置レコードを更新する。しかし、第2計算装置が複数の既定の装置タイプのいずれでもなければ(例えば、第2計算装置がスマートテレビ又はゲームコンソールである)、第1計算装置は、複数の計算装置レコードの中から、第2計算装置と物理的に隣接しており且つユーザログインサービスを提供することが確認されている1つの計算装置レコードを選択する。次に、第1計算装置は警報メッセージを第3計算装置に送る。それに応答して、第3計算装置は、グラフィカルユーザインターフェースを表示することによって第2計算装置のユーザに応答を促す警報信号を出力するが、このグラフィカルユーザインターフェースは、第2計算装置のユーザに個人情報及び許可をこのグラフィカルユーザインターフェースへ提供させ、且つユーザが提供したこの個人情報及び許可を第1計算装置に転送する。すると、第1計算装置はこのデータアクセス要求のデータレコードを生成し、このデータレコードは、ユーザが提供した個人情報及びこのデータアクセス要求の識別子を含む。
【0038】
特定の実施形態を説明してきたが、本発明をこれらの特定の実施形態に限定することを意図したものではない。それどころか、本発明は、添付した請求項の意図及び範囲に入る代替物、変更例、及び均等物を含む。本明細書で開示した主題の完全な理解を可能とするため多数の具体的な詳細が記載されている。しかし、この主題はこれら具体的な詳細がなくても実施できることは通常の技能を備えた当業者には明らかなはずである。他の状況では、これら実施形態の側面を不要に曖昧にさせないため、周知の方法、手順、構成要素、及び回路は詳述されていない。
【0039】
様々な要素を記述するために本明細書では第1、第2などの語句を用いているが、こうした要素はこれらの語句によって限定されるものではない。これら語句は1つの要素を別の要素から区別するためのみで使用されている。例えば、本発明の範囲から逸脱することなく、第1の順位付け基準(first ranking criteria)を第2の順位付け基準と呼ぶこともでき、第2の順位付け基準を第1の順位付け基準と呼ぶこともできる。第1の順位付け基準及び第2の順位付け基準は両方とも順位付け基準だが、同じ順位付け基準ではない。
【0040】
本発明の説明で使用される用語は、特定の実施形態を記述するためだけのものであり、本発明の限定を意図したものではない。本発明の記載及び添付の請求の範囲において、単数形である「1つの」及び「その」は、文脈からそうでないことが明示されてなければ複数形も含むことが意図されている。本明細書においては「及び/又は」という用語は、関連付けられ列挙された要素の1つ又は複数のすべての且つあらゆる可能な組み合わせを指し且つ網羅する。「含む」、「含んだ」、「包含する」、及び/又は「包含した」という語句は、本明細書で使用する際には、記載された特徴、動作、要素、及び/又は構成部品の存在を明示するが、1つ又は複数の他の特徴、動作、要素、構成部品、及び/又はそれらのグループの存在又は付加を排除しない。
【0041】
本明細書では、「〜場合は(if)」という語句は、文脈によって、記載された先行条件が正しい「時は」、「際に」、「との判断に応答して」、「との判断に従って」又は「ことを検出したことに応答して」を意味するものと解釈できる。同様に、「[記載された先行条件が正しい]と判断された場合は」、「[記載された先行条件が正しい]場合は」、又は「[記載された先行条件が正しい]時は」という句は、文脈によって、記載された先行条件が正しい「と判断されると」、「との判断に応答して」、「との判断に従って」、「ことが検出されると」、又は「ことを検出したことに応答して」を意味するものと解釈できる。
【0042】
様々な図面の幾つかは複数の論理段階を特定の順序で示しているが、順序に依存しない段階は順序を変更したり、他の段階を組み合わせたり、削除したりしてもよい。幾つかの順序の変更又は他のグループ分けが具体的に言及されているが、それ以外のものも通常の技能を備えた当業者には自明であり、代替物を包括的に列挙しない。さらに、これら段階はハードウェア、ファームウェア、ソフトウェア、又はそれらの任意組み合わせにおいて実装できることは理解されるべきである。
【0043】
上述の記載は、説明を目的として、特定の実装例を参照しつつ記載されている。しかし、上述の例示的な説明は、すべてを網羅することを意図したものでなく、本発明を開示された通りの形式に限定することを意図したものでもない。上述の教示を参考にすれば、多くの修正及び変更が可能である。これら実装例は、本発明の原理及びその実用的な用途を最適に説明するために選択且つ記載されたものであり、従って、本発明と、考慮されている特定用途に適した様々な実装例とを当業者が最適に利用可能にするものである実装例は、添付した請求項の意図及び範囲に入る代替物、変更例、及び均等物を含む。本明細書で開示した主題の完全な理解を可能とするため、多数の具体的な詳細が記載されている。しかし、通常の技能を備えた当業者には、これら具体的な詳細が無くてもこの主題が実施できることは明らかなはずである。他の状況では、これら実装例の側面を不要に曖昧にさせないため、周知の方法、手順、構成要素、及び回路は詳述されていない。