(57)【特許請求の範囲】
【請求項１】
方法であって、
モバイルコンピューティングデバイスのユーザに関連付けられるコンテンツ閲覧位置を、前記ユーザに関連付けられる位置履歴に基づいて、コンピューティングシステムによって判断するステップと、
前記コンテンツ閲覧位置に位置するメディア出力デバイスを前記コンピューティングシステムによって特定するステップとを備え、前記メディア出力デバイスは、ディスプレイデバイスに関連付けられ、前記ディスプレイデバイスは、前記メディア出力デバイスによって提供されるメディアコンテンツおよび１つ以上のテレビサービスを表示するように構成され、前記方法はさらに、
前記モバイルコンピューティングデバイスが現時点で前記メディア出力デバイスに近接して前記コンテンツ閲覧位置に位置していると判断したことに応答して、前記現時点における前記ユーザに対する１つ以上のメディアレコメンデーションを、前記メディア出力デバイスの複数の特徴に基づいて、前記コンピューティングシステムによって判断するステップを備え、前記複数の特徴は、前記メディア出力デバイスが前記現時点でオン状態で動作しているか否かの表示、および、前記メディア出力デバイスが前記現時点で前記ディスプレイデバイスで表示するために前記メディアコンテンツを出力しているか、前記現時点で前記ディスプレイデバイスで表示するために前記メディアコンテンツを出力することを控えているかの表示を含み、前記方法はさらに、
前記モバイルコンピューティングデバイスが前記現時点で前記メディア出力デバイスに近接して前記コンテンツ閲覧位置に位置していると判断したことに応答して、前記１つ以上のメディアレコメンデーションの表示を、前記モバイルコンピューティングデバイスに送信するために、前記コンピューティングシステムによって出力するステップを備える、方法。
【請求項２】
１つ以上のメディアコンテンツサービスに関連付けられる情報をメディアサーバから前記コンピューティングシステムによって取得するステップをさらに備え、前記１つ以上のメディアレコメンデーションは、前記１つ以上のメディアコンテンツサービスに関連付けられ、かつ、前記メディアサーバから取得される前記情報によって指定されるメディアコンテンツに基づいて判断される、請求項１に記載の方法。
【請求項３】
前記メディア出力デバイスが前記現時点で前記ディスプレイデバイスで表示するために前記メディアコンテンツを出力していると判断したことに応答して、前記メディアコンテンツが１つ以上のビデオ・オン・デマンドサービスに関連付けられると前記コンピューティングシステムによって判断するステップと、
前記１つ以上のメディアレコメンデーションを前記１つ以上のビデオ・オン・デマンドサービスに基づいて前記コンピューティングシステムによって判断するステップとをさらに備える、請求項１〜２のいずれか１項に記載の方法。
【請求項４】
前記１つ以上のビデオ・オン・デマンドサービスからの特定のビデオ・オン・デマンドサービスを、前記現時点で前記ディスプレイデバイスで表示するために出力されている前記メディアコンテンツに関連付けられるメタデータから、前記コンピューティングシステムによって特定するステップと、
前記１つ以上のメディアレコメンデーションを前記特定のビデオ・オン・デマンドサービスに基づいて前記コンピューティングシステムによって判断するステップとをさらに備える、請求項３に記載の方法。
【請求項５】
前記メディア出力デバイスが前記現時点で前記オン状態で動作していると判断したこと、および、前記メディア出力デバイスが前記現時点で前記ディスプレイデバイスで表示するために前記メディアコンテンツを出力することを控えていると判断したことに応答して、前記１つ以上のテレビサービスが前記現時点で前記ディスプレイデバイスで表示するために前記メディアコンテンツを出力していると前記コンピューティングシステムによって判断するステップと、
前記１つ以上のメディアレコメンデーションを前記１つ以上のテレビサービスに基づいて前記コンピューティングシステムによって判断するステップとをさらに備える、請求項１〜４のいずれか１項に記載の方法。
【請求項６】
前記モバイルコンピューティングデバイスから前記メディア出力デバイスにおいて受信される通信信号の強度を前記コンピューティングデバイスによって判断するステップと、
前記通信信号の前記強度が閾値を満たすと判断したことに応答して、前記モバイルコンピューティングデバイスが現時点で前記メディア出力デバイスに近接して前記コンテンツ閲覧位置に位置していると前記コンピューティングシステムによって判断するステップとをさらに備える、請求項１〜５のいずれか１項に記載の方法。
【請求項７】
前記メディア出力デバイスが前記現時点で前記モバイルコンピューティングデバイスから前記メディアコンテンツを受信していると判断したことに応答して、前記１つ以上のメディアレコメンデーションを、前記モバイルコンピューティングデバイスの前記ユーザに関連付けられる個人の嗜好に基づいて、前記コンピューティングシステムによって判断するステップをさらに備える、請求項１〜６のいずれか１項に記載の方法。
【請求項８】
前記メディア出力デバイスが前記現時点で前記モバイルコンピューティングデバイス以外の少なくとも１つのコンピューティングデバイスから前記メディアコンテンツを受信していると判断したことに応答して、前記１つ以上のメディアレコメンデーションを、前記モバイルコンピューティングデバイスの前記ユーザに関連付けられる集団の嗜好に基づいて、前記コンピューティングシステムによって判断するステップをさらに備える、請求項１〜７のいずれか１項に記載の方法。
【請求項９】
前記１つ以上のメディアレコメンデーションは、
前記現時点で前記１つ以上のテレビサービスから放送されているテレビ番組についての少なくとも１つのレコメンデーション、
前記現時点で前記メディア出力デバイスからアクセス可能なビデオ・オン・デマンドサービスから入手可能なビデオについての少なくとも１つのレコメンデーション、または
前記現時点で前記１つ以上のテレビサービスから入手可能なテレビチャネルについての少なくとも１つのレコメンデーションを備える、請求項１〜８のいずれか１項に記載の方法。
【請求項１０】
前記モバイルコンピューティングデバイスの前記ユーザに関連付けられる１つ以上の通信を前記コンピューティングシステムによって取得するステップをさらに備え、前記１つ以上の通信は、カレンダ通信、電子メール通信、テキストメッセージ通信またはソーシャルメディア通信のうちの少なくとも１つを備え、前記１つ以上のメディアレコメンデーションは、前記ユーザに関連付けられる前記通信内に含まれる情報に基づいて判断される、請求項１〜９のいずれか１項に記載の方法。
【請求項１１】
前記モバイルコンピューティングデバイスが前記現時点で前記メディア出力デバイスに近接せずに前記コンテンツ閲覧位置に位置していると判断したことに応答して、前記１つ以上のメディアレコメンデーションの前記表示を、前記モバイルコンピューティングデバイスに送信するために前記コンピューティングシステムによって出力することを控えるステップをさらに備える、請求項１〜１０のいずれか１項に記載の方法。
【請求項１２】
前記メディア出力デバイスが前記現時点で前記モバイルコンピューティングデバイスからメディアコンテンツを受信していると判断したことに応答して、前記１つ以上のメディアレコメンデーションを、前記モバイルコンピューティングデバイスの前記ユーザに関連付けられる個人の嗜好に基づいて、前記コンピューティングシステムによって判断するステップをさらに備える、請求項１〜１１のいずれか１項に記載の方法。
【請求項１３】
１以上のプロセッサによって実行されるコンピュータプログラムであって、請求項１〜１２のいずれか１項に記載の方法を前記１以上のプロセッサに実行させる、コンピュータプログラム。
【請求項１４】
コンピューティングシステムであって、
少なくとも１つのプロセッサと、
少なくとも１つのモジュールとを備え、前記少なくとも１つのモジュールは、
モバイルコンピューティングデバイスのユーザに関連付けられるコンテンツ閲覧位置を、前記ユーザに関連付けられる位置履歴に基づいて判断するように前記少なくとも１つのプロセッサによって動作可能であり、
前記ユーザに関連付けられる前記コンテンツ閲覧位置に位置するメディア出力デバイスを特定するように前記少なくとも１つのプロセッサによって動作可能であり、前記メディア出力デバイスは、ディスプレイデバイスに関連付けられ、前記ディスプレイデバイスは、前記メディア出力デバイスによって提供されるメディアコンテンツおよび１つ以上のテレビサービスを表示するように構成され、前記少なくとも１つのモジュールはさらに、
前記モバイルコンピューティングデバイスが現時点で前記メディア出力デバイスに近接して前記コンテンツ閲覧位置に位置していると判断したことに応答して、前記現時点における前記ユーザに対する１つ以上のメディアレコメンデーションを、前記メディア出力デバイスの複数の特徴に基づいて判断するように前記少なくとも１つのプロセッサによって動作可能であり、前記複数の特徴は、前記メディア出力デバイスが前記現時点でオン状態で動作しているか否かの表示、および、前記メディア出力デバイスが前記現時点で前記ディスプレイデバイスで表示するためにメディアコンテンツを出力しているか、前記現時点で前記ディスプレイデバイスで表示するために前記メディアコンテンツを出力することを控えているかの表示を含み、前記少なくとも１つのモジュールはさらに、
前記モバイルコンピューティングデバイスが前記現時点で前記メディア出力デバイスに近接して前記コンテンツ閲覧位置に位置していると判断したことに応答して、前記１つ以上のメディアレコメンデーションの表示を、前記モバイルコンピューティングデバイスに送信するために出力するように前記少なくとも１つのプロセッサによって動作可能である、コンピューティングシステム。
【請求項１５】
請求項１〜１２に記載の方法のうちのいずれかを実行するための手段をさらに備える、請求項１４に記載のコンピューティングシステム。
【発明の詳細な説明】
【背景技術】
【０００１】
背景
いくつかのメディアプロバイダ（例えばテレビジョンネットワーク、ビデオ・オン・デマンド（video-on-demand：ＶＯＤ）サービスプロバイダなど）は、潜在的な閲覧者がメディアプロバイダのサービスを使用してメディアコンテンツ（例えばテレビプログラム、ＶＯＤプログラムなど）を閲覧するように奨励してその気にさせるための方法を開発してきた。例えば、テレビジョンネットワークは、推奨される次回のテレビ番組一話が週の後半に放送されることを潜在的な閲覧者に通知するために、閲覧者の電子メールアカウントに電子メールを送る場合がある。同様に、ＶＯＤサービスプロバイダは、最近追加／推奨されたメディアコンテンツが当月に利用可能になったことを加入者に通知するために、加入者のテキストメッセージアカウントに月例のテキストメッセージを発行する場合がある。
【０００２】
ユーザは、必ずしもユーザがメディアコンテンツを閲覧することに最も関心がある時および／または場所ではなく散発的に（例えば受信時、昼休み中などに）、メディアコンテンツに関連付けられる電子メール、テキストメッセージまたは他のタイプの通知を閲覧することができる。したがって、これらのタイプの通知は、たとえユーザの特定の閲覧嗜好に合わせられていたとしても、および／または、大半の人がテレビを見るときに（例えば「ゴールデンタイムに」）配信されたとしても、メディアサービスと対話するようにユーザに動機付けする、および／または、通知によって奨励されているメディアコンテンツを閲覧するようにユーザに動機付けする効果は限定され得る。
【発明の概要】
【課題を解決するための手段】
【０００３】
概要
一例では、本開示は、方法に向けられ、当該方法は、モバイルコンピューティングデバイスのユーザに関連付けられるコンテンツ閲覧位置を、ユーザに関連付けられる位置履歴に基づいて、コンピューティングシステムによって判断するステップと、モバイルコンピューティングデバイスのユーザに関連付けられるコンテンツ閲覧位置に位置するメディア出力デバイスをコンピューティングシステムによって特定するステップとを含む。当該方法はさらに、モバイルコンピューティングデバイスが現時点でメディア出力デバイスに近接してコンテンツ閲覧位置に位置していると判断したことに応答して、現時点におけるユーザに対する１つ以上のメディアレコメンデーションを、メディア出力デバイスの複数の特徴に基づいて、コンピューティングシステムによって判断するステップを含み、複数の特徴は、メディア出力デバイスが現時点でオン状態で動作しているか否かの表示を含み、当該方法はさらに、モバイルコンピューティングデバイスが現時点でメディア出力デバイスに近接してコンテンツ閲覧位置に位置していると判断したことに応答して、１つ以上のメディアレコメンデーションの表示を、モバイルコンピューティングデバイスに送信するために、コンピューティングシステムによって出力するステップを含む。
【０００４】
別の例では、本開示は、コンピューティングシステムに向けられ、当該コンピューティングシステムは、少なくとも１つのプロセッサと、少なくとも１つのモジュールとを含み、少なくとも１つのモジュールは、モバイルコンピューティングデバイスのユーザに関連付けられるコンテンツ閲覧位置を、ユーザに関連付けられる位置履歴に基づいて判断するように少なくとも１つのプロセッサによって動作可能であり、モバイルコンピューティングデバイスのユーザに関連付けられるコンテンツ閲覧位置に位置するメディア出力デバイスを特定するように少なくとも１つのプロセッサによって動作可能である。少なくとも１つのモジュールはさらに、モバイルコンピューティングデバイスが現時点でメディア出力デバイスに近接してコンテンツ閲覧位置に位置していると判断したことに応答して、現時点におけるユーザに対する１つ以上のメディアレコメンデーションを、メディア出力デバイスの複数の特徴に基づいて判断するように少なくとも１つのプロセッサによって動作可能であり、複数の特徴は、メディア出力デバイスが現時点でオン状態で動作しているか否かの表示、および、メディア出力デバイスが現時点で表示するためにメディアコンテンツを出力しているか否かの表示を含み、少なくとも１つのモジュールはさらに、モバイルコンピューティングデバイスが現時点でメディア出力デバイスに近接してコンテンツ閲覧位置に位置していると判断したことに応答して、１つ以上のメディアレコメンデーションの表示を、モバイルコンピューティングデバイスに送信するために出力するように少なくとも１つのプロセッサによって動作可能である。
【０００５】
別の例では、本開示は、さらなる方法に向けられ、当該方法は、現時点でユーザに関連付けられるコンテンツ閲覧位置に位置している間に、モバイルコンピューティングデバイスに関連付けられるデバイス識別子を、ユーザに関連付けられるコンテンツ閲覧位置に位置するメディア出力デバイスに送信するために、モバイルコンピューティングデバイスによって出力するステップを含む。当該方法はさらに、モバイルコンピューティングデバイスに関連付けられるデバイス識別子を出力したことに応答して、現時点におけるユーザに対する１つ以上のメディアレコメンデーションの表示をコンピューティングシステムからモバイルコンピューティングデバイスによって受信するステップを含み、１つ以上のメディアレコメンデーションは、メディア出力デバイスに関連付けられる複数の特徴に基づき、複数の特徴は、メディア出力デバイスが現時点でオン状態で動作しているか否かの表示、および、メディア出力デバイスが現時点で表示するためにメディアコンテンツを出力しているか否かの表示を含む。当該方法はさらに、１つ以上のメディアレコメンデーションのグラフィック表示を、表示するためにモバイルコンピューティングデバイスによって出力するステップを含む。
【０００６】
１つ以上の例の詳細が添付の図面および以下の説明に記載されている。本開示の他の特徴、目的および利点は、説明および図面ならびに特許請求の範囲から明らかになるであろう。
【図面の簡単な説明】
【０００７】
【図１】本開示の１つ以上の局面に従って１つ以上の例示的なコンピューティングデバイスに１つ以上のメディアレコメンデーションを出力するように構成された例示的なコンピューティングシステムを示す概念図である。
【図２】本開示の１つ以上の局面に従って１つ以上のメディアレコメンデーションを出力するように構成された例示的なコンピューティングを示すブロック図である。
【図３】本開示の１つ以上の技術に従ってリモートデバイスで表示するためにグラフィックコンテンツを出力する例示的なコンピューティングデバイスを示すブロック図である。
【図４】本開示の１つ以上の局面に従ってモバイルコンピューティングデバイスに１つ以上のメディアレコメンデーションを出力するように構成された例示的なコンピューティングシステムの例示的な動作を示すフローチャートである。
【図５】本開示の１つ以上の局面に従って例示的なコンピューティングシステムから受信された１つ以上のメディアレコメンデーションのグラフィック表示を出力するように構成された例示的なモバイルコンピューティングデバイスの例示的な動作を示すフローチャートである。
【発明を実施するための形態】
【０００８】
詳細な説明
概して、本開示の技術は、メディアレコメンデーションがユーザの興味を引きそうな位置にユーザがいるとコンピューティングシステムが判断するとコンピューティングシステムがモバイルコンピューティングデバイスのユーザに当該メディアレコメンデーションを自動的に提供することを可能にすることができる。例えば、ユーザの中には、１つ以上の好ましいコンテンツ閲覧位置を有しているものもいるかもしれない。すなわち、ユーザの中には、家の特定の部屋または領域、オフィス、気に入っているバー／レストランなどにいるときにメディアコンテンツ（例えばテレビ番組、ビデオ・オン・デマンド（ＶＯＤ）など）を閲覧することを好むものもいるかもしれない。ユーザに関連付けられる各コンテンツ閲覧位置において、ユーザは、ディスプレイデバイス（例えばテレビ、プロジェクションスクリーンなど）に表示されているメディアコンテンツを閲覧することができる。したがって、ユーザがコンテンツ閲覧位置にいる最中に受信されるコンテンツについてのレコメンデーションが特に有用であることが分かるであろう。
【０００９】
いくつかのディスプレイデバイスは、無線ネットワークまたは衛星／ケーブルプロバイダによって提供されるライブのテレビ放送の一部として「ライブのテレビ番組」メディアコンテンツを表示するように構成され得る。ライブのテレビ放送に加えて、いくつかのディスプレイデバイスは、１つ以上の「メディア出力デバイス」（例えばセットトップボックス、内蔵アプリケーション、ユニバーサルシリアルバスデバイスなど）に作動的に結合されるか、または１つ以上の「メディア出力デバイス」を含み得て、当該１つ以上の「メディア出力デバイス」は、ＶＯＤサービス（例えば有料放送サービス、デジタルビデオ記録（digital video recording：ＤＶＲ）サービス、インターネットチャネルまたはストリーミングメディアサービスなど）の一部としてＶＯＤメディアコンテンツへのアクセスを提供してＶＯＤメディアコンテンツを表示する。いくつかのメディア出力デバイスは、モバイルコンピューティングデバイス（例えば携帯電話、タブレットコンピュータ、ラップトップコンピュータなど）と対にされるとさらなる機能を提供する。例えば、いくつかのメディア出力デバイスは、携帯電話と対にされると、携帯電話の画面で検出される入力（例えばジェスチャ）に従って制御されることができる。また、いくつかのメディア出力デバイスは、モバイルコンピューティングデバイスから受信されたグラフィックコンテンツがまるで携帯電話の画面に表示されているかのようにグラフィックコンテンツを外部ディスプレイデバイス（例えばテレビ）に表示することによってグラフィックコンテンツを「ミラーリング」することができる。
【００１０】
いずれにしても、ユーザのコンテンツ閲覧位置に位置するメディア出力デバイスは、ユーザがメディア出力デバイスに近接しているときにユーザのモバイルコンピューティングデバイスと情報をやりとりし得る。メディア出力デバイスから取得される情報に基づいて、本開示の技術に従うコンピューティングシステムは、ユーザがコンテンツ閲覧位置のうちの１つに位置していそうであるか否かを推測、予測、またはそうでなければ判断し得る。ユーザがコンテンツ閲覧位置にいるとの判断に応答して、コンピューティングシステムは、ユーザがメディアコンテンツを閲覧している最中であるか否か、およびそうであればユーザがどのようなタイプのメディアコンテンツ（例えばライブのテレビ番組、ＶＯＤなど）を見ていそうであるか、またはユーザがどのようなタイプのメディアコンテンツを見ることに関心があるだろうかということを示す情報などの、メディア出力デバイスから取得されるさらなる情報に基づいてメディアレコメンデーションをモバイルコンピューティングデバイスに自動的に（例えばユーザの介入なしに）出力し得る。ユーザは、（例えばユーザインターフェイスの一部として表示されるグラフィックコンテンツとして）モバイルコンピューティングデバイスからのメディアレコメンデーションを閲覧し得る。
【００１１】
このようにして、コンピューティングシステムは、ユーザがメディアコンテンツを見ることに関心がありそうな時間および場所においてモバイルコンピューティングデバイスのユーザにメディアレコメンデーションを提供し得る。したがって、ユーザがテレビ放送またはＶＯＤサービスを見ることに関心がありそうなときにメディアレコメンデーションをタイムリーに提供することによって、メディアレコメンデーションは、ユーザの注目を集める可能性が高まり、メディアレコメンデーションによって指定されるメディアコンテンツが見られる可能性を高めることができる。
【００１２】
本開示全体を通して、コンピューティングデバイスおよび／またはコンピューティングシステムは、コンピューティングデバイスが情報を分析する許可をユーザから受信した場合にのみ、コンピューティングデバイスに関連付けられる情報（例えば位置、速度など）を分析することができる例が記載されている。例えば、コンピューティングデバイスがユーザに関連付けられる情報を収集または活用することができる以下に記載の状況では、ユーザは、入力を提供して、コンピューティングデバイスのプログラムまたは特徴がユーザ情報（例えばユーザの現在位置、現在の速度などについての情報）を収集および活用することができるか否かを制御する機会、または、入力を提供して、ユーザに関係がある可能性があるコンテンツをコンピューティングデバイスが受信することができるか否かおよび／もしくはその受信の仕方を命令する機会を備え得る。また、特定のデータは、コンピューティングデバイスおよび／またはコンピューティングシステムによって記憶または使用される前に１つ以上の方法で処理され得て、その結果、個人を特定できるデータは除去される。例えば、ユーザのアイデンティティは、ユーザについて個人を特定できる情報を判断できないように処理されてもよく、または、（都市レベル、郵便番号レベルまたは国家レベルなどで）位置情報が取得される場合には、ユーザの地理的位置は一般化されてもよく、その結果、ユーザの特定の位置を判断することができなくなる。したがって、ユーザは、ユーザについての情報がどのようにして収集されてコンピューティングデバイスによって使用されるかを制御することができる。
【００１３】
図１は、本開示の１つ以上の局面に従って例示的なモバイルコンピューティングデバイス１０に１つ以上のメディアレコメンデーションを出力するように構成された例示的なコンピューティングシステム１を示す概念図である。図１のコンピューティングシステム１は、メディア出力デバイス８と、モバイルコンピューティングデバイス１０と、ディスプレイデバイス１２と、レコメンデーションサーバシステム６０と、メディアサーバシステム８０と、ネットワーク３０とを含む例示的なコンピューティングシステムである。メディア出力デバイス８、モバイルコンピューティングデバイス１０およびディスプレイデバイス１２は、同一のコンテンツ閲覧位置２にあるものとして示されている。言い換えれば、図２は、デバイス８，１０および１２の各々が、それ以外のものの閾値物理的距離の範囲内であってコンテンツ閲覧位置２に配列されていることを示している。
【００１４】
本明細書で用いられる「コンテンツ閲覧位置」という用語は、５０％超の可能性で、コンピューティングデバイスのユーザがメディアコンテンツの閲覧を楽しむ好ましい場所であろう任意の位置を表わすために用いられている。例えば、コンテンツ閲覧位置は、頻繁に映画またはテレビ番組を見る人の家の特定の部屋であってもよい。コンテンツ閲覧位置は、スポーツイベントの観戦を楽しむ公共のバー／レストランであってもよい。コンテンツ閲覧位置は、ユーザがメディアコンテンツを見る特定の勤務地、オフィスまたは会議室であってもよい。
【００１５】
ネットワーク３０は、任意の１つ以上の公衆または私設通信ネットワーク、例えばテレビ放送ネットワーク、ケーブルもしくは衛星ネットワーク、セルラーネットワーク、Ｗｉ−Ｆｉネットワーク、ブロードバンドネットワーク、および／または、コンピューティングデバイス間でデータ（例えばテレコミュニケーションおよび／またはメディアデータ）を送信するための他のタイプのネットワークと、他の通信およびメディア機器との組み合わせに相当する。メディア出力デバイス８、モバイルコンピューティングデバイス１０、ディスプレイデバイス１２、レコメンデーションサーバシステム６０およびメディアサーバシステム８０は、各々、任意の好適な通信技術を用いてネットワーク３０を介してデータを送ったり受信したりし得る。例えば、メディアサーバシステム８０は、ネットワークリンク３２Ａを用いてネットワーク３０に作動的に結合されてもよく、ディスプレイデバイス１２は、ネットワークリンク３２Ｂを用いてネットワーク３０に作動的に結合されてもよい。メディア出力デバイス８は、ネットワークリンク３２Ｃによってネットワーク３０に作動的に結合されてもよく、モバイルコンピューティングデバイス１０は、ネットワークリンク３２Ｄによってネットワーク３０に作動的に結合されてもよく、レコメンデーションサーバシステム６０は、ネットワークリンク３２Ｅによってネットワーク３０に作動的に結合されてもよい。ネットワーク３０は、作動的に相互に結合されることによって、メディア出力デバイス８とモバイルコンピューティングデバイス１０とディスプレイデバイス１２とレコメンデーションサーバシステム６０とメディアサーバシステム８０との間で情報をやりとりするネットワークハブ、ネットワークスイッチ、ネットワークルータなどを含み得る。いくつかの例では、ネットワークリンク３２Ａ〜３２Ｅ（まとめて「ネットワークリンク３２」）は、イーサネット（登録商標）、ＡＴＭまたは他のネットワーク接続であってもよい。このような接続は、無線接続であってもよく、および／または、有線接続であってもよい。
【００１６】
図１は、ディスプレイデバイス１２とメディア出力デバイス８との間の直接リンク３４およびメディア出力デバイス８とモバイルコンピューティングデバイス１０との間の直接リンク３６を示している。直接リンク３４および３６の各々は、ネットワーク３０の一部としてデバイス８，１０および１２間で共有されるいかなる通信チャネルからも独立してデバイス８，１０および１２間での情報のやりとりを容易にするためにデバイス１２と８との間およびデバイス８と１０との間で共有される直接的またはローカルな経路または接続に相当する。言い換えれば、デバイス８，１０および１２は、ネットワーク３０によって互いに作動的に結合され得るが、リンク３４および３６は、ネットワーク３０から分離した、デバイス８，１０および１２のうちの２つの間で共有される直接リンクに相当する。
【００１７】
メディアサーバシステム８０は、ネットワークリンク３２Ａを介してメディアコンテンツ（例えばライブのテレビ番組コンテンツ、ＶＯＤコンテンツなど）をネットワーク３０に送信することができる、１つ以上のデスクトップコンピュータ、ラップトップコンピュータ、メインフレーム、サーバ、クラウドコンピューティングシステムなどの任意の好適なリモートコンピューティングシステムに相当する。いくつかの例では、メディアサーバシステム８０は、広範囲の物理的位置に分散した１人以上の閲覧者および／または加入者に関連付けられる１つ以上のディスプレイデバイスにメディアコンテンツを配信するためのメディアプロバイダのホストサーバに相当する。例えば、ディスプレイデバイス１２は、ネットワーク３０を介してメディアサーバシステム８０からメディアコンテンツを受信し得る。ディスプレイデバイス１２のユーザは、メディアサーバシステム８０によって提供されるメディアコンテンツを、例えばディスプレイデバイス１２の画面に表示されるライブのテレビ放送として閲覧し得る。
【００１８】
メディア出力デバイス、モバイルコンピューティングデバイス１０および／またはレコメンデーションサーバシステム６０は、メディアコンテンツおよび関連データ（例えばプログラムスケジュール、メタデータ、ユーザプロフィール情報など）にアクセスし、メディアレコメンデーションをモバイルコンピューティングデバイス１０のユーザに提供するために当該情報を使用し得る。いくつかの例では、メディアサーバシステム８０は、メディア出力デバイス８、ディスプレイデバイス１２、モバイルコンピューティングデバイス１０、レコメンデーションサーバシステム６０、および／または、メディアサーバシステム８０によって提供されるメディアコンテンツおよび関連情報を利用するように構成されたその他のデバイスもしくはシステムのうちの１つ以上にネットワーク３０を介してメディアコンテンツへのアクセスを提供するクラウドコンピューティングシステムに相当する。
【００１９】
図１の例では、メディアサーバシステム８０は、ビデオ・オン・デマンド（ＶＯＤ）サービスモジュール８２と、テレビ（ＴＶ）サービスモジュール８４とを含む。モジュール８２および８４は、メディアサーバシステム８０内にある、および／または、メディアサーバシステム８０で実行されるソフトウェア、ハードウェア、ファームウェア、またはハードウェアとソフトウェアとファームウェアとの混合物を用いて、記載されているオペレーションを実行してもよい。メディアサーバシステム８０は、複数のプロセッサまたは複数のデバイスを用いてモジュール８２および８４を実行してもよい。メディアサーバシステム８０は、基礎をなすハードウェア上で実行されるバーチャルマシンとしてモジュール８２および８４を実行してもよい。モジュール８２および８４は、オペレーティングシステムまたはコンピューティングプラットフォームの１つ以上のサービスとして実行されてもよい。モジュール８２および８４は、コンピューティングプラットフォームのアプリケーション層において１つ以上の実行可能なプログラムとして実行されてもよい。
【００２０】
ＶＯＤサービスモジュール８２およびＴＶサービスモジュール８４は、各々、ＶＯＤサービスおよびテレビ（無線、ケーブル、衛星など）サービスをそれぞれホストして、それぞれのサービス（例えばモバイルコンピューティングデバイス１０、メディア出力デバイス８など）の加入者にサービスに関連付けられるメディアコンテンツをネットワーク３０を介して提供するための機能を実行し得る。例えば、ＶＯＤサービスモジュール８２は、メディア出力デバイス８のユーザがアクセスすることができるストリーミングＶＯＤサービス、オンデマンド映画、テレビ番組および他のタイプのメディアコンテンツをホストし得る。ＶＯＤサービスモジュール８２は、ＶＯＤサービスに関連付けられるメディアコンテンツをリンク３２Ａおよび３２Ｃを介して送信し得る。メディア出力デバイス８は、受信されたメディアコンテンツに関連付けられるグラフィック画像をフォーマットして、ディスプレイデバイス１２に表示し得る。ＴＶサービスモジュール８４は、ディスプレイデバイス１２のユーザがライブのテレビ放送に基づいてメディアコンテンツにアクセスすることができるテレビ放送サービス（例えば１つ以上のテレビチャネル）をホストし得る。ＴＶサービスモジュール８４は、ライブのテレビ放送に関連付けられるメディアコンテンツをリンク３２Ａおよび３２Ｂを介して送信し得る。ディスプレイデバイス１２は、受信されたメディアコンテンツに関連付けられるグラフィック画像をフォーマットして表示し得る。
【００２１】
ディスプレイデバイス１２は、テレビおよび／またはＶＯＤサービスプロバイダに関連付けられるメディアサーバシステム８０などのメディアサーバシステムから受信されたメディアコンテンツを表示するための任意の好適な出力デバイスに相当する。例えば、ディスプレイデバイス１２は、テレビ、コンピュータモニタ、プロジェクタスクリーンまたは他のタイプのディスプレイであってもよい。ディスプレイデバイス１２は、ディスプレイデバイス１２のユーザに可視情報を出力することができる液晶ディスプレイ（liquid crystal display：ＬＣＤ）、ドットマトリクスディスプレイ、発光ダイオード（light emitting diode：ＬＥＤ）ディスプレイ、有機発光ダイオード（organic light-emitting diode：ＯＬＥＤ）ディスプレイ、ｅ−リンク、または類似のモノクロもしくはカラーディスプレイなどの１つ以上のディスプレイデバイスを用いる出力（例えばディスプレイ）デバイスとして機能し得る。ディスプレイデバイス１２は、ユーザに対する出力を、例えば存在感知ディスプレイに表示し得る。ディスプレイデバイス１２は、当該出力を、メディアサーバシステム８０および／またはメディア出力デバイス８によって提供される機能に関連付けられ得るグラフィカルユーザインターフェイスとして表示し得る。例えば、ディスプレイデバイス１２は、メディア出力デバイス８で実行されるまたはアクセス可能なコンピューティングプラットフォーム、オペレーティングシステム、アプリケーションおよび／またはサービス（例えば電子メッセージアプリケーション、インターネットブラウザアプリケーション、モバイルオペレーティングシステムなど）の機能に関連するさまざまなユーザインターフェイスを表示してもよい。ユーザは、ディスプレイデバイス１２に表示されているメディアコンテンツとして見ることができる機能に関連するオペレーションをメディア出力デバイス８に実行させるようにユーザインターフェイスと対話し得る。
【００２２】
メディア出力デバイス８は、少なくとも１つのプロセッサと、少なくとも１つのモジュールとを備え得て、当該少なくとも１つのモジュールは、ＶＯＤサービスプロバイダ（例えばメディアサーバシステム８０のＶＯＤサービスモジュール８２）および／またはモバイルコンピューティングデバイス（例えばモバイルコンピューティングデバイス１０）からメディアコンテンツを受信して、当該メディアコンテンツをフォーマットし、ディスプレイデバイス１２で表示するために当該メディアコンテンツを出力するように少なくとも１つのプロセッサによって動作可能である。例えば、メディア出力デバイスは、ＶＯＤサービスモジュールによって送信されるメディアコンテンツをリンク３２Ａおよび３２Ｃを介して受信し得る。メディア出力デバイス８は、ＶＯＤサービスモジュール８２から受信されたメディアコンテンツに関連付けられるグラフィック画像をフォーマットして、ディスプレイデバイス１２に表示し得る。メディア出力デバイス８は、モバイルコンピューティングデバイス１０によって送信されるメディアコンテンツを直接リンク３６を介して受信し得て、同様に、モバイルコンピューティングデバイス１０から受信されたメディアコンテンツに関連付けられるグラフィック画像をフォーマットして、ディスプレイデバイス１２に表示し得る。
【００２３】
本明細書で用いられるメディア出力デバイス８などのメディア出力デバイスは、オン状態（例えば、デバイスが、表示するためにメディアコンテンツを出力することができる状態）またはオフ状態（例えば、デバイスが、表示するためにメディアコンテンツを出力することができない状態）で動作し得る。言い換えれば、オン状態にある間、メディア出力デバイスは、モバイルコンピューティングデバイス（例えばコンピューティングデバイス１０）から受信されるコマンドまたは制御一式に応答し、それらのコマンドまたは制御に基づいて、表示するためにメディアコンテンツを出力するか、または表示するためにメディアコンテンツを出力することを控え得る。オフ状態にある間、メディア出力デバイスは、「スタンバイ」または「スリープ」状態で動作し、コマンドまたは制御の限られた組にのみ応答して、例えば位置情報を提供するか、またはメディア出力デバイスを「起こして」オン状態に移行させ得る。
【００２４】
メディア出力デバイス８は、メディア出力モジュール２６と、通信モジュール２４Ｂとを備える。モジュール２６および２４Ｂは、メディアサーバシステム８０内にある、および／または、メディアサーバシステム８０で実行されるソフトウェア、ハードウェア、ファームウェア、またはハードウェアとソフトウェアとファームウェアとの混合物を用いて、記載されているオペレーションを実行してもよい。メディア出力デバイス８は、複数のプロセッサまたは複数のデバイスを用いてモジュール２６および２４Ｂを実行してもよい。メディアサーバシステム８０は、基礎をなすハードウェア上で実行されるバーチャルマシンとしてモジュール２６および２４Ｂを実行してもよい。モジュール２６および２４Ｂは、オペレーティングシステムまたはコンピューティングプラットフォームの１つ以上のサービスとして実行されてもよい。モジュール２６および２４Ｂは、コンピューティングプラットフォームのアプリケーション層において１つ以上の実行可能なプログラムとして実行されてもよい。
【００２５】
メディア出力モジュール２６は、メディアサーバシステム８などのメディアサーバシステムと通信し、メディアサーバシステムから受信されたメディアコンテンツを処理し、ディスプレイデバイス１２で表示するために、受信されたメディアコンテンツを出力し得る。例えば、メディア出力モジュール２６は、ネットワーク３０を介してＶＯＤサービスモジュール８２からストリーミングビデオを受信し得る。メディア出力モジュール２６は、グラフィックコンテンツとしてディスプレイデバイス１２で表示するために当該ストリーミングビデオをフォーマットおよび最適化し得る。メディア出力モジュール２６は、フォーマットされたグラフィックコンテンツを直接リンク３４（例えばＨＤＭＩ（登録商標）ケーブル）を介してディスプレイデバイス１２に送信し得て、ディスプレイデバイス１２は、ディスプレイデバイス１２の画面において当該グラフィックコンテンツを出力し得る。
【００２６】
メディア出力モジュール２６は、ディスプレイデバイス１２で表示するためにグラフィカルユーザインターフェイスを提供し得て、当該グラフィカルユーザインターフェイスから、ユーザは、ディスプレイデバイス１２に表示されているメディアコンテンツを選択およびその他の態様で制御する目的でメディア出力デバイス８と対話することができる。例えば、ユーザは、ディスプレイデバイス１２で表示するためにメディア出力モジュール２６によって出力されるメニューインターフェイスと対話してもよい。ユーザは、メディア出力デバイス８と作動的に結合される遠隔制御装置に入力を提供し得る。遠隔制御装置において検出される入力に基づいて、メディア出力モジュール２６は、ディスプレイデバイス１２に表示されているメディアコンテンツを起動、停止、一時停止、早送り、巻戻し、またはそうでなければ変更し得る。
【００２７】
メディア出力デバイス８の通信モジュール２４Ｂは、メディア出力デバイス８に近接するさまざまな外部コンピューティングデバイスとデータをやりとりするための１つ以上の通信セッションを確立し得る。例えば、通信モジュール２４Ｂは、メディア出力デバイス８によってディスプレイデバイス１２に表示されるべきメディアコンテンツをモバイルコンピューティングデバイス１０が共有するための方法を提供するために、メディア出力デバイス８のそれぞれのブルートゥース（登録商標）送受信機とモバイルコンピューティングデバイス１０との間でハンドシェーキングを実行してもよい。通信モジュール２４Ｂは、メディア出力デバイス８が任意の数の通信プロトコルを介して情報をやりとりすることを可能にし得て、当該通信プロトコルとしては、ブルートゥース、Ｗｉ−Ｆｉ、イーサネット、近距離無線通信プロトコル（Near-Field-Communication：ＮＦＣ）、無線ＩＣタグ（Radio Frequency Identifier：ＲＦＩＤ）などが挙げられるが、これらに限定されるものではない。
【００２８】
モバイルコンピューティングデバイス１０などの外部コンピューティングデバイスとの通信セッションを確立すると、メディア出力デバイス８は、外部コンピューティングデバイスおよび／または外部コンピューティングデバイスによって共有されるメディアコンテンツを識別するさまざまなタイプの情報を外部コンピューティングデバイスから取得し得る。例えば、モバイルコンピューティングデバイス１０とのブルートゥースセッションを確立した後、通信モジュール２４Ｂは、モバイルコンピューティングデバイス１０に関連付けられる名前を指定するブルートゥース識別子を取得し得る。ブルートゥース識別子から取得される名前は、モバイルコンピューティングデバイス１０に固有であってもよく、レコメンデーションサーバシステム６０などの他のコンピューティングシステムと共有されると、当該他のコンピューティングシステムは、モバイルコンピューティングデバイス１０に関連付けられる特定のユーザ（例えば人）を識別することが可能になり得る。
【００２９】
ネットワーク３０を介したメディアサーバシステム８０などのメディアサーバシステムとの通信に加えて、メディア出力デバイス８は、メディア出力デバイス８に関連付けられる動作状態を示す状態情報およびメディア出力デバイス８によって表示するために出力されるメディアコンテンツをリモートコンピューティングシステムに提供するために、ネットワーク３０を介して他のタイプのリモートコンピューティングシステムと通信し得る。例えば、メディア出力デバイス８の通信モジュール２４Ｂは、特定の時刻におけるメディア出力デバイス８の動作状態（メディア出力デバイス８がオン状態で動作しているか、オフ状態で動作しているか、表示するためにメディアコンテンツを出力しているか、表示するためにメディアコンテンツを出力することを控えているか、など）を示す１つ以上の表示（例えばデータ）を送信し得る。
【００３０】
メディア出力デバイス８の通信モジュール２４Ｂは、メディア出力デバイス８が現時点でオン状態で動作している（例えば電源がオンにされている）かオフ状態で動作している（例えば限られた電力を引き込んでいる）かの表示（例えばデータ）、メディア出力デバイス８が現時点でディスプレイデバイス１２で表示するためにメディアコンテンツを出力しているか否かの表示、メディアコンテンツに関連付けられる１つ以上のビデオ・オン・デマンドサービスのうちのどれがメディア出力デバイス８によって表示するために出力されているかを示す情報、メディア出力デバイス８によって表示するために出力されているメディアコンテンツに関連付けられる、１つ以上のビデオ・オン・デマンドサービスからの特定のビデオ・オン・デマンドサービスを示す情報、メディア出力デバイス８によって表示するために出力されているメディアコンテンツに関連付けられるメタデータなどを提供し得る。
【００３１】
通信モジュール２４Ｂは、メディア出力デバイス８とモバイルコンピューティングデバイスとの間の通信セッション中にモバイルコンピューティングデバイス１０などのモバイルコンピューティングデバイスからメディア出力デバイス８によって受信される信号の信号強度（例えばメートル当たりのデシベル−ミリボルトの量、メートル当たりのデシベル−マイクロボルトの量など）の表示を提供し得る。例えば、メディア出力デバイス８は、（例えば信号強度閾値よりも大きな）強い通信信号または（例えば信号強度閾値未満の）弱い通信信号がモバイルコンピューティングデバイス１０から受信されていることを示すデータをネットワーク３０を介してレコメンデーションサーバシステム６０に送り得る。信号強度は、メディア出力デバイス８とモバイルコンピューティングデバイスとの間の物理的距離に基づいて変化し得る。例えば、メディア出力デバイス８がモバイルコンピューティングデバイスに近接している（例えば距離閾値、例えば１０メートル以内である）場合には、信号強度は高くなり得て、信号強度閾値を超え得る。メディア出力デバイス８がモバイルコンピューティングデバイスに近接していない（例えば距離閾値、例えば１０メートル以内でない）場合には、信号強度は低くなり得て、信号強度閾値を超えることはない。
【００３２】
図１の例では、モバイルコンピューティングデバイス１０（単に「コンピューティングデバイス１０」と称されることもある）は単一の携帯電話である。しかし、他の例では、モバイルコンピューティングデバイス１０は、１つ以上のタブレットコンピュータ、携帯電話、パーソナル・デジタル・アシスタント（personal digital assistant：ＰＤＡ）、デスクトップコンピュータ、ラップトップコンピュータ、ゲームシステム、メディアプレーヤ、電子書籍リーダ、テレビプラットフォーム、カーナビゲーションシステム、ウェアラブルコンピューティングデバイス（例えばコンピュータ化された時計、コンピュータ化された眼鏡、コンピュータ化された手袋など）、または、少なくとも１つのプロセッサと少なくとも１つのモジュールとを有するその他のタイプのモバイルおよび／もしくは非モバイルコンピューティングデバイスの任意の組み合わせであってもよく、当該少なくとも１つのモジュールは、ネットワーク３０などのネットワークを介して直接リンク３６などの直接リンクによってメディア出力デバイス８などのメディア出力デバイスと通信する（例えばデータを送受信する）ように構成される。
【００３３】
モバイルコンピューティングデバイス１０は、ユーザインターフェイス（「ＵＩ」）モジュール２０と、通知クライアントモジュール２２と、通信モジュール２４Ａとを含み得る。モジュール２０，２２および２４Ａは、コンピューティングデバイス１０内にある、および／または、コンピューティングデバイス１０で実行されるハードウェア、ソフトウェア、ファームウェア、またはハードウェアとソフトウェアとファームウェアとの混合物を用いて、記載されているオペレーションを実行してもよい。コンピューティングデバイス１０は、１つ以上のプロセッサを用いてモジュール２０，２２および２４Ａを実行してもよい。コンピューティングデバイス１０は、コンピューティングデバイス１０の基礎をなすハードウェア上で実行される１つ以上のバーチャルマシンとしてモジュール２０，２２および２４Ａを実行してもよい。モジュール２０，２２および２４Ａは、コンピューティングデバイス１０のオペレーティングシステムまたはコンピューティングプラットフォームの１つ以上のサービスまたはコンポーネントとして実行されてもよい。モジュール２０，２２および２４Ａは、コンピューティングデバイス１０のコンピューティングプラットフォームのアプリケーション層において１つ以上の実行可能なプログラムとして実行されてもよい。そうでなければ、モジュール２０，２２および２４Ａは、コンピューティングデバイス１０に対して遠隔に配置されて、例えばネットワーククラウドにおいてネットワーク３０で動作する１つ以上のネットワークサービスとしてコンピューティングデバイス１０によって遠隔アクセス可能であってもよい。
【００３４】
ＵＩモジュール２０は、コンピューティングデバイス１０に作動的に結合される画面または他のディスプレイデバイスで表示するためにユーザインターフェイス（例えばグラフィカルユーザインターフェイス）を出力することをモバイルコンピューティングデバイス１０にさせ得る。モバイルコンピューティングデバイス１０のユーザが、ＵＩモジュール２０によって管理されるユーザインターフェイスの一部として生成された出力を閲覧、傾聴、感知、またはそうでなければ検出すると、ユーザがユーザインターフェイスと対話するときに、ＵＩモジュール２０は、入力の１つ以上の表示をユーザから受信し得る。ＵＩモジュール２０は、（例えば、ユーザが、ユーザインターフェイスが表示される画面の１つ以上の位置において１つ以上のジェスチャを提供すると）モバイルコンピューティングデバイス１０で検出される入力を解釈し得て、画面で検出される入力についての情報を、モバイルコンピューティングデバイス１０で実行される１つ以上の関連のプラットフォーム、オペレーティングシステム、アプリケーションおよび／またはサービスに中継して、モバイルコンピューティングデバイス１０に機能を実行させ得る。
【００３５】
例えば、ユーザに関連付けられるコンテンツ閲覧位置（例えばコンテンツ閲覧位置２）にいる間であって、メディア出力デバイス８に近接している間は、モバイルコンピューティングデバイス１０のユーザは、モバイルコンピューティングデバイス１０のユーザインターフェイスと対話し得る。これは、モバイルコンピューティングデバイス１０において入力を提供して、メディア出力デバイス８を制御し、ＶＯＤサービスからのメディアコンテンツをメディア出力デバイス８に表示させる、および／または、モバイルコンピューティングデバイス１０から受信されたメディアコンテンツに基づいてグラフィックコンテンツをメディア出力デバイス８に表示させることによって、なされる。ＵＩモジュール２０は、制御入力の表示を受信し、制御入力を処理する際に、制御入力に関連付けられるデータを通信モジュール２４Ａに送り、メディア出力デバイス８の通信モジュール２４Ｂに送信する。メディア出力デバイス８は、通信モジュール２４Ｂによって受信された制御入力に応答して、メディア出力デバイスがディスプレイデバイス１２に表示するメディアコンテンツの表示を変更し得る。
【００３６】
ＵＩモジュール２０は、ユーザインターフェイスを生成するための、モバイルコンピューティングデバイス１０（例えば通知モジュール２２など）で実行される１つ以上の関連のプラットフォーム、オペレーティングシステム、アプリケーションおよび／またはサービスから情報および命令を受信し得る。また、ＵＩモジュール２０は、コンピューティングデバイス１０の出力（例えばグラフィック、閃光、音、触覚応答など）を生成するための、コンピューティングデバイス１０で実行される１つ以上の関連のプラットフォーム、オペレーティングシステム、アプリケーションおよび／またはサービスとコンピューティングデバイス１０のさまざまな出力デバイス（例えばスピーカ、ＬＥＤインジケータ、音声または静電気触覚出力デバイスなど）との間の媒介役の役割を果たし得る。例えば、ＵＩモジュール２０は、ネットワーク３０を介して受信される通知のグラフィック表示を表示するために出力することをＵＩモジュール２０にさせる情報を通知クライアントモジュール２２から受信し得る。
【００３７】
通知クライアントモジュール２２は、モバイルコンピューティングデバイス１０で実行されるプラットフォーム、アプリケーションおよびサービスによって生成および／または受信される通知データの受信、管理、およびそうでなければ処理に関連付けられる機能を実行し得る。通知クライアントモジュール２２は、警報（例えば可聴警報、視覚警報、振動など）を出力して、コンピューティングデバイス１０による通知データの受信を知らせることをＵＩモジュール２０にさせ得る。通知クライアントモジュール２２は、画面で表示するために通知センタグラフィカルユーザインターフェイスを出力することをＵＩモジュール２０にさせ得て、当該通知センタグラフィカルユーザインターフェイスから、モバイルコンピューティングデバイス１０のユーザは、コンピューティングデバイス１０によって受信された通知を閲覧、削除することができ、またはそうでなければ当該通知と対話することができる。
【００３８】
通知クライアントモジュール２２は、レコメンデーションサーバシステム６０の通知ホストモジュール６４から通知データを受信して、受信された通知データを、コンピューティングデバイス１０で実行される受け手プラットフォーム、アプリケーションおよび／またはサービスに出力し得る。通知クライアントモジュール２２は、コンピューティングデバイス１０で実行されるそれぞれのプラットフォーム、アプリケーションおよび／またはサービスによって生成される通知データを受信して、受信された通知データをネットワーク３０を介してレコメンデーションサーバシステム６０に出力し得る。
【００３９】
本開示全体を通して用いられる「通知データ」という用語は、コンピューティングデバイス１０などの１つ以上のコンピューティングデバイスで実行環境内で実行されるさまざまなプラットフォーム、アプリケーションおよびサービスに関連付けられるイベントの発生を示し得るさまざまなタイプの情報を表わすために用いられている。例えば、通知データとしては、コンピューティングデバイス１０のユーザに関連付けられるメッセージ交換アカウントによる通信メッセージ（例えば電子メール、インスタントメッセージ、ＳＭＳなど）の受信、コンピューティングデバイス１０のユーザに関連付けられるソーシャルネットワーキングアカウントによる情報の受信、コンピューティングデバイス１０のユーザのカレンダアカウントに関連付けられるカレンダイベント（会議、約束など）のリマインダ、コンピューティングデバイス１０で実行される第三者アプリケーションによって生成および／または受信される情報、コンピューティングデバイス１０で実行されるプラットフォーム、アプリケーションおよび／またはサービスの２つ以上のコンポーネント間でのコンポーネント間通信の送信および／または受信などのイベントを指定する情報が挙げられるが、これらに限定されるものではない。
【００４０】
いくつかの例では、通知データは、イベントの発生に関連付けられる情報のメモリ内の位置を指し示すものに相当し得る。例えば、通知データは、メモリに記憶された（例えば電子メールアカウントに関連付けられる）メッセージ受信箱におけるメッセージ識別子の位置を指し示すものを備えていてもよい。いくつかの例では、通知データは、イベントの発生に関連付けられる情報に相当し得る。例えば、通知データは、メモリに記憶された（例えば電子メールアカウントに関連付けられる）メッセージ受信箱で受信されるメッセージのテキストまたはコンテンツを備えていてもよい。
【００４１】
モバイルコンピューティングデバイス１０の通信モジュール２４Ａは、モバイルコンピューティングデバイス１０とコンピューティングデバイス１０に近接するさまざまな外部コンピューティングデバイスとの間で情報を転送するための１つ以上の通信セッションを確立し得る。例えば、通信モジュール２４Ａは、メディア出力デバイス８によってディスプレイデバイス１２に表示されるべきメディアコンテンツをモバイルコンピューティングデバイス１０が共有するための方法を提供するために、メディア出力デバイス８のそれぞれのブルートゥース送受信機とモバイルコンピューティングデバイス１０との間のハンドシェーキングを実行してもよい。通信モジュール２４Ａは、モバイルコンピューティングデバイス１０が任意の数の通信プロトコルを介して情報をやりとりすることを可能にし得て、当該通信プロトコルとしては、ブルートゥース、Ｗｉ−Ｆｉ、イーサネット、近距離無線通信プロトコル（ＮＦＣ）、無線ＩＣタグ（ＲＦＩＤ）などが挙げられるが、これらに限定されるものではない。通信モジュール２４Ａは、直接リンク３６を介してメディア出力デバイス８の通信モジュール２４Ｂと直接通信して、メディアコンテンツと、メディア出力デバイス８がディスプレイデバイス１２にメディアコンテンツを表示するときにメディアコンテンツの表示を制御するための制御信号とをやりとりし得る。
【００４２】
レコメンデーションサーバシステム６０は、メディア出力デバイス８、モバイルコンピューティングデバイス１０および／またはメディアサーバシステム８０からネットワーク３０を介して出力された情報を処理および分析して、１つ以上のメディアレコメンデーションをコンピューティングデバイス１０のユーザに提供し得る。レコメンデーションサーバシステム６０は、メディアレコメンデーションがユーザの関心を最も引くものであると判断すると、モバイルコンピューティングデバイス１０のユーザにメディアレコメンデーションを自動的に提供し得る。
【００４３】
レコメンデーションサーバシステム６０は、通知ホストモジュール６４と、デバイスコンテキストモジュール６２と、レコメンデーションモジュール６６とを含む。レコメンデーションサーバシステム６０は、ネットワーク３０へのネットワークリンク３２Ｅを介してメディアコンテンツの１つ以上のメディアレコメンデーションを指定する通知および／または表示（例えばネットワークデータ）を送信することができる、１つ以上のデスクトップコンピュータ、ラップトップコンピュータ、メインフレーム、サーバ、クラウドコンピューティングシステムなどの任意の好適なリモートコンピューティングシステムに相当する。例えば、レコメンデーションサーバシステム６０は、モバイルコンピューティングデバイス１０のユーザがいつ、ユーザに関連付けられるコンテンツ閲覧位置（例えばコンテンツ閲覧位置２）であってメディア出力デバイス８に近接して位置するかを推測、予測、またはそうでなければ判断し、当該判断に応答して、ユーザが享受することができる１つ以上のテレビプログラム、ＶＯＤプログラム、または他のメディアコンテンツサービスおよび／もしくはメディアコンテンツチャネルのメディアレコメンデーションをタイムリーに提供し得る。
【００４４】
モジュール６２，６４および６６は、メディアサーバシステム８０内にある、および／または、メディアサーバシステム８０で実行されるソフトウェア、ハードウェア、ファームウェア、またはハードウェアとソフトウェアとファームウェアとの混合物を用いて、記載されているオペレーションを実行してもよい。レコメンデーションサーバシステム６０は、複数のプロセッサまたは複数のデバイスを用いてモジュール６２，６４および６６を実行してもよい。メディアサーバシステム８０は、基礎をなすハードウェア上で実行されるバーチャルマシンとしてモジュール６２，６４および６６を実行してもよい。モジュール６２，６４および６６は、オペレーティングシステムまたはコンピューティングプラットフォームの１つ以上のサービスとして実行されてもよい。モジュール６２，６４および６６は、コンピューティングプラットフォームのアプリケーション層において１つ以上の実行可能なプログラムとして実行されてもよい。
【００４５】
通知ホストモジュール６４は、コンピューティングデバイス１０と他のコンピューティングデバイスとの間でネットワーク３０を介して通知データをルーティングするための機能を実行し得る。通知ホストモジュール６４は、通知サービスをホストするための機能を実行し得て、ネットワーク３０を介してコンピューティングデバイス１０および他のコンピューティングデバイスに送信するために通知データを出力するための機能も実行し得る。例えば、通知ホストモジュール６４は、コンピューティングデバイス１０に関連付けられるインスタントメッセージ交換アカウントによって受信されたメッセージを示す通知データを受信し得て、ネットワーク３０を介してコンピューティングデバイス１０に送信するために当該通知データを出力し得る。
【００４６】
コンピューティングデバイス１０の通知クライアントモジュール２２は、通知ホストモジュール６４から通知データを受信して、通知ホストモジュール６４から受信された通知データに基づいて警報を出力してコンピューティングデバイス１０による通知データの受信を知らせることをコンピューティングデバイス１０にさせ得る。例えば、通知クライアントモジュール２２は、レコメンデーションサーバシステム６０によって提供される１つ以上のメディアレコメンデーションの表示を備える通知データを受信して、１つ以上のメディアレコメンデーション内で参照されるメディアコンテンツを示すグラフィック警報を出力し得る。
【００４７】
デバイスコンテキストモジュール６２は、コンピューティングデバイス１０のユーザに関連付けられるコンテキストを判断するためのオペレーションを実行し得る。デバイスコンテキストモジュール６２は、コンピューティングデバイス１０およびメディア出力デバイス８に関連付けられるコンテキスト情報（例えばそれぞれの位置、方向、速度、速さ、向きなど）を処理および分析し、当該コンテキスト情報に基づいて、コンピューティングデバイス１０およびメディア出力デバイス８の状態または物理的な動作環境を指定するコンテキストを定義し得る。言い換えれば、デバイスコンテキストモジュール６２は、コンピューティングデバイス１０および／またはメディア出力デバイス８から受信されるコンテキスト情報を処理して、当該コンテキスト情報を用いて、コンピューティングデバイス１０のユーザに関連付けられる１つ以上の特徴および特定の時刻におけるユーザの物理的環境（例えば位置、名前、アドレスおよび／または場所、建物などのタイプ、気象条件、交通条件、カレンダ情報、会議情報、イベント情報など）を指定するコンピューティングデバイス１０のユーザのコンテキストを生成し得る。例えば、デバイスコンテキストモジュール６２は、メディア出力デバイス８およびコンピューティングデバイス１０の各々に関連付けられるそれぞれの物理的位置を判断して、もしあれば出力デバイス８およびコンピューティングデバイス１０の各々に関連付けられる経時的なそれぞれの移動をデバイスコンテキストモジュール６２が検出するとそれぞれの物理的位置を更新し得る。
【００４８】
デバイスコンテキストモジュール６２は、いつコンピューティングデバイス１０がメディア出力デバイス８に近接するか（例えば、いつデバイス８および１０のそれぞれの位置が１メートル以上の距離閾値の範囲内になるか）、および、いつコンピューティングデバイス１０のユーザがコンテンツ閲覧位置（例えばコンテンツ閲覧位置２、例えば家の部屋もしくは領域、オフィス、建物、バー／レストラン、またはユーザがメディアコンテンツを閲覧する他の場所）にくるかを判断し、特定の時刻にユーザにメディアレコメンデーションを提供するか否かを判断し得る。いくつかの例では、デバイスコンテキストモジュール６２は、ネットワーク３０を介してメディア出力デバイス８から受信されたコンテキスト情報に基づいて、（例えば位置、時刻、イベント、活動などを指定する）コンピューティングデバイス１０のユーザに関連付けられるコンテキストを判断し得る。例えば、コンピューティングデバイス１０およびメディア出力デバイス８が短距離通信セッション（例えばブルートゥース）中であるという表示をデバイスコンテキストモジュール６２がメディア出力デバイス８から受信すると、デバイスコンテキストモジュール６２は、コンピューティングデバイス１０のユーザが、メディア出力デバイス８によって表示するために出力されているメディアを閲覧していると判断してもよい。例えば、デバイスコンテキストモジュール６２は、メディア出力デバイス８によって受信される１つ以上の短距離無線通信信号に関連付けられるデバイス識別子（例えばユーザ名、電話番号など）を判断し、コンピューティングデバイス１０のユーザに関連付けられるプロフィール情報内で当該デバイス識別子のルックアップを実行して、メディア出力デバイス８およびコンピューティングデバイス１０がデータをやりとりしているか否かを判断してもよい。
【００４９】
いくつかの例では、デバイスコンテキストモジュール６２は、コンピューティングデバイス１０のユーザに関連付けられる、コンピューティングデバイス１０および／またはレコメンデーションサーバシステム６０によって受信される通信情報に基づいて、コンピューティングデバイス１０のユーザのコンテキストを判断し得る。例えば、レコメンデーションサーバシステム６０は、コンピューティングデバイス１０のユーザに関連付けられる通信または他のプロフィール情報（例えば記憶されたカレンダ、電話帳、メッセージアカウント、電子メールアカウント、ソーシャルメディアネットワークアカウントなど）にアクセスでき、ユーザの現在位置に関係する情報について当該通信情報を分析し得る。例えば、デバイスコンテキストモジュール６２は、ユーザがいつ家にいるか、ユーザがいつ仕事をしているか、ユーザがいつ友人の家にいるかなどを示す、コンピューティングデバイス１０のユーザに関連付けられる電子カレンダを分析し、カレンダ情報に基づいて、コンピューティングデバイス１０のユーザが、カレンダ情報によって指定される時刻に、カレンダ情報によって指定される場所にいると推測してもよい。
【００５０】
デバイスコンテキストモジュール６２は、コンピューティングデバイス１０のユーザに関連付けられる位置履歴を維持し得る。例えば、デバイスコンテキストモジュール６２は、コンピューティングデバイス１０の位置を定期的に更新して、データベース（例えばデータストア）内の日時情報とともに当該位置を記憶し、当該位置情報をレコメンデーションモジュール６６と共有して、コンピューティングデバイス１０のユーザが将来的にいつコンテンツ閲覧位置に位置しそうであるかを予測、推測または確認し得る。デバイスコンテキストモジュール６２は、コンピューティングデバイス１０およびメディア出力デバイス８に関連付けられる位置履歴を維持し、当該位置履歴を互いに関係付けて、デバイス８および１０がいつ同一の位置にくるかを判断してもよい。
【００５１】
本開示全体を通して用いられる「コンテキスト情報」という用語は、過去、現在および未来の物理的位置、移動の程度、気象条件、交通条件、移動パターンなどの、コンピューティングデバイスおよび／またはコンピューティングデバイスのユーザに関連付けられる１つ以上の環境特徴を判断するために、レコメンデーションサーバシステム６０およびコンピューティングデバイス１０などのコンピューティングシステムおよび／またはコンピューティングデバイスによって使用可能な情報を表わすために用いられている。いくつかの例では、コンテキスト情報は、メディア出力デバイス８およびコンピューティングデバイス１０の１つ以上のセンサ（例えばジャイロスコープ、加速度計、近接センサなど）によって取得されるセンサ情報、メディア出力デバイス８およびコンピューティングデバイス１０の１つ以上の通信ユニットおよび／または無線機（例えばグローバル・ポジショニング・システム（global positioning system：ＧＰＳ）、セルラー、Ｗｉ−Ｆｉなど）から取得される無線伝送情報、メディア出力デバイス８およびコンピューティングデバイス１０の１つ以上の入力デバイス（例えばカメラ、マイクロフォン、キーボード、タッチパッド、マウスなど）によって取得される情報、およびネットワーク／デバイス識別子情報（例えばネットワーク名、デバイスインターネットプロトコルアドレスなど）を含み得る。
【００５２】
レコメンデーションモジュール６６は、メディアレコメンデーションがモバイルコンピューティングデバイス１０のユーザの関心を最も引くものであると判断すると、１つ以上のメディアレコメンデーションを生成してモバイルコンピューティングデバイス１０に自動的に提供することを通知ホストモジュール６４にさせ得る。例えば、レコメンデーションモジュール６６は、コンピューティングデバイス１０のユーザがユーザに関連付けられるコンテンツ閲覧位置にいて、場合によってはコンテンツ閲覧位置におけるメディアコンテンツも閲覧しているか否かを判断するための１つ以上の規則を（例えばマシン学習アルゴリズムの一部として）維持し得る。レコメンデーションモジュール６６は、デバイス８および１０のそれぞれのコンテキストを指定する情報を、デバイスコンテキストモジュール６２からの入力として受信し得る。レコメンデーションモジュール６６は、さらに、デバイス８がオン状態で動作しているか否かの表示、メディア出力デバイス８が表示するためにメディアコンテンツを出力しているか否かの表示などの他の情報をデバイス８および１０から取得し得る。
【００５３】
レコメンデーションモジュール６６は、デバイスコンテキストモジュール６２ならびにデバイス８および１０から取得された情報を、コンピューティングデバイス１０のユーザがメディア出力デバイス８に近接してコンテンツ閲覧位置にいるか否かを識別するための１つ以上の規則に送り込み得る。レコメンデーションモジュール６６は、コンピューティングデバイスのユーザが、メディア出力デバイス８に近接して位置するコンテンツ閲覧位置において、表示するために出力されているメディアコンテンツを閲覧しているか否かを示す確率または可能性を、１つ以上の規則からの出力として受信し得る。
【００５４】
レコメンデーションモジュール６６は、当該確率または可能性が、ユーザがメディアコンテンツを閲覧していることを示すための確率閾値を満たすか否かを判断し得る。確率または可能性が閾値を満たす（例えば５０％の可能性よりも大きいなど）場合には、レコメンデーションモジュール６６は、ユーザがメディアコンテンツを閲覧していると判断し、したがって、１つ以上のメディアレコメンデーションをユーザに提供し得る。
【００５５】
レコメンデーションモジュール６６は、プログラムスケジュールならびにＶＯＤサービスモジュール８２および／またはＴＶサービスモジュール８４によって提供されるメディアコンテンツに関連付けられるメディアコンテンツ説明に関する情報についてメディアサーバシステム８０に照会し得る。レコメンデーションモジュール６６は、プログラムスケジュールならびにＶＯＤサービスモジュール８２および／またはＴＶサービスモジュール８４によって提供されるメディアコンテンツに関連付けられるメディアコンテンツ説明を分析して、ユーザに推奨すべき１つ以上のテレビ放送、ＶＯＤ番組、テレビチャネルまたはＶＯＤサービスを判断し得る。例えば、レコメンデーションモジュール６６は、コンピューティングデバイス１０のユーザの閲覧またはインタレストグラフプロフィールを維持し、当該プロフィールを、現時点でメディアサービスシステム８０によって提供されているさまざまなチャネル、番組およびサービスと相互に関係付けて、現時点でユーザに提供すべき１つ以上のメディアレコメンデーションを判断し得る。
【００５６】
レコメンデーションモジュール６６は、１つ以上のメディアレコメンデーションの表示を通知ホストモジュール６４に出力して、１つ以上のレコメンデーションの通知をネットワーク３０を介してコンピューティングデバイス１０に送信することを通知ホストモジュール６４にさせ得る。通知クライアントモジュール２２は、１つ以上のメディアレコメンデーションの通知を受信して、ユーザインターフェイスのグラフィック表示または要素（例えばポップアップウィンドウなど）内の１つ以上のメディアレコメンデーションに基づいて情報を出力することをＵＩモジュール２０にさせ得る。
【００５７】
本開示の技術によれば、レコメンデーションサーバシステム６０は、モバイルコンピューティングデバイス１０のユーザに関連付けられる位置履歴に基づいて、ユーザに関連付けられるコンテンツ閲覧位置を判断し得る。例えば、デバイスコンテキストモジュール６２は、特定の期間中に居住地住所の位置がユーザの位置履歴にたびたび出現することに基づいて、コンテンツ閲覧位置２に対応するモバイルコンピューティングデバイス１０のユーザの家の位置を推測してもよい。デバイスコンテキストモジュール６２は、メディア出力デバイス８の位置履歴に基づいて、メディア出力デバイス８がほとんどの場合ユーザの家の位置（例えばコンテンツ閲覧位置２）に位置すると判断し得る。
【００５８】
レコメンデーションサーバシステム６０は、メディア出力デバイス８を、モバイルコンピューティングデバイス１０のユーザに関連付けられるコンテンツ閲覧位置に位置するメディア出力デバイスであるとして特定し得る。レコメンデーションモジュール６６のマシン学習システムは、コンピューティングデバイス１０およびメディア出力デバイス８が同一の位置にあるときはいつでも、メディア出力デバイス８が表示するためにメディアコンテンツを出力すると判断し、その結果、ユーザの家の位置が、ユーザがしばしばメディアコンテンツを閲覧する（例えばテレビを見るなど）位置でもあると判断し得る。メディア出力デバイス８（例えば表示するためにメディアコンテンツを出力するデバイス）がユーザの家の位置に位置しているので、レコメンデーションモジュール６６は、ユーザの家の位置がユーザのコンテンツ閲覧位置でもあると推測し得る。
【００５９】
モバイルコンピューティングデバイス１０が現時点でメディア出力デバイス８に近接してコンテンツ閲覧位置に位置していると判断したことに応答して、レコメンデーションサーバシステム６０は、メディア出力デバイス８の複数の特徴に基づいて、現時点におけるユーザに対する１つ以上のメディアレコメンデーションを判断し得る。複数の特徴は、メディア出力デバイス８が現時点でオン状態で動作しているか否かの表示、および、メディア出力デバイス８が現時点で表示するためにメディアコンテンツを出力しているか否かの表示を含み得る。
【００６０】
例えば、レコメンデーションモジュール６６は、２つのデバイス８および１０が互いに閾値距離の範囲内（例えば同一の番地、同一のブロックなど）にあることをコンピューティングデバイス１０のコンテキストおよびメディア出力デバイス８のコンテキストが示していると判断し得る。レコメンデーションモジュール６６は、メディア出力デバイス８と通信して、メディア出力デバイス８が現時点でオン状態で動作しているか否かを示す情報、メディア出力デバイス８が現時点で表示するためにメディアコンテンツを出力しているか否かの表示、現時点でメディア出力デバイス８によって出力されているメディアコンテンツのタイプの表示などを取得し得る。レコメンデーションモジュール６６は、コンピューティングデバイス１０からメディア出力デバイス８によって受信される信号（例えばブルートゥース信号）の強度の表示を受信し得る。
【００６１】
レコメンデーションモジュール６６は、メディア出力デバイス８から取得された情報を、コンピューティングデバイス１０のユーザがメディア出力デバイス８に近接しているときにメディアコンテンツを閲覧していそうであるか否かを判断するための１つ以上の規則に入力し得る。例えば、レコメンデーションモジュール６６は、コンピューティングデバイス１０とメディア出力デバイス８との間で通信される信号（例えばブルートゥース信号）の強度が高い（例えばメートル当たりのデシベル閾値よりも大きい）場合に、ユーザがメディアコンテンツを閲覧している可能性が確率閾値を超えると判断し得る。
【００６２】
コンピューティングデバイス１０のユーザが現時点でメディアコンテンツを閲覧していそうであると判断した後、メディアレコメンデーションモジュール６６は、ユーザに対する１つ以上のメディアレコメンデーションを特定し得る。例えば、レコメンデーションモジュール６６は、現時点でメディア出力デバイス８によってアクセスされている特定のＶＯＤサービスを示す情報をメディア出力デバイス８から受信すると、レコメンデーションモジュール６６によって維持されるユーザプロフィールに一致する１つ以上のプログラムが特定のＶＯＤサービスから入手可能であると判断し得る。
【００６３】
レコメンデーションモジュール６６は、現時点でメディア出力デバイスがいかなるメディアコンテンツも出力していないことを示す情報をメディア出力デバイス８から受信すると、レコメンデーションモジュール６６によって維持されるユーザプロフィールに一致する１つ以上のプログラムが１つ以上のメディアレコメンデーションとしてテレビサービス（例えばＶＯＤサービスではない）から入手可能であると判断し得る。レコメンデーションモジュール６６は、現時点でメディア出力デバイスがオン状態で動作しているのではなくメディア出力デバイス８がオフ状態で動作していることを示す情報をメディア出力デバイス８から受信すると、レコメンデーションモジュール６６によって維持されるユーザプロフィールに一致する１つ以上のプログラムがテレビサービスおよびＶＯＤサービスの両方のサービスから入手可能であると見境なく判断し得る。いくつかの例では、レコメンデーションモジュール６６は、メディア出力デバイス８がオフ状態で動作していることを示す情報を受信すると、現時点でユーザに提供するのに適したメディアレコメンデーションはないと判断し得る。
【００６４】
いずれにしても、レコメンデーションモジュール６６は、現時点で判断される１つ以上のメディアレコメンデーションを指定する情報を含む表示（例えば通知データ）をモバイルコンピューティングデバイス１０に出力することを通知ホストモジュール６４にさせ得る。通知クライアントモジュール２２は、グラフィックタイプ、可聴タイプまたは触覚タイプの警報として通知データを提供して、１つ以上のメディアレコメンデーションが受信されたことをユーザに知らせることをＵＩモジュール２０にさせ得る。
【００６５】
このようにして、レコメンデーションサーバシステム６０は、ユーザがメディアコンテンツを閲覧していそうなときに１つ以上のメディアレコメンデーションをモバイルコンピューティングデバイス１０のユーザに提供することができる。ユーザがテレビ放送またはＶＯＤサービスを見ている可能性が高いときにメディアレコメンデーションを提供することによって、コンピューティングデバイス１０のユーザは、当該レコメンデーションを不快なものではなく有用なものとして認識することができる。レコメンデーションサーバシステム６０によって提供される有用なメディアレコメンデーションは、コンピューティングデバイス１０のユーザの注目を集める可能性が高まり、その結果、メディアレコメンデーションによって指定されるメディアコンテンツが閲覧される可能性を高めることができる。
【００６６】
図２は、本開示の１つ以上の局面に従って１つ以上のメディアレコメンデーションを出力するように構成された１つの例示的なコンピューティングシステムとしてレコメンデーションサーバシステム６０を示すブロック図である。図１のシステム１の文脈の範囲内でレコメンデーションサーバシステム６０について以下で説明する。図２は、レコメンデーションサーバシステム６０の１つの特定の例を示しているに過ぎず、他の例ではレコメンデーションサーバシステム６０の多くの他の例が用いられてもよく、例示的なレコメンデーションサーバシステム６０に含まれるコンポーネントのサブセットを含んでいてもよく、または図２に図示されていないさらなるコンポーネントを含んでいてもよい。
【００６７】
図２の例に示されているように、レコメンデーションサーバシステム６０は、１つ以上のプロセッサ７０と、１つ以上の通信ユニット７２と、１つ以上のストレージデバイス７４とを含む。レコメンデーションサーバシステム６０のストレージデバイス７４は、デバイスコンテキストモジュール６２と、通知ホストモジュール６４と、レコメンデーションモジュール６６とを含む。レコメンデーションサーバシステム６０のストレージデバイス７４は、デバイス近接規則データストア６８Ａと、ユーザプロフィール情報データストア６８Ｂと（まとめて「データストア６８」）をさらに含む。通信チャネル７６は、コンポーネント間通信のためにコンポーネント７０，７２および７４の各々を（物理的に、通信可能におよび／または作動的に）相互接続し得る。いくつかの例では、通信チャネル７６は、システムバス、ネットワーク接続、プロセス間通信データ構造、またはデータを通信するためのその他の方法を含んでいてもよい。
【００６８】
レコメンデーションサーバシステム６０の１つ以上の通信ユニット７２は、ネットワーク３０などの１つ以上のネットワークによってネットワーク信号を送信および／または受信することによって、コンピューティングデバイス１０などの外部コンピューティングデバイスと通信し得る。例えば、レコメンデーションサーバシステム６０は、リンク３２Ｅを介して無線信号を送信および／または受信してコンピューティングデバイス１０および／またはメディア出力デバイス８と情報をやりとりするために通信ユニット７２を使用してもよい。通信ユニット７２の例としては、ネットワークインターフェイスカード（例えばイーサネットカードなど）、光学送受信機、無線周波数送受信機、ＧＰＳ受信機、または情報を送信および／または受信することができるその他のタイプのデバイスが挙げられる。通信ユニット７２の他の例としては、短波無線機、セルラー無線機、無線イーサネットネットワーク無線機、およびユニバーサルシリアルバス（ＵＳＢ）コントローラを挙げることができる。
【００６９】
レコメンデーションサーバシステム６０内の１つ以上のストレージデバイス７４は、レコメンデーションサーバシステム６０の動作中に処理情報を記憶し得る（例えば、レコメンデーションサーバシステム６０は、レコメンデーションサーバシステム６０での実行中に、モジュール６２，６４および６６によってアクセスされるデータを記憶し得る）。いくつかの例では、ストレージデバイス７４は一時的なメモリであり、これは、ストレージデバイス７４の主要目的が長期の記憶ではないことを意味する。レコメンデーションサーバシステム６０上のストレージデバイス７４は、揮発性メモリとして情報を短期的に記憶するように構成されてもよく、そのため、電源がオフにされると記憶されたコンテンツを保持することはできない。揮発性メモリの例としては、ランダムアクセスメモリ（random access memories：ＲＡＭ）、ダイナミックランダムアクセスメモリ（dynamic random access memories：ＤＲＡＭ）、スタティックランダムアクセスメモリ（static random access memories：ＳＲＡＭ）、および当該技術分野で公知の他の形態の揮発性メモリが挙げられる。
【００７０】
いくつかの例では、ストレージデバイス７４は、１つ以上のコンピュータ読取可能な記憶媒体も含む。ストレージデバイス７４は、揮発性メモリよりも多くの量の情報を記憶するように構成されてもよい。ストレージデバイス７４は、さらに、不揮発性メモリとして情報を長期的に記憶するように構成され、電源オン／オフサイクル後も情報を保持してもよい。不揮発性メモリの例としては、磁気ハードディスク、光ディスク、フロッピー（登録商標）ディスク、フラッシュメモリ、または、電気的にプログラム可能なメモリ（electrically programmable memories：ＥＰＲＯＭ）もしくは電気的に消去可能およびプログラム可能な（electrically erasable and programmable：ＥＥＰＲＯＭ）メモリの形態が挙げられる。ストレージデバイス７４は、モジュール６２，６４および６６に関連付けられるプログラム命令および／またはデータを記憶し得る。
【００７１】
１つ以上のプロセッサ７０は、レコメンデーションサーバシステム６０内で機能を実行し、および／または、命令を実行し得る。例えば、レコメンデーションサーバシステム６０上のプロセッサ７０は、モジュール６２，６４および６６の機能を実行する、ストレージデバイス７４によって記憶された命令を受信および実行し得る。プロセッサ７０によって実行されるこれらの命令は、プログラムの実行中にストレージデバイス７４内に情報を記憶することをレコメンデーションサーバシステム６０にさせ得る。プロセッサ７０は、メディアコンテンツレコメンデーションを１つ以上のコンピューティングデバイス（例えば図１のコンピューティングデバイス１０）に提供するようにモジュール６２，６４および６６の命令を実行し得る。すなわち、モジュール６２，６４および６６は、レコメンデーションサーバシステム６０のさまざまな動作または機能を実行するようにプロセッサ７０によって動作可能であり得る。
【００７２】
データストア６８は、ユーザプロフィール（例えばデバイス８，１０および／または１２との対話についてのユーザの嗜好、ユーザのコンテンツ閲覧位置の判断に用いられる情報を含む位置履歴、電子メール、テキストメッセージ、音声／音声メール、連絡先、ソーシャルメディアプロフィールを含む通信など）およびコンピューティングデバイスが他のコンピューティングデバイスに近接していることを判別するための（例えばマシン学習システムの）規則を記憶するための任意の好適な記憶媒体に相当する。例えば、デバイス近接規則データストア６８Ａは、マシン学習アルゴリズムまたは他の予測システムの１つ以上の規則を記憶してもよく、当該１つ以上の規則は、コンピューティングデバイスがコンテンツ閲覧位置（例えばコンテンツ閲覧位置２）に位置しているときにモバイルコンピューティングデバイス（例えばコンピューティングデバイス１０）がメディア出力デバイス（例えばメディア出力デバイス８）に近接しているか否かを判断する際にデバイスコンテキストモジュール６２によって使用される。ユーザプロフィール情報データストア６８Ｂは、コンピューティングデバイスのコンテキストおよびコンピューティングデバイスのユーザに対する１つ以上のメディアレコメンデーションをそれぞれ判断するためにデバイスコンテキストモジュール６２およびレコメンデーションモジュール６６がアクセスする、コンピューティングデバイス１０などのコンピューティングデバイスのユーザについての情報を含んでいてもよい。
【００７３】
動作時、レコメンデーションモジュール６６は、ユーザがメディアコンテンツを見ることに関心がありそうであるとレコメンデーションモジュール６６が判断したときに１つ以上のメディアレコメンデーションをコンピューティングデバイス１０のユーザに提供することを通知ホストモジュール６４にさせるか否かを判断し得る。レコメンデーションモジュール６６は、モバイルコンピューティングデバイス１０に関連付けられる位置履歴に基づいて、ユーザに関連付けられるコンテンツ閲覧位置を判断し得る。例えば、デバイスコンテキストモジュール６２は、ユーザに関連付けられる居住地住所の度重なる出現がユーザの家の位置に対応すると推測してもよく、または商用住所の度重なる出現がユーザの勤務地に対応すると推測してもよく、またはレストランまたはバーの度重なる出現がユーザに関連付けられるレストランまたはバーの位置に対応すると推測してもよい。デバイスコンテキストモジュール６２は、ユーザプロフィール情報データストア６８Ｂに記憶されたメディア出力デバイス８の位置履歴に基づいて、メディア出力デバイス８がほとんどの場合単一の位置に位置していると判断し得る。レコメンデーションモジュール６６は、メディア出力デバイス８の典型的な位置およびユーザの家の位置が同一の位置に対応すると判断し、ユーザに関連付けられる家の位置がユーザのコンテンツ閲覧位置であると推測し得る。
【００７４】
現時点で、デバイスコンテキストモジュール６２は、ユーザに関連付けられる同一のコンテンツ閲覧位置にコンピューティングデバイス１０およびモバイルコンピューティングデバイス８が配列され、デバイス８および１０が互いに近接していると判断し得る。例えば、レコメンデーションモジュール６６は、２つのデバイス８および１０が互いに閾値距離の範囲内（例えば同一の番地、同一のブロックなど）にあることをコンピューティングデバイス１０のコンテキストおよびメディア出力デバイス８のコンテキストが示していると判断し得る。レコメンデーションモジュール６６は、メディア出力デバイス８と通信して、メディア出力デバイス８が現時点でオン状態で動作しているか否かを示す情報、メディア出力デバイス８が現時点で表示するためにメディアコンテンツを出力しているか否かの表示、現時点でメディア出力デバイス８によって出力されているメディアコンテンツのタイプの表示などを取得し得る。レコメンデーションモジュール６６は、コンピューティングデバイス１０からメディア出力デバイス８によって受信される信号（例えばブルートゥース信号）の強度の表示を受信し得る。
【００７５】
レコメンデーションモジュール６６は、メディア出力デバイス８から取得された情報を、コンピューティングデバイス１０のユーザがメディア出力デバイス８に近接しているときにメディアコンテンツを閲覧していそうであるか否かを判断するための、デバイス近接規則データストア６８Ａに記憶された１つ以上の規則に入力し得る。例えば、レコメンデーションモジュール６６は、コンピューティングデバイス１０とメディア出力デバイス８との間で通信されるＷｉ−Ｆｉ信号（例えばブルートゥース信号）の強度が高い（例えばメートル当たりのデシベル閾値よりも大きい）場合に、ユーザがメディアコンテンツを閲覧している可能性が確率閾値を超えると判断し得る。
【００７６】
コンピューティングデバイス１０のユーザが現時点でメディアコンテンツを閲覧していそうであると判断した後、メディアレコメンデーションモジュール６６は、ユーザに対する１つ以上のメディアレコメンデーションを特定し得る。例えば、レコメンデーションモジュール６６は、現時点でメディア出力デバイス８によってアクセスされている特定のＶＯＤサービスを示す情報をメディア出力デバイス８から受信すると、ユーザプロフィールに一致する１つ以上のプログラムが特定のＶＯＤサービスから入手可能であると判断し得て、当該ユーザプロフィールは、ユーザプロフィール情報データストア６８Ｂに維持され、レコメンデーションモジュール６６によってアクセスされる。
【００７７】
いずれにしても、レコメンデーションモジュール６６は、現時点で判断される１つ以上のメディアレコメンデーションを指定する情報を含む表示（例えば通知データ）をモバイルコンピューティングデバイス１０に出力することを通知ホストモジュール６４にさせるためのグラフィック情報を通知ホストモジュール６４に送り得る。通知クライアントモジュール２２は、グラフィックタイプ、可聴タイプまたは触覚タイプの警報として通知データを提供して、１つ以上のメディアレコメンデーションが受信されたことをユーザに知らせることをＵＩモジュール２０にさせ得る。
【００７８】
いくつかの例では、レコメンデーションサーバシステム６０は、１つ以上のメディアコンテンツサービスに関連付けられる情報をメディアサーバシステム８０から取得し得る。レコメンデーションモジュール６６によって判断される１つ以上のメディアレコメンデーションは、１つ以上のメディアコンテンツサービスによって関連付けられる情報によって指定され、メディアサーバから取得されるメディアコンテンツに基づいて判断され得る。言い換えれば、レコメンデーションモジュール６６は、通信ユニット７２およびそのネットワーク３０との接続を介してメディアサーバシステム８０と通信し得る。レコメンデーションモジュール６６は、現時点で入手可能であり、ユーザプロフィール情報データストア６８Ｂに記憶された１つ以上のユーザの関心に対応するビデオ、番組、プログラムなどについてＶＯＤサービスモジュール８２に照会し得る。例えば、ユーザに関連付けられるプロフィール情報が、ユーザがアクションスポーツを好むことを示す場合、ＶＯＤサービスモジュール８２は、メディア出力デバイス８がコンテンツをストリーミングしている最中である特定のＶＯＤサービスから、現時点で入手可能な１つ以上のアクションスポーツプログラムに関連付けられるタイトル、時刻、チャネルなど、または識別情報を提供してもよい。
【００７９】
レコメンデーションモジュール６６は、現時点で入手可能であり、ユーザプロフィール情報データストア６８Ｂに記憶された１つ以上のユーザの関心に対応するコンテンツ、番組、プログラムなどについてＴＶサービスモジュールに照会し得る。例えば、ユーザに関連付けられるプロフィール情報が、ユーザがアクションスポーツを好むことを示す場合、ＴＶサービスモジュール８４は、メディア出力デバイス８がコンテンツを出力またはそうでなければストリーミングしていないときにユーザに関連付けられるＴＶサービスから、現時点で入手可能な１つ以上のアクションスポーツプログラムに関連付けられるタイトル、時刻、チャネルなど、または識別情報を提供してもよい。
【００８０】
いくつかの例では、レコメンデーションサーバモジュール６０は、メディア出力デバイス８が現時点で表示するためにメディアコンテンツを出力していると判断したことに応答して、当該メディアコンテンツが１つ以上のビデオ・オン・デマンドサービスに関連付けられると判断し、当該１つ以上のビデオ・オン・デマンドサービスに基づいて１つ以上のメディアレコメンデーションを判断し得る。言い換えれば、レコメンデーションモジュール６６は、デバイス８が特定のＶＯＤサービスからメディアコンテンツを出力していることを示す、デバイス８から取得される情報を、マシン学習アルゴリズムへの入力として提供し得る。レコメンデーションモジュール６６は、コンピューティングデバイス１０がデバイス８に近接しているので、コンピューティングデバイス１０のユーザが閲覧したいと思っているであろうＶＯＤコンテンツをデバイス８がストリーミングしているときに、１つ以上のメディアレコメンデーションが当該特定のＶＯＤサービスに関連付けられると推測し得る。
【００８１】
いくつかの例では、レコメンデーションモジュール６６は、現時点で表示するために出力されているメディアコンテンツに関連付けられるメタデータから、１つ以上のビデオ・オン・デマンドサービスからの特定のビデオ・オン・デマンドサービスを特定し、当該特定のビデオ・オン・デマンドサービスに基づいて１つ以上のメディアレコメンデーションを判断し得る。例えば、レコメンデーションモジュール６６は、デバイス８によって受信されたビデオストリームに関連付けられるグラフィックコンテンツをデバイス８がディスプレイデバイス１２に出力するときに、当該ビデオストリームにアクセスすることができる。ビデオストリーム情報は、ビデオストリームの起源または供給源を指定するメタデータを含み得る。レコメンデーションモジュール６６は、メディアサーバシステム８０で実行される特定のＶＯＤメディアサービスによってメディアコンテンツが提供されていることをメタデータが示していると判断して、当該特定のＶＯＤメディアサービスによって提供されるさまざまな映画、プログラムまたは番組に基づいてレコメンデーションを提供し得る。
【００８２】
いくつかの例では、レコメンデーションサーバシステム６０は、メディア出力デバイス８が現時点でオン状態で動作していると判断したことに応答して、およびメディア出力デバイス８が現時点で表示するためにメディアコンテンツを出力することを控えていると判断したことに応答して、当該メディアコンテンツが１つ以上のテレビサービスに関連付けられると判断し、当該１つ以上のテレビサービスに基づいて１つ以上のメディアレコメンデーションを判断し得る。例えば、レコメンデーションモジュール６６は、日付またはメディア出力デバイス８の動作状態（例えば、メディア出力デバイス８がスタンバイまたは「オフモード」で動作しており、ディスプレイデバイス１２で表示するためにグラフィックコンテンツを出力していないか否か、メディア出力デバイス８が「オンモード」で動作しており、メディアサーバシステム８０からのＶＯＤメディアコンテンツを処理し、処理されたＶＯＤメディアコンテンツをディスプレイデバイス１２で表示するために出力しているか否か、など）を示す他の情報をネットワーク３０を介して取得してもよい。メディア出力デバイス８がメディアコンテンツを処理しておらず、メディアコンテンツに基づいて可聴音またはグラフィック画像／ビデオを表示することをディスプレイデバイス１２にさせていないことをメディア出力デバイス８の動作状態が示している場合、レコメンデーションモジュール６６は、メディア出力デバイス８に近接してコンテンツ閲覧位置２に位置するコンピューティングデバイス１０のユーザがテレビ（例えばケーブルテレビ放送、無線テレビ放送、衛星テレビ放送など）を見ていると推測し得る。レコメンデーションモジュール６６は、現時点でモバイルコンピューティングデバイス１０に提供されるメディアレコメンデーションを、ユーザプロフィール情報データストア６８Ｂに含まれるテレビの嗜好に一致する、メディアサーバシステム８０から入手可能なテレビ番組またはプログラムを見るためのメディアレコメンデーションに合わせ得る。
【００８３】
いくつかの例では、レコメンデーションサーバシステム６０は、モバイルコンピューティングデバイス１０からメディア出力デバイス８で受信される通信信号の強度を判断し、当該通信信号の強度が閾値を満たすと判断したことに応答して、モバイルコンピューティングデバイス１０が現時点でメディア出力デバイス８に近接してコンテンツ閲覧位置２に位置していると判断し得る。例えば、レコメンデーションサーバシステム６０のデバイスコンテキストモジュール６２は、いつコンピューティングデバイス１０がメディア出力デバイス８に近接するか（例えば、いつデバイス８および１０のそれぞれの位置が１メートル以上の距離閾値の範囲内になるか）、および、いつコンピューティングデバイス１０のユーザがコンテンツ閲覧位置（例えばコンテンツ閲覧位置２、例えば家の部屋もしくは領域、オフィス、建物、バー／レストラン、またはユーザがメディアコンテンツを閲覧する他の場所）にくるかを判断し得る。デバイスコンテキストモジュール６２は、モバイルコンピューティングデバイス１０がメディア出力デバイス８に近接してコンテンツ閲覧位置２にあるときにレコメンデーションモジュール６６に通知して、特定の時刻にメディアレコメンデーションをユーザに提供することをレコメンデーションモジュール６６にさせ得る。
【００８４】
コンピューティングデバイス１０およびメディア出力デバイス８が短距離通信セッション（例えばブルートゥース）中であるという表示をデバイスコンテキストモジュール６２がメディア出力デバイス８から受信すると、デバイスコンテキストモジュール６２は、コンピューティングデバイス１０のユーザが、メディア出力デバイス８によって表示するために出力されているメディアを閲覧していると判断し得る。例えば、デバイスコンテキストモジュール６２は、メディア出力デバイス８によって受信される１つ以上の短距離無線通信信号に関連付けられるデバイス識別子（例えばユーザ名、電話番号など）を判断し、コンピューティングデバイス１０のユーザに関連付けられるプロフィール情報内で当該デバイス識別子のルックアップを実行して、メディア出力デバイス８およびコンピューティングデバイス１０がデータをやりとりしているか否かを判断してもよい。デバイスコンテキストモジュール６２は、デバイス８と１０との間の通信信号の強度を読取って、当該強度が閾値を超えている場合に、モバイルコンピューティングデバイス１０のユーザがメディア出力デバイス８によって表示するために出力されているメディアコンテンツを見ているであろうということを示すのに十分に近い距離に２つのデバイス８および１０があると推測し得る。
【００８５】
いくつかの例では、レコメンデーションサーバシステム６０は、メディア出力デバイス８が現時点でモバイルコンピューティングデバイス１０からメディアコンテンツを受信していると判断したことに応答して、モバイルコンピューティングデバイス１０のユーザに関連付けられる個人の嗜好に基づいて１つ以上のメディアレコメンデーションを判断し得る。例えば、メディア出力デバイス８は、デバイス１０によって表示されているグラフィックコンテンツのフォーマットを処理し、表示するためにグラフィックコンテンツを提供することをデバイス１２にさせることによって、デバイス１０によって表示するために出力されているグラフィックコンテンツを「ミラーリング」するようにモバイルコンピューティングデバイス１０によって構成可能であり得る。言い換えれば、メディア出力デバイス８は、モバイルコンピューティングデバイス１０からディスプレイデバイス１２の画面にグラフィックコンテンツを中継することができ、その結果、モバイルコンピューティングデバイス１０は、デバイス１２にグラフィックコンテンツを表示させるためにデバイス１２と直接通信する必要がなくなる。逆に、デバイス１０は、メディア出力デバイス８と直接通信してもよく、メディア出力デバイス８は、デバイス１０の画面をミラーリングして、デバイス１０によって出力されているグラフィックコンテンツを表示することをデバイス１２にさせてもよい。
【００８６】
いずれにしても、レコメンデーションモジュール６６は、いつメディア出力デバイスがモバイルコンピューティングデバイス１０によって制御されて、デバイス１０によって表示するために出力されているグラフィックコンテンツを中継しているかを示す情報をメディア出力デバイス８から取得し得る。レコメンデーションモジュール６６は、デバイス１０がメディア出力デバイス８を制御していて、デバイス１０のユーザが現在閲覧して制御しているデバイス１０の画面をミラーリングすることをデバイス８にさせているときに、メディアコンテンツがコンテンツ閲覧位置２で表示されていると推測し得る。レコメンデーションモジュール６６は、コンピューティングデバイス１０に対するメディアレコメンデーションを、コンピューティングデバイス１０のユーザの個人の嗜好、または言い換えれば、現時点でメディア出力デバイス８の制御下にあるコンピューティングデバイスのユーザの個人の嗜好であって、他のユーザの嗜好ではない個人の嗜好に基づくレコメンデーションに合わせ得る。
【００８７】
いくつかの例では、レコメンデーションサーバシステム６０は、メディア出力デバイス８が現時点でモバイルコンピューティングデバイス１０以外の少なくとも１つのコンピューティングデバイスからメディアコンテンツを受信していると判断したことに応答して、モバイルコンピューティングデバイスのユーザに関連付けられる集団の嗜好に基づいてコンピューティングデバイスによって１つ以上のメディアレコメンデーションを判断し得る。例えば、上記のように、メディア出力デバイス８は、デバイス１０によって表示されているグラフィックコンテンツのフォーマットを処理し、表示するためにグラフィックコンテンツを提供することをデバイス１２にさせることによって、デバイス１０によって表示するために出力されているグラフィックコンテンツを「ミラーリング」するようにモバイルコンピューティングデバイス１０によって構成可能であり得る。レコメンデーションモジュール６６は、いつメディア出力デバイスがモバイルコンピューティングデバイス１０以外のコンピューティングデバイスによって制御され、他のデバイスによって表示するために出力されているグラフィックコンテンツを中継しているかを示す情報をメディア出力デバイス８から取得し得る。例えば、コンピューティングデバイス１０のユーザは、友人、配偶者、同僚などとともにコンテンツ閲覧位置２にいてもよい。当該友人、配偶者、同僚などに関連付けられるモバイルコンピューティングデバイスは、メディア出力デバイス８を制御していてもよく、および／または、表示するためにグラフィックコンテンツを出力することをメディア出力デバイス８にさせていてもよい。レコメンデーションモジュール６６は、コンピューティングデバイス１０およびコンピューティングデバイス１０のユーザが現時点でメディア出力デバイス８の制御下にない場合に、個人の嗜好ではなく集団の嗜好に基づく、ユーザに関連付けられる適合したメディアレコメンデーションが現時点ではより適しているであろうと推測し得る。レコメンデーションモジュール６６は、他のデバイスのユーザの識別子を判断し、ユーザプロフィール情報データストア６８Ｂに記憶されたコンピューティングデバイス１０のユーザの嗜好と他のデバイスのユーザの嗜好との間で重複する１つ以上のメディアレコメンデーションを判断し得る。
【００８８】
このようにして、レコメンデーションサーバシステム６０は、ユーザがメディアコンテンツを閲覧していそなときに１つ以上のメディアレコメンデーションをモバイルコンピューティングデバイス１０のユーザに提供し、ユーザおよび／またはユーザが関連付けられる集団の好み、嗜好、または好き嫌いに適したメディアレコメンデーションを提供することができる。ユーザがテレビ放送またはＶＯＤサービスを見ていそうなときに、ユーザのユーザプロフィール情報に適合したレコメンデーションのタイプのメディアレコメンデーションをタイムリーに提供することによって、コンピューティングデバイス１０のユーザは、当該レコメンデーションを不快なものではなく有用なものとして認識することができる。レコメンデーションサーバシステム６０によって提供される有用なメディアレコメンデーションは、コンピューティングデバイス１０のユーザの注目を集める可能性が高まり、その結果、メディアレコメンデーションによって指定されるメディアコンテンツが閲覧される可能性を高めることができる。いかなるユーザの介入もなしに（例えばユーザ入力なしに）、ユーザは、レコメンデーションを受信することができ、したがって、モバイルコンピューティングデバイス１０、メディア出力デバイス８およびディスプレイデバイス１２を用いて見るべきメディアコンテンツを探す時間を減らすことができる。
【００８９】
図３は、本開示の１つ以上の技術に従ってリモートデバイスで表示するためにグラフィックコンテンツを出力する例示的なコンピューティングデバイスを示すブロック図である。グラフィックコンテンツは、一般に、テキスト、画像、動画の群などの、表示するために出力され得るいかなる視覚情報も含み得る。図３に示されている例は、コンピューティングデバイス１００と、存在感知ディスプレイ１０１と、通信ユニット１１０と、プロジェクタ１２０と、プロジェクタスクリーン１２２と、モバイルデバイス１２６と、ビジュアルディスプレイデバイス１３０とを含む。コンピューティングデバイス１０のうちの１つおよびコンピューティングデバイス１００などのコンピューティングデバイスは、図１では例示の目的で複数のスタンドアロンのコンピューティングデバイス１０として示されているが、一般には、ソフトウェア命令を実行するためのプロセッサまたは他の好適なコンピューティング環境を含む任意のコンポーネントまたはシステムであってもよく、例えば存在感知ディスプレイを含まなくてもよい。
【００９０】
図３の例に示されているように、コンピューティングデバイス１００は、図２においてプロセッサ７０に関して記載されている機能を含むプロセッサであってもよい。このような例では、コンピューティングデバイス１００は、通信チャネル１０２Ａによって存在感知ディスプレイ１０１に作動的に結合され得て、当該通信チャネル１０２Ａは、システムバスまたは他の好適な接続であってもよい。また、コンピューティングデバイス１００は、通信チャネル１０２Ｂによって、以下でさらに説明される通信ユニット１１０に作動的に結合され得て、当該通信チャネル１０２Ｂもシステムバスまたは他の好適な接続であってもよい。コンピューティングデバイス１００は、図３では一例として別個に示されているが、１つ以上の通信チャネルのうちの任意の数の通信チャネルによって存在感知ディスプレイ１０１および通信ユニット１１０に作動的に結合されてもよい。
【００９１】
図１にコンピューティングデバイス１０によって前に示された例などの他の例では、コンピューティングデバイスは、（スマートフォンを含む）携帯電話、ラップトップコンピュータ、コンピュータ時計、コンピュータ眼鏡、ウェアラブルコンピューティングデバイスなどのポータブルまたはモバイルデバイスを指してもよい。いくつかの例では、コンピューティングデバイスは、デスクトップコンピュータ、タブレットコンピュータ、スマートテレビプラットフォーム、カメラ、パーソナル・デジタル・アシスタント（ＰＤＡ）、サーバ、メインフレームなどであってもよい。
【００９２】
存在感知ディスプレイ１０１は、ディスプレイデバイス１０３と、存在感知入力デバイス１０５とを含み得る。ディスプレイデバイス１０３は、例えば、コンピューティングデバイス１００からデータを受信して、グラフィックコンテンツを表示し得る。いくつかの例では、存在感知入力デバイス１０５は、静電容量技術、誘導技術および／または光学認識技術を用いて存在感知ディスプレイ１０１において１つ以上の入力（例えば、連続的なジェスチャ、マルチタッチジェスチャ、シングルタッチジェスチャなど）を判断して、このような入力の表示を通信チャネル１０２Ａを用いてコンピューティングデバイス１００に送り得る。いくつかの例では、存在感知入力デバイス１０５は、ディスプレイデバイス１０３の上に物理的に位置決めされてもよく、その結果、ユーザがディスプレイデバイス１０３によって表示されるグラフィック要素の上に入力ユニットを位置決めすると、存在感知入力デバイス１０５の位置は、当該グラフィック要素が表示されるディスプレイデバイス１０３の位置に対応する。他の例では、存在感知入力デバイス１０５は、ディスプレイデバイス１０３から離れて物理的に位置決めされてもよく、存在感知入力デバイス１０５の位置は、ディスプレイデバイス１０３の位置に対応してもよく、その結果、ディスプレイデバイス１０３の対応する位置に表示されるグラフィック要素と対話するために存在感知入力デバイス１０５において入力を作成することができる。
【００９３】
図３に示されているように、コンピューティングデバイス１００は、通信ユニット１１０も含み得る、および／または、通信ユニット１１０とも作動的に結合され得る。通信ユニット１１０の例としては、ネットワークインターフェイスカード、イーサネットカード、光学送受信機、無線周波数送受信機、または情報を送受信することができるその他のタイプのデバイスを挙げることができる。このような通信ユニットの他の例としては、ブルートゥース、３Ｇ、Ｗｉ−Ｆｉ無線機、ユニバーサルシリアルバス（ＵＳＢ）インターフェイスなどを挙げることができる。また、コンピューティングデバイス１００は、簡潔にする目的および例示の目的で図３には図示されていない１つ以上の他のデバイス、例えば入力デバイス、出力デバイス、メモリ、ストレージデバイスなどを含み得る、および／または、１つ以上の他のデバイスと作動的に結合され得る。
【００９４】
また、図３は、プロジェクタ１２０と、プロジェクタスクリーン１２２とを示している。プロジェクションデバイスの他のこのような例としては、電子ホワイトボード、ホログラフィックディスプレイデバイス、ヘッドアップディスプレイ（heads up display：ＨＵＤ）、およびグラフィックコンテンツを表示するためのその他の好適なデバイスを挙げることができる。プロジェクタ１２０およびプロジェクタスクリーン１２２は、それぞれのデバイスがコンピューティングデバイス１００と通信することを可能にする１つ以上の通信ユニットを含み得る。いくつかの例では、１つ以上の通信ユニットは、プロジェクタ１２０とプロジェクタスクリーン１２２との間の通信を可能にし得る。プロジェクタ１２０は、グラフィックコンテンツを含むデータをコンピューティングデバイス１００から受信し得る。プロジェクタ１２０は、データを受信したことに応答して、グラフィックコンテンツをプロジェクタスクリーン１２２に投影し得る。いくつかの例では、プロジェクタ１２０は、光学認識技術または他の好適な技術を用いてプロジェクタスクリーン１２２において１つ以上の入力（例えば、連続的なジェスチャ、マルチタッチジェスチャ、シングルタッチジェスチャなど）を判断し、このような入力の表示を１つ以上の通信ユニットを用いてコンピューティングデバイス１００に送り得る。このような例では、プロジェクタスクリーン１２２は不要であってもよく、プロジェクタ１２０は、グラフィックコンテンツを任意の好適な媒体に投影して、光学認識技術または他のこのような好適な技術を用いて１つ以上のユーザ入力を検出し得る。
【００９５】
いくつかの例では、プロジェクタスクリーン１２２は、存在感知ディスプレイ１２４を含み得る。存在感知ディスプレイ１２４は、本開示に記載されているように、ＵＩデバイス４の機能のサブセットを含んでいてもよく、またはＵＩデバイス４の全ての機能を含んでいてもよい。いくつかの例では、存在感知ディスプレイ１２４は、さらなる機能を含んでいてもよい。プロジェクタスクリーン１２２（例えばコンピュータ眼鏡の電子ディスプレイ）は、コンピューティングデバイス１００からデータを受信して、グラフィックコンテンツを表示し得る。いくつかの例では、存在感知ディスプレイ１２４は、静電容量技術、誘導技術および／または光学認識技術を用いてプロジェクタスクリーン１２２において１つ以上の入力（例えば、連続的なジェスチャ、マルチタッチジェスチャ、シングルタッチジェスチャなど）を判断して、このような入力の表示を１つ以上の通信ユニットを用いてコンピューティングデバイス１００に送り得る。
【００９６】
また、図３は、モバイルデバイス１２６と、ビジュアルディスプレイデバイス１３０とを示している。モバイルデバイス１２６およびビジュアルディスプレイデバイス１３０は、各々、計算機能および接続機能を含み得る。モバイルデバイス１２６の例としては、電子書籍リーダデバイス、コンバーチブルノートブックデバイス、ハイブリッドスレートデバイス、コンピュータ化された時計、コンピュータ化された眼鏡などを挙げることができる。ビジュアルディスプレイデバイス１３０の例としては、テレビ、コンピュータモニタ、自動車のディスプレイなどの他の半固定デバイスを挙げることができる。図３に示されているように、モバイルデバイス１２６は、存在感知ディスプレイ１２８を含み得る。ビジュアルディスプレイデバイス１３０は、存在感知ディスプレイ１３２を含み得る。存在感知ディスプレイ１２８，１３２は、本開示に記載されているように、ディスプレイデバイス１２の機能のサブセットを含んでいてもよく、またはディスプレイデバイス１２の全ての機能を含んでいてもよい。いくつかの例では、存在感知ディスプレイ１２８，１３２は、さらなる機能を含んでいてもよい。いずれの場合でも、存在感知ディスプレイ１３２は、例えば、コンピューティングデバイス１００からデータを受信して、グラフィックコンテンツを表示し得る。いくつかの例では、存在感知ディスプレイ１３２は、静電容量技術、誘導技術および／または光学認識技術を用いてプロジェクタスクリーンにおいて１つ以上の入力（例えば、連続的なジェスチャ、マルチタッチジェスチャ、シングルタッチジェスチャなど）を判断して、このような入力の表示を１つ以上の通信ユニットを用いてコンピューティングデバイス１００に送り得る。
【００９７】
上記のように、いくつかの例では、コンピューティングデバイス１００は、システムバスまたは他の好適な通信チャネルによってコンピューティングデバイス１００に結合される存在感知ディスプレイ１０１において表示するためにグラフィックコンテンツを出力し得る。また、コンピューティングデバイス１００は、プロジェクタ１２０、プロジェクタスクリーン１２２、モバイルデバイス１２６およびビジュアルディスプレイデバイス１３０などの１つ以上のリモートデバイスにおいて表示するためにグラフィックコンテンツを表示し得る。例えば、コンピューティングデバイス１００は、本開示の技術に従ってグラフィックコンテンツを生成および／または修正するように１つ以上の命令を実行し得る。コンピューティングデバイス１００は、当該グラフィックコンテンツを含むデータを通信ユニット１１０などのコンピューティングデバイス１００の通信ユニットに出力し得る。通信ユニット１１０は、当該データを、プロジェクタ１２０、プロジェクタスクリーン１２２、モバイルデバイス１２６および／またはビジュアルディスプレイデバイス１３０などのりモードデバイスのうちの１つ以上に送り得る。このようにして、コンピューティングデバイス１００は、リモートデバイスのうちの１つ以上において表示するためにグラフィックコンテンツを出力することができる。いくつかの例では、リモートデバイスのうちの１つ以上は、それぞれのリモートデバイスに含まれる、および／または、それぞれのリモートデバイスに作動的に結合される存在感知ディスプレイにおいてグラフィックコンテンツを出力し得る。
【００９８】
いくつかの例では、コンピューティングデバイス１００は、コンピューティングデバイス１００に作動的に結合される存在感知ディスプレイ１０１においてグラフィックコンテンツを出力しなくてもよい。他の例では、コンピューティングデバイス１００は、通信チャネル１０２Ａによってコンピューティングデバイス１００に結合される存在感知ディスプレイ１０１においても、１つ以上のリモートデバイスにおいても、表示するためにグラフィックコンテンツを出力してもよい。このような例では、グラフィックコンテンツは、各々のそれぞれのデバイスにおいて実質的に同時に表示され得る。例えば、グラフィックコンテンツを含むデータをリモートデバイスに送るために、通信待ち時間によって何らかの遅延が導入されてもよい。いくつかの例では、コンピューティングデバイス１００によって生成されて存在感知ディスプレイ１０１において表示するために出力されるグラフィックコンテンツは、１つ以上のリモートデバイスにおいて表示するために出力されるグラフィックコンテンツ表示とは異なっていてもよい。
【００９９】
コンピューティングデバイス１００は、任意の好適な通信技術を用いてデータを送受信し得る。例えば、コンピューティングデバイス１００は、ネットワークリンク１１２Ａを用いて外部ネットワーク１１４に作動的に結合され得る。図３に示されている各リモートデバイスは、それぞれのネットワークリンク１１２Ｂ，１１２Ｃおよび１１２Ｄのうちの１つによって外部ネットワーク１１４に作動的に結合され得る。外部ネットワーク１１４は、作動的に相互に結合されることによってコンピューティングデバイス１００と図３に示されているリモートデバイスとの間で情報のやりとりを行うネットワークハブ、ネットワークスイッチ、ネットワークルータなどを含み得る。いくつかの例では、ネットワークリンク１１２Ａ〜１１２Ｄは、イーサネット、ＡＴＭまたは他のネットワーク接続であってもよい。このような接続は、無線接続であってもよく、および／または、有線接続であってもよい。
【０１００】
いくつかの例では、コンピューティングデバイス１００は、直接的なデバイス通信１１８を用いて、図３に示されているリモートデバイスのうちの１つ以上に作動的に結合され得る。直接的なデバイス通信１１８は、コンピューティングデバイス１００がリモートデバイスと直接データを送受信する、有線または無線通信を用いた通信を含み得る。すなわち、直接的なデバイス通信１１８のいくつかの例では、コンピューティングデバイス１００によって送られたデータは、リモートデバイスで受信される前に１つ以上のさらなるデバイスによって転送されなくてもよく、逆もまた同様である。直接的なデバイス通信１１８の例としては、ブルートゥース、近距離無線通信、ユニバーサルシリアルバス、Ｗｉ−Ｆｉ、赤外線などを挙げることができる。図３に示されているリモートデバイスのうちの１つ以上は、通信リンク１１６Ａ〜１１６Ｄによってコンピューティングデバイス１００と作動的に結合され得る。いくつかの例では、通信リンク１１２Ａ〜１１２Ｄは、ブルートゥース、近距離無線通信、ユニバーサルシリアルバス、赤外線などを用いた接続であってもよい。このような接続は、無線接続であってもよく、および／または、有線接続であってもよい。
【０１０１】
本開示の技術に従って、コンピューティングデバイス１００は、外部ネットワーク１１４を用いてビジュアルディスプレイデバイス１３０に作動的に結合され得る。コンピューティングデバイス１００に関連付けられるデバイス識別子を図１および図２のメディア出力デバイス８などのメディア出力デバイスに出力したことに応答して、コンピューティングデバイス１００は、現時点におけるユーザに対する１つ以上のメディアレコメンデーションの表示（例えばデータ）を、図１および図２のレコメンデーションサーバシステム６０などのコンピューティングシステムから受信し得る。１つ以上のメディアレコメンデーションは、メディア出力デバイスに関連付けられる複数の特徴に基づき得て、当該複数の特徴は、メディア出力デバイスが現時点でオン状態で動作しているか否かの表示、および、メディア出力デバイスが現時点で表示するためにメディアコンテンツを出力しているか否かの表示を含むが、これらに限定されるものではない。
【０１０２】
１つ以上のメディアレコメンデーションの表示を受信したことに応答して、コンピューティングデバイス１００は、１つ以上のメディアレコメンデーションに基づく情報を含むグラフィック表示（例えばグラフィカルユーザインターフェイスなど）を出力し得る（例えば、スケジュール、タイトル、グラフィックなどを表示し得る）。例えば、コンピューティングデバイス１００は、メディアレコメンデーションデータに基づくグラフィック表示を、ビジュアルディスプレイデバイス１３０に、表示するために出力してもよい。コンピューティングデバイス１００は、グラフィック表示を、直接的なデバイス通信１１８または外部ネットワーク１１４を介してディスプレイデバイス１３０に、表示するために出力してもよい。いくつかの例では、ディスプレイデバイス１３０は、グラフィック表示を、コンピューティングデバイス１００に関連付けられるユーザに、表示するために出力し、その結果、ユーザは、表示されたグラフィック表示のうちのいくつかまたは全てを選択または却下することによってコンピューティングデバイス１００と対話することができる。
【０１０３】
図４は、本開示の１つ以上の局面に従ってモバイルコンピューティングデバイスに１つ以上のメディアレコメンデーションを出力するように構成された例示的なコンピューティングシステムの例示的なオペレーションを示すフローチャートである。図１のシステム１および図２のレコメンデーションサーバシステム６０の文脈の範囲内で図４のオペレーション２００〜２５０について以下で説明する。例えば、レコメンデーションサーバシステム６０のモジュール６２，６４および６６は、図４のオペレーション２００〜２５０を実行するようにプロセッサ７０のうちの少なくとも１つによって動作可能であり得る。
【０１０４】
動作時、レコメンデーションサーバシステム６０は、位置履歴に基づいて、モバイルコンピューティングデバイス１０のユーザに関連付けられるコンテンツ閲覧位置２を判断し得る（２００）。例えば、デバイスコンテキストモジュール６２は、特定の期間中に居住地住所の位置がユーザの位置履歴にたびたび出現することに基づいて、コンテンツ閲覧位置２に対応するモバイルコンピューティングデバイス１０のユーザの家の位置を推測してもよい。デバイスコンテキストモジュール６２は、メディア出力デバイス８の位置履歴に基づいて、メディア出力デバイス８がほとんどの場合ユーザの家の位置（例えばコンテンツ閲覧位置２）に位置し、したがって、ユーザの家におけるメディア出力デバイス８の位置がコンテンツ閲覧位置に対応すると判断してもよい。
【０１０５】
レコメンデーションサーバシステム６０は、ユーザに関連付けられるコンテンツ閲覧位置に位置するメディア出力デバイスを特定し（２１０）、モバイルコンピューティングデバイス１０が現時点でメディア出力デバイス８に近接してコンテンツ閲覧位置２に位置しているか否かを特定し得る（２２０）。例えば、レコメンデーションサーバシステム６０のデバイスコンテキストモジュール６２は、デバイス８と１０との間でやりとりされるブルートゥース信号の信号強度を判断し、（例えばメートル当たりの閾値デシベル値よりも大きな）強い信号であれば、デバイスコンテキストモジュール６２は、デバイス８および１０が互いに近接して配列されていると判断してもよい。
【０１０６】
モバイルコンピューティングデバイス１０が現時点でメディア出力デバイス８に近接してコンテンツ閲覧位置２に位置していると判断した後、レコメンデーションサーバシステム６０は、メディア出力デバイス８の複数の特徴を判断し得る（２３０）。例えば、レコメンデーションサーバシステム６０は、メディア出力デバイス８が電源オン状態で動作しているか否か、および、メディア出力デバイス８が表示するためにメディアコンテンツを出力しているか否かを判断してもよい。
【０１０７】
レコメンデーションサーバシステム６０は、複数の特徴に基づいて、現時点におけるユーザに対する１つ以上のメディアレコメンデーションを判断し得る（２４０）。例えば、レコメンデーションモジュール６６は、メディア出力デバイス８が電源がオンにされてＶＯＤメディアコンテンツの出力を控えているのでコンピューティングデバイス１０のユーザがテレビを見ていると推測した後で、１つ以上のテレビタイプのメディアレコメンデーションを判断してもよい。逆に、レコメンデーションモジュール６６は、メディア出力デバイス８が電源がオンにされて表示するためにＶＯＤメディアコンテンツを出力しているのでユーザがＶＯＤサービスを見ていると推測した後で、１つ以上のＶＯＤサービスタイプのメディアレコメンデーションを判断してもよい。
【０１０８】
レコメンデーションサーバシステム６０は、１つ以上のメディアレコメンデーションの表示を、モバイルコンピューティングデバイス１０に送信するために出力し得る（２５０）。例えば、レコメンデーションモジュール６６は、１つ以上のメディアレコメンデーションを含む通知データを電子メール、テキストメッセージ、インスタントメッセージなどとしてモバイルコンピューティングデバイス１０に出力することを通知ホストモジュール６４にさせるために、１つ以上のメディアレコメンデーションに関連する情報を含む表示（例えばデータ）を通知ホストモジュール６４に転送してもよい。モバイルコンピューティングデバイス１０のユーザは、１つ以上のメディアレコメンデーションの通知の受信をモバイルコンピューティングデバイス１０によって通知され得て、当該レコメンデーションに関連付けられる情報をディスプレイ（例えばディスプレイデバイス１２）で閲覧し得る。例えば、通知データは、現時点で放送されているテレビ番組についての少なくとも１つのレコメンデーション、現時点でビデオ・オン・デマンドサービスから入手可能なビデのについての少なくとも１つのレコメンデーション、または現時点でテレビサービスから入手可能なテレビチャネルについての少なくとも１つのレコメンデーションに関する情報を含み得る。
【０１０９】
いくつかの例では、レコメンデーションサーバシステム６０は、モバイルコンピューティングデバイス１０のユーザに関連付けられる１つ以上の通信を取得し、ユーザに関連付けられる通信内に含まれる情報に基づいて１つ以上のメディアレコメンデーションを判断し得る。１つ以上の通信は、カレンダ通信、電子メール通信、テキストメッセージ交換通信またはソーシャルメディア通信のうちの少なくとも１つを含み得る。言い換えれば、ユーザプロフィール情報データストア６８Ｂは、通信情報、および／または、メディアコンテンツ、嗜好、ユーザの興味などに言及する電子メール、テキストメッセージ、インスタントメッセージ、音声メールなどの一部を含み得る。レコメンデーションモジュール６６は、１つ以上のレコメンデーションを、１つ以上の通信に基づくユーザの嗜好に基づかせ得る。
【０１１０】
いくつかの例では、レコメンデーションサーバシステム６０は、１つ以上のメディアレコメンデーションの受信をモバイルコンピューティングデバイス１０のユーザに通知するための通知を生成するようにモバイルコンピューティングデバイス１０を構成するためのコマンドを、モバイルコンピューティングデバイス１０に送信するために少なくとも出力することによって、１つ以上のメディアレコメンデーションの表示を出力し得る。別の言い方をすれば、レコメンデーションモジュール６６は、１つ以上のメディアレコメンデーションの生成および受信についてコンピューティングデバイス１０のユーザに通知するための通知を出力するようにモバイルコンピューティングデバイス１０を構成／命令することを通知ホストモジュール６４にさせ得る。
【０１１１】
いくつかの例では、レコメンデーションサーバシステム６０は、モバイルコンピューティングデバイス１０が現時点でメディア出力デバイス８に近接せずにコンテンツ閲覧位置に位置していると判断したことに応答して、１つ以上のメディアレコメンデーションの表示をモバイルコンピューティングデバイス１０に送信するために出力することを控え得る。言い換えれば、コンピューティングデバイス１０がコンテンツ閲覧位置２にあると判断したにも関わらず、メディア出力デバイス８がコンテンツ閲覧位置２に位置していないことをレコメンデーションサーバシステム６０が検出すると、レコメンデーションモジュール６６は、メディア出力デバイス８がなければユーザはメディアコンテンツを見ていそうにないので、コンピューティングデバイス１０のユーザが恐らくメディアレコメンデーションを受信したいと思っていないだろうと推測し得る。その結果、レコメンデーションモジュール６６は、メディアレコメンデーションの生成を控え得る。
【０１１２】
いくつかの例では、レコメンデーションサーバシステム６０は、モバイルコンピューティングデバイス１０が、ユーザに関連付けられるコンテンツ閲覧位置に位置していない第２のメディア出力デバイスに近接していると判断したことに応答して、１つ以上のメディアレコメンデーションの表示をモバイルコンピューティングデバイス１０に送信するために出力することを控え得る。言い換えれば、レコメンデーションモジュール６６は、ユーザが位置履歴に基づくコンテンツ閲覧位置のうちの１つではない位置にいるときには、ユーザが恐らく当該位置に位置するいかなるメディア出力デバイスも制御することはない、または制御したいと思っていないだろうと予測し得る。その結果、レコメンデーションモジュール６６は、メディアレコメンデーションの生成を控え得る。
【０１１３】
図５は、本開示の１つ以上の局面に従って例示的なコンピューティングシステムから受信された１つ以上のメディアレコメンデーションのグラフィック表示を出力するように構成された例示的なモバイルコンピューティングデバイスの例示的なオペレーションを示すフローチャートである。図１のシステム１の文脈の範囲内で図５のオペレーション３００〜３２０について以下で説明する。例えば、モバイルコンピューティングデバイス１０のモジュール２０，２２および２４Ａは、図５のオペレーション３００〜３２０を実行するようにモバイルコンピューティングデバイス１０のプロセッサのうちの少なくとも１つによって動作可能であり得る。
【０１１４】
動作時、モバイルコンピューティングデバイス１０は、現時点でユーザに関連付けられるコンテンツ閲覧位置２に位置している間に、モバイルコンピューティングデバイスに関連付けられるデバイス識別子を、ユーザに関連付けられるコンテンツ閲覧位置２に位置するメディア出力デバイス８に送信するために出力し得る（３００）。例えば、コンピューティングデバイス１０は、デバイス８および１０がコンテンツ閲覧位置２に配列されている間に、メディア出力デバイス８とのブルートゥース通信セッションを確立してもよい。デバイス１０によってデバイス８に出力されるデバイス識別子は、コンピューティングデバイス１０を特定し得る。
【０１１５】
モバイルコンピューティングデバイス１０に関連付けられるデバイス識別子を出力したことに応答して、モバイルコンピューティングデバイス１０は、現時点におけるユーザに対する１つ以上のメディアレコメンデーションの表示をレコメンデーションサーバシステム６０から受信し得る。１つ以上のメディアレコメンデーションは、メディア出力デバイス８に関連付けられる複数の特徴に基づき得て、当該複数の特徴は、メディア出力デバイス８が現時点でオン状態で動作しているか否かの表示、および、メディア出力デバイス８が現時点で表示するためにメディアコンテンツを出力しているか否かの表示を含む（３１０）。例えば、メディア出力デバイス８およびモバイルコンピューティングデバイス１０が通信しており、モバイルコンピューティングデバイス１０が現時点でコンテンツ閲覧位置２に位置していると判断したことに応答して、レコメンデーションサーバシステム６０は、１つ以上のメディアレコメンデーションの表示を含む通知データを判断し、コンピューティングデバイス１０に送信するために出力してもよい。
【０１１６】
モバイルコンピューティングデバイス１０は、１つ以上のメディアレコメンデーションのグラフィック表示を表示するために出力し得る（３２０）。例えば、通知クライアントモジュール２２は、ネットワーク３０を介して送信される通知データをレコメンデーションサーバシステム６０から受信してもよい。通知ホストモジュール２２は、モバイルコンピューティングデバイス１０の画面で表示するために１つ以上のメディアレコメンデーションを提供することをＵＩモジュール２０にさせるためのグラフィックコンテンツおよびコマンドをＵＩモジュール２０に送り得る。
【０１１７】
いくつかの例では、レコメンデーションサーバシステム６０から受信された１つ以上のメディアレコメンデーションは、さらに、デバイス識別子を搬送する通信信号の強度（例えばデバイス８と１０との間のブルートゥース通信信号の強度）に基づく。いくつかの例では、モバイルコンピューティングデバイス１０は、メディアコンテンツデバイスによって提供されるべきメディアコンテンツを、メディア出力デバイス８に送信するために出力し得る。レコメンデーションサーバシステム６０は、メディアコンテンツデバイス８によって提供されるべきメディアコンテンツをモバイルコンピューティングデバイスが出力したときにモバイルコンピューティングデバイスのユーザに関連付けられる個人の嗜好に基づいて、レコメンデーションサーバシステム６０がコンピューティングデバイス１０に提供する１つ以上のメディアレコメンデーションを判断し得る。言い換えれば、メディアレコメンデーションは、ユーザおよびモバイルコンピューティングデバイス１０がメディア出力デバイス８の制御下にあるとレコメンデーションサーバシステムが推測したときのユーザの個人の嗜好に基づき得る。
【０１１８】
いくつかの例では、モバイルコンピューティングデバイス１０は、メディアコンテンツデバイス８によって提供されるべきメディアコンテンツをメディア出力デバイス８に送信するために出力することを控え得る。レコメンデーションサーバシステム６０によって提供される１つ以上のメディアレコメンデーションは、モバイルコンピューティングデバイス１０がメディアコンテンツデバイス８によって提供されるべきメディアコンテンツを出力することを控えるときのモバイルコンピューティングデバイス１０のユーザに関連付けられる集団の嗜好に基づき得る。言い換えれば、メディアレコメンデーションは、ユーザおよびモバイルコンピューティングデバイス１０がメディア出力デバイス８の制御下にないとレコメンデーションサーバシステムが推測したときのユーザの集団の嗜好に基づき得る。
【０１１９】
いくつかの例では、モバイルコンピューティングデバイス１０は、１つ以上のメディアレコメンデーションの受信をモバイルコンピューティングデバイス１０のユーザに通知するための通知を生成するようにモバイルコンピューティングデバイス１０を構成するためのコマンドをレコメンデーションサーバシステム６０から受信し得る。１つ以上のメディアレコメンデーションのグラフィック表示は、コマンドの受信に応答して表示するために出力され得る。言い換えれば、通知クライアントモジュール２２は、レコメンデーションサーバシステム６０によって生成される１つ以上のメディアレコメンデーションに関する情報を含む通知データを受信し得る。通知クライアントモジュール２２は、通知タイプ警報（例えば、音、ＬＥＤフラッシュ、グラフィックバナー出力など）を出力して、１つ以上のメディアレコメンデーションが受信されたことをモバイルコンピューティングデバイス１０のユーザに知らせることをＵＩモジュール２０にさせ得る。
【０１２０】
このようにして、本明細書に記載されているコンピューティングシステムなどのコンピューティングシステムは、モバイルコンピューティングデバイスのユーザにメディアレコメンデーションをタイムリーに提供することができる。ユーザがユーザのコンテンツ閲覧位置にいて、場合によってはメディアコンテンツを見ているとコンピューティングシステムが判断すると、メディアレコメンデーションが適時に提供されることができる。メディアレコメンデーションは、ユーザの嗜好および／または現時点でユーザによって見られているメディアの現在にタイプに合わせられ得る。このようにして、ユーザは、メディアコンテンツを見たいと思っているときにユーザの興味を引くであろうテレビおよび／またはＶＯＤプログラムを手動で検索する必要がなくなるように思われる。
【０１２１】
項目１
方法であって、
モバイルコンピューティングデバイスのユーザに関連付けられるコンテンツ閲覧位置を、上記ユーザに関連付けられる位置履歴に基づいて、コンピューティングシステムによって判断するステップと、
上記コンテンツ閲覧位置に位置するメディア出力デバイスを上記コンピューティングシステムによって特定するステップとを備え、上記メディア出力デバイスは、ディスプレイデバイスに関連付けられ、上記ディスプレイデバイスは、上記メディア出力デバイスによって提供されるメディアコンテンツおよび１つ以上のテレビサービスを表示するように構成され、上記方法はさらに、
上記モバイルコンピューティングデバイスが現時点で上記メディア出力デバイスに近接して上記コンテンツ閲覧位置に位置していると判断したことに応答して、上記現時点における上記ユーザに対する１つ以上のメディアレコメンデーションを、上記メディア出力デバイスの複数の特徴に基づいて、上記コンピューティングシステムによって判断するステップを備え、上記複数の特徴は、上記メディア出力デバイスが上記現時点でオン状態で動作しているか否かの表示、および、上記メディア出力デバイスが上記現時点で上記ディスプレイデバイスで表示するために上記メディアコンテンツを出力しているか、上記現時点で上記ディスプレイデバイスで表示するために上記メディアコンテンツを出力することを控えているかの表示を含み、上記方法はさらに、
上記モバイルコンピューティングデバイスが上記現時点で上記メディア出力デバイスに近接して上記コンテンツ閲覧位置に位置していると判断したことに応答して、上記１つ以上のメディアレコメンデーションの表示を、上記モバイルコンピューティングデバイスに送信するために、上記コンピューティングシステムによって出力するステップを備える、方法。
【０１２２】
項目２
１つ以上のメディアコンテンツサービスに関連付けられる情報をメディアサーバから上記コンピューティングシステムによって取得するステップをさらに備え、上記１つ以上のメディアレコメンデーションは、上記１つ以上のメディアコンテンツサービスに関連付けられ、かつ、上記メディアサーバから取得される上記情報によって指定されるメディアコンテンツに基づいて判断される、項目１に記載の方法。
【０１２３】
項目３
上記メディア出力デバイスが上記現時点で上記ディスプレイデバイスで表示するために上記メディアコンテンツを出力していると判断したことに応答して、上記メディアコンテンツが１つ以上のビデオ・オン・デマンドサービスに関連付けられると上記コンピューティングシステムによって判断するステップと、
上記１つ以上のメディアレコメンデーションを上記１つ以上のビデオ・オン・デマンドサービスに基づいて上記コンピューティングシステムによって判断するステップとをさらに備える、項目１〜２のいずれか１項に記載の方法。
【０１２４】
項目４
上記１つ以上のビデオ・オン・デマンドサービスからの特定のビデオ・オン・デマンドサービスを、上記現時点で上記ディスプレイデバイスで表示するために出力されている上記メディアコンテンツに関連付けられるメタデータから、上記コンピューティングシステムによって特定するステップと、
上記１つ以上のメディアレコメンデーションを上記特定のビデオ・オン・デマンドサービスに基づいて上記コンピューティングシステムによって判断するステップとをさらに備える、項目３に記載の方法。
【０１２５】
項目５
上記メディア出力デバイスが上記現時点で上記オン状態で動作していると判断したこと、および、上記メディア出力デバイスが上記現時点で上記ディスプレイデバイスで表示するために上記メディアコンテンツを出力することを控えていると判断したことに応答して、上記１つ以上のテレビサービスが上記現時点で上記ディスプレイデバイスで表示するために上記メディアコンテンツを出力していると上記コンピューティングシステムによって判断するステップと、
上記１つ以上のメディアレコメンデーションを上記１つ以上のテレビサービスに基づいて上記コンピューティングシステムによって判断するステップとをさらに備える、項目１〜４のいずれか１項に記載の方法。
【０１２６】
項目６
上記モバイルコンピューティングデバイスから上記メディア出力デバイスにおいて受信される通信信号の強度を上記コンピューティングデバイスによって判断するステップと、
上記通信信号の上記強度が閾値を満たすと判断したことに応答して、上記モバイルコンピューティングデバイスが現時点で上記メディア出力デバイスに近接して上記コンテンツ閲覧位置に位置していると上記コンピューティングシステムによって判断するステップとをさらに備える、項目１〜５のいずれか１項に記載の方法。
【０１２７】
項目７
上記メディア出力デバイスが上記現時点で上記モバイルコンピューティングデバイスから上記メディアコンテンツを受信していると判断したことに応答して、上記１つ以上のメディアレコメンデーションを、上記モバイルコンピューティングデバイスの上記ユーザに関連付けられる個人の嗜好に基づいて、上記コンピューティングシステムによって判断するステップをさらに備える、項目１〜６のいずれか１項に記載の方法。
【０１２８】
項目８
上記メディア出力デバイスが上記現時点で上記モバイルコンピューティングデバイス以外の少なくとも１つのコンピューティングデバイスから上記メディアコンテンツを受信していると判断したことに応答して、上記１つ以上のメディアレコメンデーションを、上記モバイルコンピューティングデバイスの上記ユーザに関連付けられる集団の嗜好に基づいて、上記コンピューティングシステムによって判断するステップをさらに備える、項目１〜７のいずれか１項に記載の方法。
【０１２９】
項目９
コンピューティングシステムであって、
少なくとも１つのプロセッサと、
少なくとも１つのモジュールとを備え、上記少なくとも１つのモジュールは、
モバイルコンピューティングデバイスのユーザに関連付けられるコンテンツ閲覧位置を、上記ユーザに関連付けられる位置履歴に基づいて判断するように上記少なくとも１つのプロセッサによって動作可能であり、
上記ユーザに関連付けられる上記コンテンツ閲覧位置に位置するメディア出力デバイスを特定するように上記少なくとも１つのプロセッサによって動作可能であり、上記メディア出力デバイスは、ディスプレイデバイスに関連付けられ、上記ディスプレイデバイスは、上記メディア出力デバイスによって提供されるメディアコンテンツおよび１つ以上のテレビサービスを表示するように構成され、上記少なくとも１つのモジュールはさらに、
上記モバイルコンピューティングデバイスが現時点で上記メディア出力デバイスに近接して上記コンテンツ閲覧位置に位置していると判断したことに応答して、上記現時点における上記ユーザに対する１つ以上のメディアレコメンデーションを、上記メディア出力デバイスの複数の特徴に基づいて判断するように上記少なくとも１つのプロセッサによって動作可能であり、上記複数の特徴は、上記メディア出力デバイスが上記現時点でオン状態で動作しているか否かの表示、および、上記メディア出力デバイスが上記現時点で上記ディスプレイデバイスで表示するためにメディアコンテンツを出力しているか、上記現時点で上記ディスプレイデバイスで表示するために上記メディアコンテンツを出力することを控えているかの表示を含み、上記少なくとも１つのモジュールはさらに、
上記モバイルコンピューティングデバイスが上記現時点で上記メディア出力デバイスに近接して上記コンテンツ閲覧位置に位置していると判断したことに応答して、上記１つ以上のメディアレコメンデーションの表示を、上記モバイルコンピューティングデバイスに送信するために出力するように上記少なくとも１つのプロセッサによって動作可能である、コンピューティングシステム。
【０１３０】
項目１０
上記１つ以上のメディアレコメンデーションは、
上記現時点で上記１つ以上のテレビサービスから放送されているテレビ番組についての少なくとも１つのレコメンデーション、
上記現時点で上記メディア出力デバイスからアクセス可能なビデオ・オン・デマンドサービスから入手可能なビデオについての少なくとも１つのレコメンデーション、または
上記現時点で上記１つ以上のテレビサービスから入手可能なテレビチャネルについての少なくとも１つのレコメンデーションを備える、項目９に記載のコンピューティングシステム。
【０１３１】
項目１１
上記少なくとも１つのモジュールは、上記モバイルコンピューティングデバイスの上記ユーザに関連付けられる１つ以上の通信を取得するように上記少なくとも１つのプロセッサによってさらに動作可能であり、上記１つ以上の通信は、カレンダ通信、電子メール通信、テキストメッセージ交換通信またはソーシャルメディア通信のうちの少なくとも１つを備え、
上記少なくとも１つのモジュールは、上記ユーザに関連付けられる上記通信内に含まれる情報に基づいて上記１つ以上のメディアレコメンデーションを判断するように上記少なくとも１つのプロセッサによってさらに動作可能である、項目９〜１０のいずれか１項に記載のコンピューティングシステム。
【０１３２】
項目１２
上記少なくとも１つのモジュールは、上記１つ以上のメディアレコメンデーションの受信を上記モバイルコンピューティングデバイスのユーザに通知するための通知を生成するように上記モバイルコンピューティングデバイスを構成するためのコマンドを、上記モバイルコンピューティングデバイスに送信するために少なくとも出力することによって、上記１つ以上のメディアレコメンデーションの表示を出力するように上記少なくとも１つのプロセッサによってさらに動作可能である、項目９〜１１のいずれか１項に記載のコンピューティングシステム。
【０１３３】
項目１３
上記少なくとも１つのモジュールは、上記モバイルコンピューティングデバイスが上記現時点で上記メディア出力デバイスに近接せずに上記コンテンツ閲覧位置に位置していると判断したことに応答して、上記１つ以上のメディアレコメンデーションの上記表示を上記モバイルコンピューティングデバイスに送信するために出力することを控えるように上記少なくとも１つのプロセッサによってさらに動作可能である、項目９〜１２のいずれか１項に記載のコンピューティングシステム。
【０１３４】
項目１４
上記メディア出力デバイスは、第１のメディア出力デバイスであり、上記少なくとも１つのモジュールは、上記モバイルコンピューティングデバイスが上記ユーザに関連付けられる上記コンテンツ閲覧位置に位置していない第２のメディア出力デバイスに近接していると判断したことに応答して、上記１つ以上のメディアレコメンデーションの上記表示を上記モバイルコンピューティングデバイスに送信するために出力することを控えるように上記少なくとも１つのプロセッサによってさらに動作可能である、項目９〜１３のいずれか１項に記載のコンピューティングシステム。
【０１３５】
項目１５
上記少なくとも１つのモジュールは、上記メディア出力デバイスが上記現時点で上記モバイルコンピューティングデバイスから上記メディアコンテンツを受信していると判断したことに応答して、上記１つ以上のメディアレコメンデーションを、上記モバイルコンピューティングデバイスの上記ユーザに関連付けられる個人の嗜好に基づいて判断するように上記少なくとも１つのプロセッサによってさらに動作可能である、項目９〜１４のいずれか１項に記載のコンピューティングシステム。
【０１３６】
項目１６
方法であって、
現時点でユーザに関連付けられるコンテンツ閲覧位置に位置している間に、モバイルコンピューティングデバイスに関連付けられるデバイス識別子を、上記ユーザに関連付けられる上記コンテンツ閲覧位置に位置するメディア出力デバイスに送信するために、上記モバイルコンピューティングデバイスによって出力するステップを備え、上記メディア出力デバイスは、ディスプレイデバイスに関連付けられ、上記ディスプレイデバイスは、上記メディア出力デバイスによって提供されるメディアコンテンツおよび１つ以上のテレビサービスを表示するように構成され、上記方法はさらに、
上記モバイルコンピューティングデバイスに関連付けられる上記デバイス識別子を出力したことに応答して、上記現時点における上記ユーザに対する１つ以上のメディアレコメンデーションの表示をコンピューティングシステムから上記モバイルコンピューティングシステムによって受信するステップを備え、上記１つ以上のメディアレコメンデーションは、上記メディア出力デバイスに関連付けられる複数の特徴に基づき、上記複数の特徴は、上記メディア出力デバイスが上記現時点でオン状態で動作しているか否かの表示、および、上記メディア出力デバイスが上記現時点で上記ディスプレイデバイスで表示するためにメディアコンテンツを出力しているか、または上記現時点で上記ディスプレイデバイスで表示するために上記メディアコンテンツを出力することを控えているかの表示を含み、上記方法はさらに、
上記１つ以上のメディアレコメンデーションのグラフィック表示を、表示するために上記モバイルコンピューティングデバイスによって出力するステップを備える、方法。
【０１３７】
項目１７
上記１つ以上のメディアレコメンデーションは、上記デバイス識別子を搬送する通信信号の強度にさらに基づく、項目１６に記載の方法。
【０１３８】
項目１８
上記ディスプレイデバイスで表示するために上記メディア出力デバイスによって出力されるべき上記メディアコンテンツを、上記メディア出力デバイスに送信するために、上記モバイルコンピューティングデバイスによって出力するステップをさらに備え、上記１つ以上のメディアレコメンデーションは、上記ディスプレイデバイスで表示するために上記メディアデバイスによって出力されるべき上記メディアコンテンツを上記モバイルコンピューティングデバイスが出力するときに上記モバイルコンピューティングデバイスの上記ユーザに関連付けられる個人の嗜好にさらに基づく、項目１６〜１７のいずれか１項に記載の方法。
【０１３９】
項目１９
上記ディスプレイデバイスで表示するために上記メディア出力デバイスによって出力されるべき上記メディアコンテンツを上記メディア出力デバイスに送信するために上記モバイルコンピューティングデバイスによって出力することを控えるステップをさらに備え、上記１つ以上のメディアレコメンデーションは、上記モバイルコンピューティングデバイスが上記ディスプレイデバイスで表示するために上記メディアコンテンツデバイスによって出力されるべき上記メディアコンテンツを出力することを控えるときに上記モバイルコンピューティングデバイスの上記ユーザに関連付けられる集団の嗜好にさらに基づく、項目１６〜１８のいずれか１項に記載の方法。
【０１４０】
項目２０
上記１つ以上のメディアレコメンデーションの受信を上記モバイルコンピューティングデバイスの上記ユーザに通知するための通知を生成するように上記モバイルコンピューティングデバイスを構成するためのコマンドを、上記コンピューティングシステムから上記モバイルコンピューティングデバイスによって受信するステップをさらに備え、上記１つ以上のメディアレコメンデーションの上記グラフィック表示は、上記コマンドの受信に応答して表示するために出力される、項目１６〜１９のいずれか１項に記載の方法。
【０１４１】
項目２１
コンピューティングシステムの少なくとも１つのプロセッサによって実行されたときに項目１〜８の方法のうちのいずれかを実行するように構成された命令を備えるコンピュータ読取可能な記憶媒体。
【０１４２】
項目２２
項目１〜８の方法のうちのいずれかを実行するための手段を備えるコンピューティングシステム。
【０１４３】
項目２３
コンピューティングデバイスの少なくとも１つのプロセッサによって実行されたときに項目１６〜２０の方法のうちのいずれかを実行するように構成された命令を備えるコンピュータ読取可能な記憶媒体。
【０１４４】
項目２４
項目１６〜２０の方法のうちのいずれかを実行するための手段を備えるコンピューティングデバイス。
【０１４５】
１つ以上の例では、記載されている機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組み合わせで実行されてもよい。ソフトウェアで実行される場合、当該機能は、コンピュータ読取可能な媒体に記憶されてもよく、またはコンピュータ読取可能な媒体を介して１つ以上の命令もしくはコードとして伝送されてハードウェアベースの処理ユニットによって実行されてもよい。コンピュータ読取可能な媒体は、データ記憶媒体などの有形媒体に対応するコンピュータ読取可能な記憶媒体、または、例えば通信プロトコルに従って１つの場所から別の場所へのコンピュータプログラムの転送を容易にする任意の媒体を含む通信媒体を含み得る。このように、コンピュータ読取可能な媒体は、一般に、（１）非一時的な有形のコンピュータ読取可能な記憶媒体、または、（２）信号もしくは搬送波などの通信媒体に対応し得る。データ記憶媒体は、本開示に記載されている技術を実現するための命令、コードおよび／またはデータ構造を検索するために１つ以上のコンピュータまたは１つ以上のプロセッサによってアクセス可能な任意の利用可能な媒体であってもよい。コンピュータプログラム製品は、コンピュータ読取可能な媒体を含み得る。
【０１４６】
一例として、このようなコンピュータ読取可能な記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭもしくは他の光ディスクストレージ、磁気ディスクストレージもしくは他の磁気ストレージデバイス、フラッシュメモリ、または、命令もしくはデータ構造の形態で所望のプログラムコードを記憶するために使用可能であり、かつ、コンピュータによってアクセス可能であるその他の媒体を備え得るが、これらに限定されるものではない。また、厳密には、任意の接続がコンピュータ読取可能な媒体と呼ばれる。例えば、同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者回線（digital subscriber line：ＤＳＬ）、または、赤外線、無線およびマイクロ波などの無線技術を用いて、ウェブサイト、サーバまたは他のリモートソースから命令が送信される場合、同軸ケーブル、光ファイバケーブル、ツイストペア、ＤＳＬ、または、赤外線、無線およびマイクロ波などの無線技術は、媒体の定義に含まれる。しかし、コンピュータ読取可能な記憶媒体およびデータ記憶媒体は、接続、搬送波、信号または他の一時的な媒体を含まず、その代わりに非一時的な有形の記憶媒体に向けられる、ということが理解されるべきである。本明細書で用いられるディスク（diskおよびdisc）は、コンパクトディスク（compact disc：ＣＤ）、レーザディスク、光ディスク、デジタル多用途ディスク（digital versatile disc：ＤＶＤ）、フロッピーディスクおよびブルーレイディスクを含み、diskは通常データを磁気的に再生するのに対して、discはレーザを用いて光学的にデータを再生する。上記の組み合わせもコンピュータ読取可能な媒体の範囲内に含まれるべきである。
【０１４７】
命令は、１つ以上のデジタル信号プロセッサ（digital signal processor：ＤＳＰ）、汎用マイクロプロセッサ、特定用途向け集積回路（application specific integrated circuit：ＡＳＩＣ）、フィールド・プログラマブル・ロジック・アレイ（field programmable logic array：ＦＰＧＡ）、または他の同等の集積回路もしくは個別論理回路などの１つ以上のプロセッサによって実行され得る。したがって、本明細書で用いられる「プロセッサ」という用語は、上記の構造または本明細書に記載されている技術を実現するのに好適なその他の構造のいずれかを指すことができる。また、いくつかの局面では、本明細書に記載されている機能は、専用のハードウェアおよび／またはソフトウェアモジュール内に設けられてもよい。また、技術は、１つ以上の回路または論理要素において完全に実現されてもよい。
【０１４８】
本開示の技術は、無線ハンドセット、集積回路（integrated circuit：ＩＣ）またはＩＣセット（例えばチップセット）を含む幅広い種類のデバイスまたは装置において実現されてもよい。開示されている技術を実行するように構成されたデバイスの機能的局面を強調するために、さまざまなコンポーネント、モジュールまたはユニットが本開示に記載されているが、必ずしもさまざまなハードウェアユニットによる実現を必要とするものではない。むしろ、上記のように、さまざまなユニットは、好適なソフトウェアおよび／またはファームウェアとともに、ハードウェアユニットに組み合わせられてもよく、または、上記の１つ以上のプロセッサを含む相互に動作可能なハードウェアユニットの集まりによって提供されてもよい。
【０１４９】
さまざまな例について説明してきた。これらのおよび他の例は、以下の特許請求の範囲の範囲内である。
【図１】
0006263651.tif 000002
【図２】
0006263651.tif 000003
【図３】
0006263651.tif 000004
【図４】
0006263651.tif 000005
【図５】
0006263651.tif 000006