特許第6553211号(P6553211)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ グーグル インコーポレイテッドの特許一覧

<>
  • 特許6553211-デバイス間での通知の転送 図000002
  • 特許6553211-デバイス間での通知の転送 図000003
  • 特許6553211-デバイス間での通知の転送 図000004
  • 特許6553211-デバイス間での通知の転送 図000005
  • 特許6553211-デバイス間での通知の転送 図000006
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6553211
(24)【登録日】2019年7月12日
(45)【発行日】2019年7月31日
(54)【発明の名称】デバイス間での通知の転送
(51)【国際特許分類】
   G06F 3/0484 20130101AFI20190722BHJP
   G06F 3/0488 20130101ALI20190722BHJP
   G06F 13/00 20060101ALI20190722BHJP
【FI】
   G06F3/0484 120
   G06F3/0488
   G06F13/00 520A
【請求項の数】16
【全頁数】19
(21)【出願番号】特願2017-556680(P2017-556680)
(86)(22)【出願日】2016年7月28日
(65)【公表番号】特表2018-534642(P2018-534642A)
(43)【公表日】2018年11月22日
(86)【国際出願番号】US2016044500
(87)【国際公開番号】WO2017039898
(87)【国際公開日】20170309
【審査請求日】2018年3月29日
(31)【優先権主張番号】14/839,860
(32)【優先日】2015年8月28日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
(74)【代理人】
【識別番号】110001195
【氏名又は名称】特許業務法人深見特許事務所
(72)【発明者】
【氏名】ゴールドスミス,ベンジャミン
(72)【発明者】
【氏名】バラスブラマニアン,サンソッシュ
(72)【発明者】
【氏名】チェン,ジェニファー・シェン−ミン
(72)【発明者】
【氏名】クッシャー,アレクサンダー・フリードリッヒ
【審査官】 酒井 優一
(56)【参考文献】
【文献】 米国特許出願公開第2014/0173026(US,A1)
【文献】 特表2011−516936(JP,A)
【文献】 特開平10−124417(JP,A)
【文献】 国際公開第2015/063879(WO,A1)
【文献】 米国特許出願公開第2015/0177970(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/0484
G06F 3/0488
G06F 13/00
WPI
(57)【特許請求の範囲】
【請求項1】
コンピュータにより実現される方法であって、
ユーザアカウントに関連付けられた第1のコンピューティングデバイスで、表示のために、通知を提供するステップと、
前記ユーザアカウントに関連付けられた第2のコンピューティングデバイスに前記通知を移動させるためのユーザジェスチャーの指示を受信するステップとを備え、前記第2のコンピューティングデバイスは前記第1のコンピューティングデバイスから離れており、前記方法はさらに、
前記ユーザジェスチャーの前記指示に応答して、およびユーザとのやりとりなしで、前記第2のコンピューティングデバイスでの表示のために前記通知を前記第2のコンピューティングデバイスに提供し、前記通知がもはや前記第1のコンピューティングデバイスで表示されないように前記通知を前記第1のコンピューティングデバイスから除去するステップを備える、方法。
【請求項2】
通知サービスで、前記第1のコンピューティングデバイス上で動作しているアプリケーションに関連付けられた遠隔アプリケーションサーバから前記通知を受信するステップと、
前記アプリケーションおよび前記第1のコンピューティングデバイスについての予め定められた登録情報に基づいて、前記通知を前記第1のコンピューティングデバイスに提供するステップとをさらに備え、
前記ユーザジェスチャーの前記指示を受信するステップは、前記第1のコンピューティングデバイスから、前記通知の少なくとも一部と前記第2のコンピューティングデバイスの識別情報とを受信するステップを備え、
前記通知は、受信された前記第2のコンピューティングデバイスの前記識別情報と、前記第2のコンピューティングデバイスについての予め定められた登録情報とに基づいて、前記第2のコンピューティングデバイスに提供される、請求項1に記載のコンピュータにより実現される方法。
【請求項3】
前記通知サービスで前記通知を格納するステップと、
前記通知サービスで前記通知を前記第1のコンピューティングデバイスに関連付けるステップとをさらに備え、
前記通知の前記少なくとも一部を受信するステップは、前記通知についての通知識別子を受信するステップを備え、
前記通知を前記第2のコンピューティングデバイスに提供するステップは、前記通知サービスで前記通知を前記第2のコンピューティングデバイスに関連付けるステップを備える、請求項2に記載のコンピュータにより実現される方法。
【請求項4】
前記通知を前記第1のコンピューティングデバイスから除去するステップは、前記通知サービスで前記通知と前記第1のコンピューティングデバイスとの関連性を除去するステップを備える、請求項3に記載のコンピュータにより実現される方法。
【請求項5】
前記通知は、アプリケーションコンテンツを備え、前記方法はさらに、
前記アプリケーションコンテンツを表示できる、前記第2のコンピューティングデバイス上で動作している1つ以上のアプリケーションの説明を、前記第1のコンピューティングデバイスへの前記通知とともに提供するステップを備え、
前記通知を前記第2のコンピューティングデバイスに提供するステップは、前記第1のコンピューティングデバイスから、前記第2のコンピューティングデバイス上で動作している前記1つ以上のアプリケーションのうちの1つの選択されたアプリケーションを受信するステップを備え、前記通知は、前記選択されたアプリケーションの指示とともに前記第2のコンピューティングデバイスに提供される、請求項2に記載のコンピュータにより実現される方法。
【請求項6】
前記第1のコンピューティングデバイスで、前記通知を、1つ以上の他のそれぞれのコンピューティングデバイスに前記通知を移動させるための1つ以上のグラフィカル制御要素とともに表示するステップをさらに備え、前記1つ以上の他のそれぞれのコンピューティングデバイスは前記第2のコンピューティングデバイスを備え、
第2のコンピューティングデバイスに前記通知を移動させるためのユーザジェスチャーの指示を受信するステップは、前記第2のコンピューティングデバイスに対応する、前記グラフィカル制御要素のうちの1つの選択されたグラフィカル制御要素が起動されるという指示を受信するステップを備える、請求項1〜5のいずれか1項に記載のコンピュータにより実現される方法。
【請求項7】
前記第1のコンピューティングデバイスから離れた通知サービスから、前記1つ以上の他のそれぞれのコンピューティングデバイスの一覧を受信するステップと、
前記グラフィカル制御要素を前記通知とともに表示するステップとをさらに備え、前記グラフィカル制御要素の各々は、前記1つ以上の他のそれぞれのコンピューティングデバイスのうちのそれぞれのコンピューティングデバイスの表現である、請求項6に記載のコンピュータにより実現される方法。
【請求項8】
前記ユーザジェスチャーは、前記通知の前記表示に関連付けられた前記第1のコンピューティングデバイスのディスプレイスクリーンの一部の上でのフィンガースワイプを備え、前記フィンガースワイプは、前記通知の少なくとも一部の下から前記1つ以上のグラフィカル制御要素をあらわにする、請求項6に記載のコンピュータにより実現される方法。
【請求項9】
前記グラフィカル制御要素のうちの前記1つの選択されたグラフィカル制御要素は、前記グラフィカル制御要素のうちの前記1つの選択されたグラフィカル制御要素の表示時に前記フィンガースワイプが解除されると、起動される、請求項8に記載のコンピュータにより実現される方法。
【請求項10】
前記通知は、ソフトウェアアプリケーションの少なくとも一部の実行を求める要求である、請求項1〜9のいずれか1項に記載のコンピュータにより実現される方法。
【請求項11】
1つ以上のプロセッサと、
命令が格納されたメモリ媒体とを備える、システムであって、
前記命令は、実行されると、前記1つ以上のプロセッサが、
ユーザアカウントで認証された第1のコンピューティングデバイスで、表示のために、通知を提供し、
前記ユーザアカウントに関連付けられた第2のコンピューティングデバイスに前記通知を移動させる指示を受信するようにし、前記第2のコンピューティングデバイスは前記第1のコンピューティングデバイスから離れており、さらに、
前記指示に応答して、およびユーザとのやりとりなしで、前記第2のコンピューティングデバイスでの表示のために前記通知を前記第2のコンピューティングデバイスに提供し、前記通知を前記第1のコンピューティングデバイスから失効させるようにする、システム。
【請求項12】
前記命令は、実行されると、さらに、前記1つ以上のプロセッサが、
通知サービスで、前記第1のコンピューティングデバイス上で動作しているアプリケーションに関連付けられた遠隔アプリケーションサーバから前記通知を受信し、
前記アプリケーションおよび前記第1のコンピューティングデバイスについての予め定められた登録情報に基づいて、前記通知を前記第1のコンピューティングデバイスに送信するようにし、
ーザジェスチャーの前記指示を受信することは、前記第1のコンピューティングデバイスから、前記通知の少なくとも一部と前記第2のコンピューティングデバイスの識別情報とを受信することを備え、
前記通知を前記第2のコンピューティングデバイスに提供することは、受信された前記第2のコンピューティングデバイスの前記識別情報と、前記第2のコンピューティングデバイスについての予め定められた登録情報とに基づいて、前記通知を前記第2のコンピューティングデバイスに送信することを備える、請求項11に記載のシステム。
【請求項13】
前記命令は、実行されると、さらに、前記1つ以上のプロセッサが、
前記通知サービスで前記通知を格納し、
前記通知サービスで前記通知を前記第1のコンピューティングデバイスに関連付けるようにし、
前記通知の前記少なくとも一部を受信することは、前記通知についての通知識別子を受信することを備え、
前記通知を前記第2のコンピューティングデバイスに送信することは、前記通知サービスで前記通知を前記第2のコンピューティングデバイスに関連付けることを備える、請求項12に記載のシステム。
【請求項14】
前記通知を前記第1のコンピューティングデバイスから除去することは、前記通知サービスで前記通知と前記第1のコンピューティングデバイスとの関連性を除去することを備える、請求項13に記載のシステム。
【請求項15】
前記通知は、アプリケーションコンテンツを備え、前記命令、実行されると、さらに、前記1つ以上のプロセッサが、
前記アプリケーションコンテンツを表示できる、前記第2のコンピューティングデバイス上で動作している1つ以上のアプリケーションの説明を、前記第1のコンピューティングデバイスへの前記通知とともに送信することを備え、
前記通知を前記第2のコンピューティングデバイスに提供することは、
前記第1のコンピューティングデバイスから、前記第2のコンピューティングデバイス上で動作している前記1つ以上のアプリケーションのうちの1つの選択されたアプリケーションを受信することと、
前記通知を、前記選択されたアプリケーションの指示とともに前記第2のコンピューティングデバイスに送信することとを備える、請求項12に記載のシステム。
【請求項16】
1以上のプロセッサによって実行されることにより、前記1以上のプロセッサに請求項1〜9のいずれか1項に記載の方法を実現させるための指示を含む、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本技術は一般に、コンピュータ関連アプリケーションに、およびコンピュータ関連アプリケーションから提供される通知に関する。
【背景技術】
【0002】
背景
ソーシャルメディアに関連するアプリケーションを含む多くのソフトウェアアプリケーションは、ユーザ通知を提供する。これらの通知はユーザに、興味深いメッセージがユーザのために受信されたこと、または、ユーザにとって興味深いコンテンツまたは社会活動を、ユーザが関与するソーシャルストリーム、フォーラム、アプリケーション、または他のメディアが入手できるようになったことを知らせてもよい。ユーザは、通知を読み、または開いて、通知に関連付けられたメッセージ、コンテンツ、または社会活動についての知識を深めてもよい。場合によっては、ユーザは、通知をさらに見直すことなく却下するオプションを有していてもよい。
【発明の概要】
【課題を解決するための手段】
【0003】
概要
本技術は、複数のコンピューテイングデバイス間で通知を転送するためのシステム、およびコンピュータにより実現される方法を提供する。1つ以上の実現化例では、コンピュータにより実現される方法は、ユーザアカウントに関連付けられた第1のコンピューティングデバイスで、表示のために、通知を提供するステップと、ユーザアカウントに関連付けられた第2のコンピューティングデバイスに通知を移動させるためのユーザジェスチャーの指示を受信するステップとを備え、第2のコンピューティングデバイスは第1のコンピューティングデバイスから離れており、方法はさらに、ユーザジェスチャーの指示に応答して、およびユーザとのやりとりなしで、第2のコンピューティングデバイスでの表示のために通知を第2のコンピューティングデバイスに提供し、通知がもはや第1のコンピューティングデバイスで表示されないように通知を第1のコンピューティングデバイスから除去するステップを備える。他の局面は、コンピュータにより実現される方法の実現のための対応するシステム、機器、およびコンピュータプログラム製品を含む。
【0004】
1つ以上の実現化例では、システムは、1つ以上のプロセッサと、命令が格納されたメモリ媒体とを備える。命令は、実行されると、1つ以上のプロセッサが、ユーザアカウントで認証された第1のコンピューティングデバイスで、表示のために、通知を提供し、ユーザアカウントに関連付けられた第2のコンピューティングデバイスに通知を移動させる指示を受信するようにし、第2のコンピューティングデバイスは第1のコンピューティングデバイスから離れており、さらに、指示に応答して、およびユーザとのやりとりなしで、第2のコンピューティングデバイスでの表示のために通知を第2のコンピューティングデバイスに提供し、通知を第1のコンピューティングデバイスから失効させるようにする。他の局面は、前述のシステムの実現のための対応する機器、方法、およびコンピュータプログラム製品を含む。
【0005】
1つ以上の実現化例では、機械読取可能媒体は命令を含み、命令は、実行されると、方法を行ない、方法は、ユーザアカウントに関連付けられた第1のコンピューティングデバイスで、表示のために、通知を提供するステップと、ユーザアカウントに関連付けられた第2のコンピューティングデバイスに通知を移動させるためのユーザジェスチャーの指示を受信するステップとを備え、第2のコンピューティングデバイスは第1のコンピューティングデバイスから離れており、方法はさらに、ユーザジェスチャーの指示に応答して、およびユーザとのやりとりなしで、第2のコンピューティングデバイスでの表示のために通知を第2のコンピューティングデバイスに提供し、通知がもはや第1のコンピューティングデバイスで表示されないように通知を第1のコンピューティングデバイスから除去するステップを備える。
【0006】
本技術の他の構成は、本技術のさまざまな構成が実例として示され説明される以下の詳細な説明から、当業者には容易に明らかとなるであろう、ということが理解される。理解されるように、本技術は、本技術の範囲からまったく逸脱することなく、他の構成および異なる構成が可能であり、そのいくつかの詳細はさまざまな他の点で変更が可能である。したがって、図面および詳細な説明は本質的に例示的であると見なされるべきであり、限定的であると見なされるべきではない。
【0007】
添付図面を参照して、詳細な説明を行なう。
【図面の簡単な説明】
【0008】
図1】複数のコンピューテイングデバイス間で通知を転送するための例示的なシステムの図である。
図2】複数のコンピューテイングデバイス間で通知を転送するための例示的なコンポーネントおよびデータフローを示す図である。
図3】例示的なツールバーと例示的な通知リストとを含む、例示的なユーザインターフェイスを示す図である。
図4】複数のコンピューテイングデバイス間で通知を転送するための例示的なプロセスのフロー図である。
図5】複数のコンピューテイングデバイス間での通知の転送に関連して使用される例示的な電子システムを示す図である。
【発明を実施するための形態】
【0009】
詳細な説明
以下に述べる詳細な説明は、本技術のさまざまな構成の説明として意図されており、本技術が実践され得る構成のみを表わすよう意図されてはいない。添付図面はここに援用され、詳細な説明の一部を構成する。詳細な説明は、本技術の完全な理解を提供する目的のために、特定の詳細を含む。しかしながら、本技術はここに述べる特定の詳細に限定されず、これらの特定の詳細なしで実践され得る、ということは、当業者には明白かつ明確であろう。場合によっては、本技術の概念を不明瞭にしないように、周知の構造およびコンポーネントはブロック図の形で示される。
【0010】
本技術は、ユーザが、第1のデバイスで受信された通知を、後に第2のデバイスで読むために第1のデバイスから第2のデバイスに転送すること、または却下することを可能にする。さまざまな局面によれば、ユーザは、複数のデバイスをユーザアカウントに登録してもよい。各デバイス上にインストールされたアプリケーションも、当該アプリケーションによって、または当該アプリケーションに提供された通知がユーザアカウントを介してデバイスに発送され得るように、ユーザアカウントに登録されてもよい。この点に関し、ユーザアカウントに関連付けられた任意のコンピューティングデバイスでの表示のために、通知が提供されてもよい。通知は、たとえば、通知に関連付けられたアプリケーション、または、ユーザのデバイスのオペレーティングシステムによって提供される仮想デスクトップによって表示されてもよい。
【0011】
通知が第1のデバイスで表示されると、ユーザは、通知を読むかまたは通知を却下するかを選択してもよい。いくつかの局面では、通知は、通知をスクリーンから移動させて消すための、通知に対応するディスプレイスクリーンの一部の上でのフィンガースワイプなどによる第1のタイプのユーザジェスチャーによって、完全に却下されてもよい。本技術によれば、ユーザはまた、第2のタイプのユーザジェスチャーを介して、ユーザアカウントに関連付けられた第2のコンピューティングデバイスに通知を転送してもよい。1つ以上の実現化例では、第2のタイプのユーザジェスチャーは、ユーザアカウントに関連付けられた異なるデバイスについての選択肢をあらわにするために、表示された通知を部分的にスワイプすることを含んでいてもよい。以下により説明されるように、ユーザは通知を右にスワイプして、通知を受信するための利用可能なデバイスをあらわにしてもよい。ユーザは、フィンガースワイプアクションを停止し、次に、ユーザが通知を転送したいデバイスに対応する、あらわにされた選択肢を手動で選択してもよい。これに代えて、ユーザは所望の選択肢でスワイプアクションを停止し、自分の指をスクリーンから上げることによって最も最近あらわにされた選択肢をトリガしてもよい。
【0012】
第2のタイプのユーザジェスチャーと、通知が提供されるべきデバイスの選択とに応答して、通知は、さらなるユーザ介入なく、選択されたコンピューティングデバイスに関連付けられる。通知は次に、通知がもはや第1のコンピューティングデバイスによって表示されないように、第1のコンピューティングデバイスから除去されてもよい。ユーザが第2のコンピューティングデバイスとやりとりすると、転送された通知は、あたかもそれがデバイスに直接送信されたかのように表示されてもよい。加えて、またはこれに代えて、通知は、ユーザに前の転送を知らせる何らかの情報を提供してもよい。
【0013】
1つ以上の実施形態では、本技術は、ユーザが、通知に関連付けられたアプリケーションの実行を異なるデバイスに転送することを可能にする。たとえば、通知に関連付けられたあるコンテンツを見ることを選択する際、オペレーティングシステムはユーザに、コンテンツを表示または実行可能なアプリケーションのリストから選択するよう促してもよい。選択肢のうちの1つは、第2のデバイス上で動作しているアプリケーションでコンテンツを開くことを含んでいてもよい。このオプションが選択される場合、コンテンツを開くための通知が第2のデバイスに転送される。第2のデバイスが使用される場合、ユーザは、コンテンツが第2のデバイス上で開かれるよう指定されたことを通知されるであろう。また、ユーザは、コンテンツが第2のデバイス上で開かれることを、通知を介して確認してもよい。
【0014】
図1は、本技術の1つ以上の局面に従った、複数のコンピューテイングデバイス間で通知を転送するための例示的なシステム100の図である。システム100は、1つ以上のコンピューティングデバイス101、102(たとえば、スマートフォン、タブレットまたはノートブックコンピュータ、パーソナルコンピュータ、PDAなど)と、1つ以上の集中型サーバ103と、遠隔ストレージ104(たとえばデータベース)とを含んでいてもよい。
【0015】
さまざまな実現化例によれば、コンピューティングデバイス101および102は、ユーザアカウント105に結び付けられてもよい。したがって、ユーザ106は、ユーザアカウント105で認証されることによって、それぞれのデバイス101、102のある特徴を使用するよう認可される。ユーザアカウント105は、たとえば、クラウドベースのまたはウェブベースのユーザアカウントであってもよく、もしくは、企業アカウント(たとえばLDAPアカウント)であってもよく、複数のデバイス用のユニバーサルアカウントとして機能してもよい。この点に関し、ユーザアカウントに関連して格納された情報は、第3のコンピューティングデバイス上、たとえば、(たとえば「データクラウド」内の)サーバ103上に集中的に位置していてもよい。サーバ103は、たとえば第1のコンピューティングデバイス101および第2のコンピューティングデバイス102に、ネットワーク107(たとえばLAN、WAN、WiFi、セルラーネットワーク、またはインターネット)を通して動作可能に接続されてもよい。遠隔ストレージ104は、ユーザアカウント105に関連した情報を格納してもよい。サーバ103および遠隔ストレージ104の機能性は、同じ物理サーバ上で実現されてもよく、または、複数のサーバ中に分散されてもよい。また、遠隔ストレージ104は、リレーショナルデータベース、オブジェクト指向型データベース、ファイル構造、テキストベースの記録、または他の形態のデータレポジトリといった任意の形態を取ってもよい。
【0016】
したがって、ユーザアカウント105またはユーザアカウント105に関連付けられたソフトウェアアプリケーションに関連する通知が受信されると、通知は、ユーザアカウントから、コンピューティングデバイス101およびコンピューティングデバイス102を含む「アカウントにリンクされた」デバイスのうちのいずれかに発送されてもよい。同様に、通知または通知に関連付けられたデータが、コンピューティングデバイス101またはコンピューティングデバイス102上に受信、入力、または格納されると、通知および/またはデータは、サーバ103上の中心に位置するユーザアカウントに自動的に複製されるかまたは同一場所に位置してもよい。
【0017】
コンピューティングデバイス101および102、サーバ103、およびストレージ104間のさまざまな接続は、有線または無線接続を通して行なわれてもよい。コンピューティングデバイス101および102は、規定されたエリア内で同一場所に位置してもよい。たとえば、これらのデバイスは、同じLANまたはWiFiネットワークに接続されてもよい。コンピューティングデバイス101および102は、ユーザの自宅と職場といった異なる場所にあってもよい。さまざまな局面によれば、コンピューティングデバイス101および102は、たとえばサーバ103によって提供されるウェブアプリケーションを含む1つ以上のソフトウェアプリケーションとのやりとりのために、1つ以上のユーザインターフェイス108a、108bをロードして実行するように構成されてもよい。ユーザインターフェイス108は、デスクトップまたはモバイルオペレーティングシステムによって提供されるインターフェイス、もしくは、デバイス上で実行され、オペレーティングシステムによって管理されるスタンドアロンアプリケーション(たとえば、ウェブブラウザまたはウェブ対応アプリケーション)によって提供されるインターフェイスであってもよい。さらに説明されるように、各デバイスのユーザインターフェイスは、デバイスまたはユーザアカウント105上で動作しているアプリケーションに提供される、または当該アプリケーションによって提供される通知を受信し、表示してもよい。
【0018】
一例では、通知は、第1のコンピューティングデバイス101上で動作しているユーザインターフェイス108aでの表示のために、コンピューティングデバイス101で提供されてもよい。ユーザ106は、通知が第2のコンピューティングデバイス102に移動される(たとえば、転送される、または再配置される)べきであることを指示するために、(たとえば、ユーザジェスチャーまたはポインタのやりとりを介して)ユーザインターフェイスとやりとりしてもよい。ユーザとのやりとりに応答して、通知は、第2のコンピューティングデバイス102のユーザインターフェイス108bでの表示のために、第2のコンピューティングデバイス102に提供されてもよい。通知は次に、通知がもはや第1のコンピューティングデバイスで表示できないように、(たとえばユーザアカウントにおいて)第1のコンピューティングデバイス102から自動的に切り離されてもよい。
【0019】
図2は、本技術の1つ以上の局面に従った、複数のコンピューテイングデバイス間で通知を転送するための例示的なコンポーネントおよびデータフローを示す。通知サービス202は、プッシュ通知を、それらの通知を受信するために登録されたアプリケーションを有するデバイス101、102に伝搬してもよい。各デバイス(たとえば、デバイス101または102)は、通知サービスとの接続を確立し、この接続を通して通知を受信する。この接続は、持続接続であってもよい。登録されたアプリケーションのプロバイダは、それらのクライアントアプリケーション向けの着信データを監視している間、通知サービス202に接続する。あるアプリケーションについての新規データが到着すると、プロバイダは通知を準備して通知サービス202に送信し、通知サービス202は通知をターゲットデバイスにプッシュする。
【0020】
各コンピューティングデバイス上で動作している(たとえば、実行されている、走っている、など)アプリケーションについての通知を受信するために、各コンピューティングデバイス(101、102)は、関連するアプリケーションを通知サービス202に登録してもよく、通知サービス202は、それぞれのデバイスから離れたサーバ103上で動作していてもよい。サーバ103は、デバイス上の各アプリケーションをトークンに関連付けてもよく、トークンは次に、通知をアプリケーションに送信することを担当する遠隔アプリケーションサーバ204に提供される。トークンは遠隔アプリケーションサーバ204でユーザアカウントに登録され、通知がユーザアカウントのユーザに送信されるべき場合には、通知とトークンとが通知サービス202に送信され、トークンは通知を送信するべきデバイスおよび/またはユーザを通知サービス202に知らせる。この開示の目的のために、遠隔アプリケーションサーバ204上のユーザアカウントは、ユーザアカウント105と同じであってもなくてもよい。
【0021】
通知サービス202は、遠隔アプリケーションサーバ204から、第1のコンピューティングデバイス101上で動作しているアプリケーションに関連付けられた通知を受信してもよい。通知サービス202は、当該アプリケーションおよび第1のコンピューティングデバイス101についての予め定められた登録情報に基づいて、通知を第1のコンピューティングデバイス101に送信する。上述のように、登録情報は、デバイス101、アプリケーション間の関連性、ならびに、遠隔アプリケーションサーバ204から受信されたトークンを、デバイス、アプリケーション、および/またはユーザについて以前に生成されたトークンと整合させることであってもよい。
【0022】
通知サービス202は後に、ユーザアカウントに関連付けられた第2のコンピューティングデバイスに通知を移動させる指示を受信してもよい。第1のコンピューティングデバイス101上で動作しているユーザインターフェイスに関して後に説明されるように、この指示は、通知に関してユーザによって行なわれるジェスチャーまたは他のインタラクティブなアクションの結果であってもよい。指示を受信すると、第1のコンピューティングデバイス101は、第2のコンピューティングデバイス102への通知の転送を始動してもよい。この点に関し、通知サーバは、第1のコンピューティングデバイス101から、通知(または少なくともその一部)と、第2のコンピューティングデバイス102の識別情報とを受信してもよい。通知は次に、受信された第2のコンピューティングデバイス102の識別情報と、第2のコンピューティングデバイス102についての予め定められた登録情報とに基づいて、第2のコンピューティングデバイス102に送信されてもよい。1つ以上の実現化例では、通知サービス202は、そのような識別情報なしで通知を受信し、動作可能に接続された次のデバイスに通知が送出され得る(たとえば、次のデバイスがユーザアカウント105で認証されるとき)まで通知を保持してもよい。
【0023】
加えて、またはこれに代えて、通知サービス202は、登録されたデバイスに送出されるべき通知を格納し、ユーザアカウント105に関連付けられたユーザによって通知が永続的に却下されると通知を除去してもよい。1つ以上の実現化例では、各通知は、通知サービス202で、それぞれのデバイスおよび/またはユーザアカウントに関連付けられてもよい。たとえば、受信された通知は、通知サービス202で、第1のコンピューティングデバイス101に関連付けられてもよい。通知が第1のコンピューティングデバイス101から第2のコンピューティングデバイス102に転送されるよう指定された場合、その通知についての通知識別子が第1のコンピューティングデバイス101から受信されてもよく、通知識別子は、通知サービス202で格納された通知に索引付けするために使用されてもよい。通知サービス202は次に、通知を第2のコンピューティングデバイス102に関連付けて、関連性を格納してもよい。通知はまた、通知と第1のコンピューティングデバイス101との関連性を除去することによって、後に第1のコンピューティングデバイス101によって表示されないように除去されてもよい。
【0024】
1つ以上の実現化例では、通知は、予め定められたアプリケーションによって実行可能または表示可能であるアプリケーションコンテンツを含んでいてもよい。たとえば、通知は、特定の電子メールアプリケーション用にフォーマット化された電子メールコンテンツを含んでいてもよい。加えて、またはこれに代えて、通知は、ソーシャルネットワークアプリケーション用のフォーマットのコンテンツを含んでいてもよい。したがって、通知が開かれると、それが開かれたコンピューティングデバイスは、通知コンテンツを表示するために、通知に関連付けられたアプリケーションを開こうとしてもよい。この点に関し、オペレーティングシステムは、オペレーティングシステムによって管理され、通知コンテンツに関連付けられた1つ以上の予め定められたアプリケーションを表示して、ユーザに、通知を開いて表示するためにアプリケーションのうちの1つを選択するように促してもよい。
【0025】
ユーザアカウント105は、「アカウントにリンクされた」各デバイス上にインストールされたアプリケーションの一覧を用いて更新され、当該一覧を格納してもよい。この点に関し、通知が第1のコンピューティングデバイス101に送信される場合、サーバ103は、アプリケーションコンテンツを表示できる、第2のデバイス上で動作している1つ以上のアプリケーションの説明も送信してもよい。サーバ103は、第1のコンピューティングデバイス101から、アプリケーションのうちの1つの選択されたアプリケーションを受信し、次に、第2のコンピューティングデバイス102上で通知コンテンツを開くために、通知を、選択されたアプリケーションの指示とともに第2のコンピューティングデバイス102に送信してもよい。
【0026】
図3は、本技術の一局面に従った、例示的なツールバー304と例示的な通知リスト306とを含む、例示的なユーザインターフェイス302を示す。ユーザインターフェイス302は、クライアントコンピューティングデバイス101、102上(たとえば、インターフェイス108aまたは108b上)に表示されてもよい。したがって、ユーザインターフェイス302は、たとえば、1つ以上の位置認識コンピューティングデバイスが内蔵されるかまたは取付けられた、スマートフォン、GPSナビゲーションデバイス、またはパーソナルコンピュータ、タブレットコンピュータ、PDA、テレビまたは他の表示装置などの上に表示されてもよい。ユーザインターフェイス302は、(たとえば仮想デスクトップとしての)オペレーティングシステムと、もしくは、ウェブブラウザ308またはソーシャルネットワークアプリケーションなどのアプリケーションのために一体化されてもよい。
【0027】
ツールバー304は、1つ以上のアプリケーション特徴の操作のための多くの仮想ボタンおよび他の制御機構を含んでいてもよい。ツールバー304は、起動されると、たとえば1つ以上のアプリケーションまたはアプリケーション特徴を含むユーザインターフェイス302の上に、ユーザインターフェイス302と少なくとも部分的に重複して通知リスト306を表示する、制御機構310を含んでいてもよい。いくつかの局面では、通知リスト306は浮いていてもよく、ユーザによって位置を変えられてもよい。通知リスト306は、たとえば、オペレーティングシステムによって提供され、または関連付けられたアプリケーション内に埋め込まれた命令(たとえば、ウェブページ内に埋め込まれたスクリプト言語)によって生成されてもよい。
【0028】
通知リスト306は、グラフィック要素としての1つ以上の通知312を含んでいてもよい。各通知312は、対応するアプリケーションによって、または対応するアプリケーション内に生成された最近の活動の結果として生成されてもよく、たとえば、活動を説明する通知コンテンツを含んでいてもよい。各通知312は、1つ以上の遠隔アプリケーションサーバ204から通知サービス202に提供され、通知サービス202は次に、デバイスに関連付けられたユーザアカウント105のユーザのために通知リスト306が表示されるデバイスに、通知を転送していてもよい。このように、通知リスト306は、ユーザアカウント105に関連付けられたユーザにとって興味深い活動のリストを提供してもよい。1つ以上の実現化例では、各通知312は、通知に関連付けられたアプリケーションへの視覚的なリンクとして機能し、(たとえば、通知308に対応するディスプレイスクリーンのエリアをクリックまたはタップすることによって)起動されると、アプリケーションが開かれ、アプリケーションによって通知が表示されるようになっていてもよい。
【0029】
本技術の局面によれば、各通知312は、たとえば第2のコンピューティングデバイス102を含む1つ以上の他のそれぞれのコンピューティングデバイスに通知を移動させるための1つ以上のグラフィカル制御要素314とともに表示されてもよい。第1のコンピューティングデバイス101は、通知サービス202から、ユーザアカウント105に関連付けられたコンピューティングデバイスの一覧を受信し、通知が転送され得るユーザアカウント105に関連付けられたコンピューティングデバイスのうちのそれぞれのコンピューティングデバイスを表わすために、グラフィカル制御要素の各々を通知とともに表示してもよい。ユーザは次に、現在のデバイス上の通知を見るために通知を起動してもよく、または、別のデバイスに通知を転送するためにグラフィカル制御要素314のうちの1つを起動してもよい。
【0030】
したがって、ユーザインターフェイス302および/または通知リスト306は、グラフィカル制御要素314によって表わされるコンピューティングデバイスのうちの1つへの通知の移動を始動するコードによって生成されてもよく、および/または、当該コードを含んでいてもよい。この点に関し、第1のコンピューティングデバイスは、第2のコンピューティングデバイス102に通知を移動させるためのユーザジェスチャーの指示を受信してもよい。ユーザジェスチャーは、第2のコンピューティングデバイス102に対応する、グラフィカル制御要素314のうちの1つのグラフィカル制御要素の選択を含んでいてもよい。選択された通知312aに対応する、ユーザジェスチャーおよび/またはグラフィカル制御要素314の選択に応答して、選択された通知は、第2のコンピューティングデバイス102での表示のために、第2のコンピューティングデバイス102に提供されてもよい。通知312aは次に、通知がもはや第1のコンピューティングデバイスで表示されないように、第1のコンピューティングデバイス101から却下または除去されてもよい。
【0031】
1つ以上の実現化例では、グラフィカル制御要素314は、通知312aをスワイプするなどのユーザジェスチャーの始動によって表示される。この点に関し、通知312は、ユーザジェスチャーによって、通知リストから、その開始位置から離れる方向に、たとえばxからxに向かう方向に視覚的に移動されてもよい。ジェスチャーは、通知の表示に関連付けられたディスプレイスクリーンの一部の上でのフィンガースワイプを含んでいてもよい。図3に示すように、通知312aの移動は、通知の視覚的表現がxからxに移動されるにつれて、通知の少なくとも一部の下からグラフィカル制御要素314をあらわにしてもよい。加えて、またはこれに代えて、グラフィカル制御要素314は、通知312aを選択すると(たとえば、それが対応するアプリケーションによって開かれる前に)表示されてもよく、または、通知を読んでいる間に選択可能となるなどのために通知上に表示されてもよい。
【0032】
第2のコンピューティングデバイス102に対応する、グラフィカル制御要素314のうちの1つの選択されたグラフィカル制御要素が起動されると、通知312aは第2のコンピューティングデバイス102に発送される。1つ以上の実現化例では、グラフィカル制御要素314は、たとえば、選択されたグラフィカル制御要素の表示時にフィンガースワイプが解除されると、起動されてもよい。
【0033】
図4は、本技術の局面に従った、複数のコンピューテイングデバイス間で通知を転送するための例示的なプロセス400のフロー図を示す。説明の目的のために、例示的なプロセス400は、図1図2、および図3のコンポーネントを参照してここに説明される。また、説明の目的のために、例示的なプロセス400のブロックは、連続してまたは直線的に生じるとしてここに説明される。しかしながら、例示的なプロセス400の複数のブロックは並行して生じてもよい。加えて、例示的なプロセス400のブロックは図示された順序で行なわれなくてもよく、および/または、例示的なプロセス400のブロックのうちの1つ以上は行なわれなくてもよい。
【0034】
図示された例示的なフロー図では、サーバ103および/または通知サービス202は、ユーザアカウント105に関連付けられた第1のコンピューティングデバイス101で、表示のために、通知312を提供する(402)。
【0035】
前述のように、通知312は、第1のコンピューティングデバイス101上で動作しているアプリケーションに関連付けられた遠隔アプリケーションサーバ204から、通知サービス202によって受信されてもよい。通知は次に、当該アプリケーションおよび第1のコンピューティングデバイスについての予め定められた登録情報に基づいて、第1のコンピューティングデバイス101に送信されてもよい。通知は次に、たとえば第2のコンピューティングデバイス102を含む1つ以上の他のそれぞれのコンピューティングデバイスに通知を移動させるための1つ以上のグラフィカル制御要素314とともに、ユーザインターフェイス(たとえば、ユーザインターフェイス108、302)に表示されてもよい。
【0036】
ユーザアカウントに関連付けられた第2のコンピューティングデバイスに通知を移動させるためのユーザジェスチャーの指示が受信される(404)。さまざまな局面によれば、第2のコンピューティングデバイス102は、第1のコンピューティングデバイス101から物理的に離れている。ジェスチャーの指示は、第2のコンピューティングデバイスに対応する、グラフィカル制御要素のうちの1つの選択されたグラフィカル制御要素が起動されるという指示を含んでいてもよい。
【0037】
ユーザジェスチャーの指示に応答して、およびユーザとのやりとりなしで、通知312は、第2のコンピューティングデバイス102のユーザインターフェイスによる(たとえばユーザインターフェイス302上での)表示のために、第2のコンピューティングデバイス102に提供される(406)。通知は、たとえば、第1のコンピューティングデバイス101から受信された第2のコンピューティングデバイスの識別情報と、サーバ103で格納された第2のコンピューティングデバイスについての予め定められた登録情報とに基づいて、通知を送信することによって、第2のコンピューティングデバイス102に提供されてもよい。
【0038】
1つ以上の実現化例では、通知が遠隔アプリケーションサーバ204から受信されると、通知と第1のコンピューティングデバイス102との関連性が、通知サービス202で(例えばストレージ104に)格納されてもよい。通知のコピーが次に、第1のコンピューティングデバイス101に送信されてもよい。第1のコンピューティングデバイス101でのユーザアクションの結果、通知が第2のコンピューティングデバイス102に提供されると、第1のコンピューティングデバイス101はサーバ103に、第2のコンピューティングデバイス102との関連性を更新するように合図してもよい。
【0039】
通知312は次に、通知がもはや第1のコンピューティングデバイス101で表示されないように、第1のコンピューティングデバイス101から除去される(408)。通知312は、ユーザによって読まれた後に、または、通知を却下するジェスチャーを介して、却下されてもよい。通知312はまた、第2のコンピューティングデバイス102への通知の転送時に却下されてもよい。
【0040】
上述の例示的なプロセス400における特徴の多く、および関連アプリケーションは、コンピュータ読取可能記憶媒体(コンピュータ読取可能媒体とも呼ばれる)に記録された一組の命令として特定されるソフトウェアプロセスとして実現されてもよい。これらの命令が1つ以上の処理部(たとえば、1つ以上のプロセッサ、プロセッサのコア、または他の処理部)によって実行されると、それらは処理部に、命令で指示されたアクションを行なわせる。コンピュータ読取可能媒体の例は、CD−ROM、フラッシュドライブ、RAMチップ、ハードドライブ、EPROMなどを含むものの、それらに限定されない。コンピュータ読取可能媒体は、単独では、無線でまたは有線接続を通して進む搬送波および電子信号を含まない。
【0041】
「ソフトウェア」という用語は、適切な場合、プロセッサによる処理のためにメモリに読込まれ得る、読出専用メモリに常駐するファームウェア、または磁気ストレージに格納されたアプリケーションを含むよう意図されている。また、いくつかの実現化例では、本開示の複数のソフトウェア局面は、本開示の別個のソフトウェア局面を残しつつ、より大きいプログラムの下位部分として実現され得る。いくつかの実現化例では、複数のソフトウェア局面はまた、別々のプログラムとして実現され得る。最後に、ここに説明されたソフトウェア局面をともに実現する別々のプログラムの任意の組合せは、本開示の範囲内にある。いくつかの実現化例では、ソフトウエアプログラムは、1つ以上の電子システム上で動作するためにインストールされた場合、ソフトウエアプログラムの動作を実行して行なう1つ以上の特定の機械実現化例を規定する。
【0042】
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとしても公知)は、コンパイラ型またはインタープリタ型言語、宣言型または手続き型言語を含む任意の形態のプログラミング言語で書くことができ、それは、スタンドアロンプログラムとしての、もしくは、コンピュータ環境での使用に好適なモジュール、コンポーネント、サブルーチン、オブジェクト、または他のユニットとしての形態を含む任意の形態でデプロイメントされ得る。コンピュータプログラムは、ファイルシステムにおけるファイルに対応してもよいが、対応しなくてもよい。プログラムは、他のプログラムまたはデータ(たとえば、マークアップ言語文書に格納された1つ以上のスクリプト)を保持するファイルの一部、対象プログラム専用の単一のファイル、もしくは、連係された複数のファイル(たとえば、1つ以上のモジュール、サブプログラム、またはコードの部分を格納するファイル)に格納され得る。コンピュータプログラムは、1つのコンピュータ上で、もしくは、1ヶ所に位置するかまたは複数箇所に分散されて通信ネットワークによって相互接続された複数のコンピュータ上で実行されるようにデプロイメントされ得る。
【0043】
図5は、本技術の1つ以上の局面に従った、複数のコンピューテイングデバイス間での通知の転送に関連して使用される例示的な電子システム500を示す図である。電子システム500は、コンピューティングデバイス100の動作に関連付けられたソフトウェア、もしくは、プロセス400の1つ以上の部分またはステップ、もしくは、図1〜4によって提供されたコンポーネントおよびプロセスの実行のためのコンピューティングデバイスであってもよい。さまざまな実現化例では、電子システム500は、第1のコンピューティングデバイス101または第2のコンピューティングデバイス102、またはサーバ103を代表していてもよい。この点に関し、電子システム500は、1つ以上のプロセッサが内蔵されるかまたは結合された、パーソナルコンピュータ、もしくは、タブレットコンピュータ、ラップトップ、スマートフォン、PDAなどのモバイルデバイス、もしくは、他のタッチスクリーンまたはテレビ、もしくは、無線接続性を有する任意の他の種類のコンピュータ関連電子デバイスであってもよい。
【0044】
電子システム500は、さまざまなタイプのコンピュータ読取可能媒体と、さまざまな他のタイプのコンピュータ読取可能媒体用のインターフェイスとを含んでいてもよい。図示された例では、電子システム500は、バス508と、処理部512と、システムメモリ504と、読出専用メモリ(read-only memory:ROM)510と、永続記憶装置502と、入力デバイスインターフェイス514と、出力デバイスインターフェイス506と、1つ以上のネットワークインターフェイス516とを含む。いくつかの実現化例では、電子システム500は、前述のさまざまなコンポーネントおよびプロセスの動作のための他のコンピューティングデバイスまたは回路を含んでいてもよく、もしくは、それらと一体化されてもよい。
【0045】
バス508は、電子システム500の多くの内部デバイスを通信可能に接続するすべてのシステムバス、周辺バス、およびチップセットバスをまとめて表わす。たとえば、バス508は、処理部512を、ROM510、システムメモリ504、および永続記憶装置502と通信可能に接続する。
【0046】
これらのさまざまなメモリユニットから、処理部512は、本開示のプロセスを実行するために、実行するべき命令および処理するべきデータを検索する。異なる実現化例では、処理部は、シングルプロセッサまたはマルチコアプロセッサであり得る。
【0047】
ROM510は、処理部512および電子システムの他のモジュールによって必要とされる静的データおよび命令を格納する。一方、永続記憶装置502は、読出および書込メモリデバイスである。このデバイスは、電子システム500がオフであっても命令およびデータを格納する不揮発性メモリユニットである。本開示のいくつかの実現化例は、(磁気または光ディスクおよびその対応するディスクドライブなどの)大容量記憶装置を、永続記憶装置502として使用する。
【0048】
他の実現化例は、(フロッピー(登録商標)ディスク、フラッシュドライブ、およびその対応するディスクドライブなどの)リムーバブル記憶装置を、永続記憶装置502として使用する。永続記憶装置502と同様に、システムメモリ504は読出および書込メモリデバイスである。しかしながら、記憶装置502とは異なり、システムメモリ504は、ランダムアクセスメモリなどの揮発性読出および書込メモリである。システムメモリ504は、プロセッサが実行時に必要とする命令およびデータの一部を格納する。いくつかの実現化例では、本開示のプロセスは、システムメモリ504、永続記憶装置502、および/またはROM510に格納される。これらのさまざまなメモリユニットから、処理部512は、いくつかの実現化例のプロセスを実行するために、実行するべき命令および処理するべきデータを検索する。
【0049】
バス508はまた、入力デバイスインターフェイス514および出力デバイスインターフェイス506に接続する。入力デバイスインターフェイス514は、ユーザが情報を通信し、電子システムへのコマンドを選択することを可能にする。入力デバイスインターフェイス514とともに使用される入力デバイスは、たとえば、英数字キーボードおよびポインティングデバイス(「カーソル制御デバイス」とも呼ばれる)を含む。出力デバイスインターフェイス506は、たとえば、電子システム500によって生成された画像の表示を可能にする。出力デバイスインターフェイス506とともに使用される出力デバイスは、たとえば、プリンタおよび表示装置、たとえば陰極線管(cathode ray tube:CRT)または液晶ディスプレイ(liquid crystal display:LCD)などを含む。いくつかの実現化例は、入力かつ出力デバイスとして機能するタッチスクリーンなどのデバイスを含む。
【0050】
最後に、図5に示すように、バス508はまた、ネットワークインターフェイス516を通して電子システム500をネットワーク(図示せず)に結合する。ネットワークインターフェイス516は、たとえば、無線アクセスポイント(たとえば、ブルートゥース(登録商標)またはWiFi)、もしくは、無線アクセスポイントに接続するための無線回路を含んでいてもよい。ネットワークインターフェイス516はまた、ローカルエリアネットワーク(「LAN」)、ワイドエリアネットワーク(「WAN」)、無線LAN、またはイントラネットなどのコンピュータのネットワーク、もしくは、インターネットなどのネットワークのネットワークの一部にコンピュータを接続するためのハードウェア(たとえば、イーサネット(登録商標)ハードウェア)を含んでいてもよい。電子システム500のうちのいずれかまたはすべてのコンポーネントは、本開示に関連して使用され得る。
【0051】
上述のこれらの機能は、コンピュータソフトウェア、ファームウェア、またはハードウェアで実現され得る。これらの手法は、1つ以上のコンピュータプログラム製品を使用して実現され得る。プログラマブルプロセッサおよびコンピュータは、モバイルデバイスに含まれ、またはモバイルデバイスとしてパッケージ化され得る。プロセスおよび論理フローは、1つ以上のプログラマブルプロセッサによって、および1つ以上のプログラマブル論理回路によって行なわれ得る。汎用および専用コンピューティングデバイスならびに記憶装置は、通信ネットワークを通して相互接続され得る。
【0052】
いくつかの実現化例は、コンピュータプログラム命令を機械読取可能またはコンピュータ読取可能媒体(これに代えて、コンピュータ読取可能記憶媒体、機械読取可能媒体、または機械読取可能記憶媒体と呼ばれる)に格納する、マイクロプロセッサ、ストレージおよびメモリなどの電子部品を含む。そのようなコンピュータ読取可能媒体のいくつかの例は、RAM、ROM、読出専用コンパクトディスク(CD−ROM)、書込可能コンパクトディスク(CD−R)、書換可能コンパクトディスク(CD−RW)、読出専用デジタル多用途ディスク(たとえば、DVD−ROM、2層DVD−ROM)、さまざまな書込可能/書換可能DVD(たとえば、DVD−RAM、DVD−RW、DVD+RWなど)、フラッシュメモリ(たとえば、SDカード、ミニSDカード、マイクロSDカードなど)、磁気および/またはソリッドステートハードドライブ、読出専用および書込可能ブルーレイ(登録商標)ディスク、超密度光ディスク、任意の他の光学媒体または磁気媒体、およびフロッピーディスクを含む。コンピュータ読取可能媒体は、少なくとも1つの処理部によって実行可能であって、さまざま動作を行なうための命令のセットを含むコンピュータプログラムを格納することができる。コンピュータプログラムまたはコンピュータコードの例は、コンパイラによって生成されるような機械コード、および、インタープリタを使用してコンピュータ、電子部品、またはマイクロプロセッサによって実行される、より高いレベルのコードを含むファイルを含む。
【0053】
上述の説明は、ソフトウェアを実行するマイクロプロセッサまたはマルチコアプロセッサを主に指しているが、いくつかの実現化例は、特定用途向け集積回路(application specific integrated circuit:ASIC)またはフィールドプログラマブルゲートアレイ(field programmable gate array:FPGA)などの1つ以上の集積回路によって行なわれる。いくつかの実現化例では、そのような集積回路は、回路自体の上に格納された命令を実行する。
【0054】
この明細書およびこの出願の任意の請求項で使用されるように、「コンピュータ」、「サーバ」、「プロセッサ」、および「メモリ」という用語はすべて、電子デバイスまたは他の技術的デバイスを指す。これらの用語は、人々、または人々のグループを除外する。明細書の目的のために、「表示」または「表示する」という用語は、電子デバイス上に表示することを意味する。この明細書およびこの出願の任意の請求項で使用されるように、「コンピュータ読取可能媒体」という用語はもっぱら、コンピュータによって読取可能な形態で情報を格納する有形の物理的対象に限定される。これらの用語は、任意の無線信号、有線ダウンロード信号、および任意の他の一時的信号を除外する。
【0055】
ユーザとのやりとりを提供するために、この明細書に説明された主題の実現化例は、情報をユーザに表示するための表示装置、たとえばCRT(陰極線管)またはLCD(液晶ディスプレイ)モニタと、ユーザがコンピュータに入力を提供できるようにするためのキーボードおよびポインティングデバイス、たとえばマウスまたはトラックボールとを有するコンピュータ上で実現され得る。ユーザとのやりとりを提供するために、他の種類のデバイスも使用され得る。たとえば、ユーザに提供されるフィードバックは、任意の形態の感覚フィードバック、たとえば視覚フィードバック、聴覚フィードバック、または触覚フィードバックであり得る。また、ユーザからの入力は、音響入力、音声入力、または触覚入力を含む任意の形態で受信され得る。加えて、コンピュータは、ユーザによって使用されているデバイスに文書を送信し、当該デバイスから文書を受信することによって、たとえば、ユーザのクライアントデバイス上のウェブブラウザから受信された要求に応答して、当該ウェブブラウザにウェブページを送信することによって、ユーザとやりとりできる。
【0056】
この明細書に説明された主題の実施形態は、たとえばデータサーバなどのバックエンドコンポーネント、もしくは、たとえばアプリケーションサーバなどのミドルウェアコンポーネント、もしくは、たとえばユーザがこの明細書に説明された主題の実現化例とやりとりできるようにするグラフィカルユーザインターフェイスまたはウェブブラウザを有するクライアントコンピュータなどのフロントエンドコンポーネント、もしくは、1つ以上のそのようなバックエンドコンポーネント、ミドルウェアコンポーネント、またはフロントエンドコンポーネントの任意の組合せを含む、コンピューティングシステムにおいて実現され得る。当該システムのコンポーネントは、たとえば通信ネットワークなどの任意の形態または媒体のデジタルデータ通信によって相互接続され得る。通信ネットワークの例は、ローカルエリアネットワーク(「LAN」)およびワイドエリアネットワーク(「WAN」)、インターネットワーク(たとえばインターネット)、および、ピアツーピア・ネットワーク(たとえばアドホック・ピアツーピア・ネットワーク)を含む。
【0057】
コンピューティングシステムは、クライアントとサーバとを含み得る。クライアントとサーバとは一般に互いから離れており、典型的には通信ネットワークを通してやりとりする。クライアントとサーバとの関係は、それぞれのコンピュータ上で実行されて互いにクライアントサーバ関係を有するコンピュータプログラムによって生じる。いくつかの実施形態では、サーバは、(たとえば、クライアントデバイスとやりとりしているユーザにデータを表示し、当該ユーザからユーザ入力を受信する目的のために)データ(たとえばHTMLページ)をクライアントデバイスに送信する。クライアントデバイスで生成されたデータ(たとえば、ユーザとのやりとりの結果)が、クライアントデバイスからサーバで受信され得る。
【0058】
当業者であれば、ここに説明されたさまざまな例示的なブロック、モジュール、要素、コンポーネント、方法、およびアルゴリズムが、電子ハードウェア、コンピュータソフトウェア、またはそれらの組合せとして実現されてもよい、ということを理解するであろう。ハードウェアおよびソフトウェアのこの互換性を例示するために、さまざまな例示的なブロック、モジュール、要素、コンポーネント、方法、およびアルゴリズムが、一般にそれらの機能性に関して上に説明されてきた。そのような機能性がハードウェアとして実現されるか、またはソフトウェアとして実現されるかは、特定のアプリケーションと、システム全体に課された設計制約とに依存する。当業者は、説明された機能性を、特定のアプリケーションごとにさまざまなやり方で実現してもよい。さまざまなコンポーネントおよびブロックは、本技術の範囲からまったく逸脱することなく、異なるように配置されてもよい(たとえば、異なる順序で配置されるか、または異なるやり方で分割されてもよい)。
【0059】
開示されたプロセスにおけるステップの特定の順序または階層構造は、例示的なアプローチの実例である、ということが理解される。設計の好みに基づいて、プロセスにおけるステップの特定の順序または階層構造が並べ替えられてもよいということが理解される。ステップのうちのいくつかは、同時に行なわれてもよい。添付の方法請求項は、さまざまなステップの要素をサンプル順序で提示しており、提示された特定の順序または階層構造に限定されるよう意図されてはいない。
【0060】
前述の説明は、どの当業者もここに説明されたさまざまな局面を実践できるようにするために提供される。前述の説明は本技術のさまざまな例を提供しており、本技術はこれらの例に限定されない。これらの局面へのさまざまな変更は当業者には容易に明らかになり、ここに規定された一般原理は他の局面に適用されてもよい。このため、請求項は、ここに示された局面に限定されるよう意図されてはおらず、請求項の文言と一致する全範囲が与えられるべきである。ここで、単数形の要素の言及は、特にそう明記されていない限り「たった1つ」を意味するよう意図されてはおらず、むしろ「1つ以上」を意味するよう意図されている。特に明記されない限り、「いくつかの」という用語は1つ以上を指す。男性代名詞(たとえば、「彼の」)は、女性および中性(たとえば、「彼女の」および「その」)を含み、逆もまた同様である。見出しおよび小見出しがある場合、それらは単に便宜上使用され、発明を限定しない。
【0061】
「ウェブサイト」という用語は、ここに使用されるように、1つ以上のウェブページ、ウェブ関連コンテンツをホストまたは格納するために使用される1つ以上のサーバなどを含む、ウェブサイトの任意の局面を含んでいてもよい。したがって、「ウェブサイト」という用語は、「ウェブページ」および「サーバ」という用語と交換可能に使用されてもよい。「〜するように構成された」、「〜するように動作可能である」、および「〜するようにプログラミングされた」という述語の単語は、主語の特定の有形または無形の変更を何ら意味しておらず、むしろ、交換可能に使用されるよう意図されている。たとえば、動作またはコンポーネントを監視し制御するように構成されたプロセッサは、プロセッサが動作を監視し制御するようにプログラミングされていること、または、プロセッサが動作を監視し制御するように動作可能であることも意味していてもよい。同様に、コードを実行するように構成されたプロセッサは、プロセッサがコードを実行するようにプログラミングされている、またはコードを実行するように動作可能であるとして解釈され得る。
【0062】
「局面」などの言葉は、そのような局面が本技術にとって不可欠であること、または、そのような局面が本技術の全構成に当てはまることを意味しない。ある局面に関する開示は、全構成または1つ以上の構成に当てはまってもよい。局面は、1つ以上の例を提供してもよい。「局面」などの言葉は、1つ以上の局面を指してもよく、逆もまた同様である。「実施形態」などの言葉は、そのような実施形態が本技術にとって不可欠であること、または、そのような実施形態が本技術の全構成に当てはまることを意味しない。ある実施形態に関する開示は、全実施形態または1つ以上の実施形態に当てはまってもよい。実施形態は、1つ以上の例を提供してもよい。「実施形態」などの言葉は、1つ以上の実施形態を指してもよく、逆もまた同様である。「構成」などの言葉は、そのような構成が本技術にとって不可欠であること、または、そのような構成が本技術の全構成に当てはまることを意味しない。ある構成に関する開示は、全構成または1つ以上の構成に当てはまってもよい。構成は、1つ以上の例を提供してもよい。「構成」などの言葉は、1つ以上の構成を指してもよく、逆もまた同様である。
【0063】
「例」という単語は「例または実例として機能する」ことを意味するために、ここに使用される。「例」としてここに説明されたどの局面または設計も、他の局面または設計よりも好ましい、もしくは有利である、とは必ずしも解釈されない。
【0064】
当業者には公知である、または後に公知になる、この開示全体にわたって説明されたさまざまな局面の要素とのすべての構造的および機能的均等物は、ここに引用により明確に援用されており、請求項によって包含されるよう意図されている。また、ここに開示されたことは何も、そのような開示が請求項に明確に記載されているかどうかにかかわらず、一般の人々に捧げられるよう意図されてはいない。請求項のどの要素も、要素が「〜するための手段」という言葉を使用して明確に記載されない限り、または、方法請求項の場合、要素が「〜するためのステップ」という言葉を使用して記載されない限り、米国特許法第112条第6段落の規定により解釈されるべきである。さらに、「含む」、「有する」などの用語が説明または請求項で使用される限りでは、そのような用語は、「備える」という用語と同様の態様で包括的であるよう意図されている。なぜなら、「備える」は、請求項で採用される場合、移行語として解釈されるためである。
図1
図2
図3
図4
図5