JP2018505573A - マルチエンドポイント対処可能通知 - Google Patents

マルチエンドポイント対処可能通知 Download PDF

Info

Publication number
JP2018505573A
JP2018505573A JP2017525085A JP2017525085A JP2018505573A JP 2018505573 A JP2018505573 A JP 2018505573A JP 2017525085 A JP2017525085 A JP 2017525085A JP 2017525085 A JP2017525085 A JP 2017525085A JP 2018505573 A JP2018505573 A JP 2018505573A
Authority
JP
Japan
Prior art keywords
notification
endpoint
endpoints
notifications
subscription
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2017525085A
Other languages
English (en)
Inventor
ウォルツ,カール
ウォロスキー,ハワード
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2018505573A publication Critical patent/JP2018505573A/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/224Monitoring or handling of messages providing notification on incoming messages, e.g. pushed notifications of received messages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • H04L51/046Interoperability with other network applications or services

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • User Interface Of Digital Computer (AREA)
  • Telephone Function (AREA)
  • Telephonic Communication Services (AREA)
  • Computer And Data Communications (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

対処可能通知サービスは、登録済みエンドポイント、たとえばスマートフォン、タブレット、およびPCと対話して、通知を複数のエンドポイントにわたって分配し効果的に管理できるようにする通知発行およびサブスクリプションシステムをサポートする。登録済みエンドポイントのアプリケーションは、他の登録済みエンドポイントがサブスクライブ可能な通知をシステムに発行することができる。サブスクライブ側エンドポイントで受信された通知は、ローカルハンドラを用いて、または発行側エンドポイントへのリモートセッションを実装することによって、ユーザがネイティブ体験として発行アプリケーションと対話できるように、完全に対処可能な方法で表示され提起される。【選択図】図7

Description

[0001] 通知は、典型的には、最新のニュースおよびアラートを配信するために、スマートフォン、タブレット、およびパーソナルコンピュータ(PC)などのデバイスのユーザに情報をリアルタイムで提供するために利用される。
[0002] この背景は、以下の概要および詳細な説明についての簡単な文脈を紹介するために与えられる。この背景は、特許請求された主題の範囲を決定する際の手助けとなることも、上記で提示された欠点または問題のいずれかまたは全てを解決する実装に、特許請求された主題を限定するものとみなされることも意図されていない。
[0003] 対処可能通知(actionable notification)サービスは、登録済みエンドポイント、たとえばスマートフォン、タブレット、およびPCと対話して、通知を複数のエンドポイントにわたって分配し効果的に管理できるようにする通知発行およびサブスクリプションシステムをサポートする。登録済みエンドポイントのアプリケーションは、他の登録済みエンドポイントがサブスクライブ可能な通知をシステムに発行することができる。サブスクライブ側エンドポイントで受信された通知は、ローカルハンドラを用いて、または発行側エンドポイントへのリモートセッションを実装することによって、ユーザがネイティブ体験として発行アプリケーションと対話することができるように、完全に対処可能な方法で表示され提起される。
[0004] 対処可能通知サービスは、エンドポイントサブスクリプション基準を設定するためのユーザインターフェース(UI)をサポートすることによって、複数のサブスクライブ側エンドポイントにわたって受信される通知をユーザが効率的に管理することを可能にするように構成される。たとえば、ユーザは、1日の特定の時刻に、もしくはエンドポイントが特定のネットワーク上にある場合に、またはエンドポイントが特定の位置にある場合に、エンドポイントへの通知を受諾または抑制することを選択することができる。また、ユーザがあるエンドポイントで提起された通知を破棄した場合、他のサブスクライブ側エンドポイントにおける通知もまた、重複した冗長な通知を排除するために、対処可能通知サービスにより破棄することができる。
[0005] 有利なことに、対処可能通知サービスは、ユーザ体験を向上しつつ、エンドポイントのリソース消費および伝送ネットワーク利用の制御および最適化も可能にする方法で通知を管理する方法をエンドポイントユーザに与える。たとえば、ユーザは、対処可能通知サービスと対話してサブスクリプション基準を選択して、特定のサブスクライブ側エンドポイントへの通知をいくつかの条件の下で抑制することによって、エンドポイント無線受信機に電力供給し画面を点灯して通知を表示するために電池寿命およびリソースが本来消費される場合に、それらのエンドポイントにおけるリソース消費を削減することができる。他のシナリオでは、ユーザは、Wi−Fiネットワーク上にあるサブスクライブ側エンドポイントにおいて通知を提起しつつ、セルラーデータネットワークへの接続のみを現在有し得る他のサブスクライブ側エンドポイントへの通知が抑制されるように、ネットワーク使用量の割り当てを決定することができる。
[0006] この概要は、詳細な説明において以下でさらに説明される概念から選択したものを簡略化した形式で紹介するために与えられる。この概要は、特許請求された主題の主要な特徴または必須の特徴を特定することも、特許請求された主題の範囲を決定する際の手助けとして使用されることも意図されていない。さらに、特許請求された主題は、本開示のいずれかの部分に記述されたいずれかまたは全ての欠点を解決する実装に限定されない。上述の主題が、コンピュータ制御される装置、コンピュータ処理、コンピューティングシステム、または製造品、たとえば1つまたは複数のコンピュータ可読記憶媒体として実装できることは理解されよう。これらおよび様々な他の特徴は、以下の詳細な説明を読み、関連する図面を概観することから明らかとなろう。
[0007]通信能力を有するエンドポイントが1つまたは複数のネットワークを介して対話する例示的な環境の図である。 [0008]エンドポイントにより利用され得る様々な例示的なアクセスネットワークの図である。 [0009]例示的なアクセスネットワーク属性の図である。 [0010]アプリケーション層、オペレーティングシステム(OS)層、およびハードウェア層を含む例示的な階層化アーキテクチャの図である。 [0011]対処可能通知クライアントならびに通知生成および処理アプリケーションにより公開されるアプリケーションプログラミングインターフェース(API)の図である。 [0012]エンドポイントが通知発行およびサブスクリプションシステムに登録される例示的な構成の図である。 [0013]発行側エンドポイントにより発行され、サブスクライブ側エンドポイントにより受信される対処可能通知の例示的な例の図である。 [0014]ペイロードおよびメタデータを含む対処可能通知の例示的な例の図である。 [0015]サブスクライブ側エンドポイントへの通知をフィルタリングするために対処可能通知サービスにより使用され得る例示的な入力の分類の図である。 [0016]対処可能通知サービスに対するユーザインターフェース(UI)によりサポートされる例示的な特徴および機能の図である。 [0017]対処可能通知が複数のサブスクライブ側エンドポイント間で共有される例示的な例の図である。 [0018]対処可能通知が一部のサブスクライブ側エンドポイント間で共有されつつ、他のサブスクライブ側エンドポイントで抑制される例示的な例の図である。 [0019]対処可能通知が複数のエンドポイントにわたって破棄される図である。 [0019]対処可能通知が複数のエンドポイントにわたって破棄される図である。 [0020]エンドポイントにおける着信VoIP(ボイスオーバーインターネットプロトコル)通話に関連する対処可能通知の図である。 [0021]対処可能通知を示すエンドポイントに表示される例示的なUIのスクリーンキャプチャである。 [0022]通知が対処された後にエンドポイント上に浮上する(surface)例示的なネイティブアプリケーション体験の図である。 [0023]リモートデスクトップを用いてサポートされるネイティブアプリケーション体験の図である。 [0024]例示的な対処可能通知シナリオの図である。 [0024]例示的な対処可能通知シナリオの図である。 [0025]対処可能通知サービスと、エンドポイント上のクライアントコンポーネントと、コンテンツプロバイダとの間の例示的な対話の図である。 [0026]本マルチエンドポイント対処可能通知を実装する場合に実施され得る例示的な方法の図である。 [0026]本マルチエンドポイント対処可能通知を実装する場合に実施され得る例示的な方法の図である。 [0026]本マルチエンドポイント対処可能通知を実装する場合に実施され得る例示的な方法の図である。 [0027]本マルチエンドポイント対処可能通知を実装するために部分的に使用され得るパーソナルコンピュータ(PC)などの例示的なコンピュータシステムの簡略化されたブロック図である。 [0028]本マルチエンドポイント対処可能通知を実装するために部分的に使用され得る例示的なシステムのブロック図である。 [0029]例示的なモバイルデバイスのブロック図である。 [0030]例示的なマルチメディアコンソールのブロック図である。
[0031] 図面において、同様の参照番号は同様の要素を示す。特に断りのない限り、要素は縮尺通りではない。図面に表示された特定のUIが、特定の実装の必要性に従って示されるものとは異なり得ることが強調される。UIは図面ではポートレートモードで示されているが、本構成はランドスケープモードを用いて実装することもできる。
[0032] 図1は、様々なユーザ105が、典型的には様々なアクセスネットワーク(参照番号112によって代表して示され、以下でさらに説明される)およびIP(インターネットプロトコル)通信ネットワーク115を含み得る1つまたは複数の通信ネットワークを介して対話することが可能な「エンドポイント」110と呼ばれるそれぞれのデバイスを利用する例示的な通信環境100を示す。IP通信ネットワーク115は、典型的には、IPベースの転送およびシグナリングを使用し、たとえば、モバイル事業者、企業、インターネットサービスプロバイダ(ISP)、電話サービスプロバイダ、データサービスプロバイダなどによりサポートされ得る。
[0033] IP通信ネットワーク115は、典型的には、エンドポイント110が1つまたは複数のコンテンツプロバイダ125により提供されるコンテンツにアクセスし、場合によっては対処可能通知サービス130にアクセスすることができるように、インターネットへの接続をサポートするインターフェースを含む。エンドポイント110およびIP通信ネットワーク115は、ピアツーピアおよび/またはサーバベースのプロトコルを用いたデバイス間通信を可能にするように構成することができる。デバイス間通信のサポートは、少なくとも部分的に、エンドポイント110上で動作する様々なアプリケーションを用いて提供することができる。
[0034] エンドポイント110は、様々な能力、たとえば音声およびビデオ通話およびメッセージングを提供し、典型的には、データ消費アプリケーション、たとえばインターネットブラウジングおよびマルチメディア(たとえば、音楽、ビデオなど)消費、ならびに様々な他の特徴をサポートすることができる。エンドポイント110は、ユーザが、音声および/またはマルチメディア(すなわちビデオ)通話の発信および受信を行い、メッセージング(たとえばテキスティング)を行い、データを利用するアプリケーションおよびアクセスサービスを使用し、ワールドワイドウェブを閲覧するなどのために利用することが多い、ユーザ機器、携帯電話、セルフォン、フィーチャーフォン、タブレットコンピュータ、およびスマートフォンなどを含むことができる。
[0035] しかしながら、代替タイプの電子エンドポイントデバイスもまた、通信能力を備えて構成され、IP通信ネットワーク115に接続可能な限り、通信環境100内で使用可能であることが想定される。そのような代替的エンドポイントは、ハンドヘルドコンピューティングデバイス、PDA(パーソナルデジタルアシスタント)、ポータブルメディアプレーヤー、ファブレットデバイス(すなわち、スマートフォン/タブレットデバイスの組み合わせ)、ウェアラブルコンピュータ、ナビゲーションデバイスたとえばGPS(全地球測位システム)システム、ラップトップPC(パーソナルコンピュータ)、デスクトップコンピュータ、マルチメディアコンソール、ゲーミングシステム、ネットワーク接続されたおよび/または遠隔制御のカメラなどを様々に含む。そのようなカメラは、たとえば、室内および自宅の監視カメラ、身体装着カメラ、ウェブカメラ、PCと共に使用される外部カメラ、タブレット、および他のコンピューティングデバイス、車両内のリモートカメラなどを含むことができる。以下の議論では、「エンドポイント」という用語の使用は、通信能力を備えて構成され、IP通信ネットワーク115へのIPアクセス能力を有する全てのデバイスを網羅するものとする。
[0036] 環境100における様々なエンドポイント110は、異なる特徴、機能および能力(本明細書では広く「特徴」と呼ばれる)をサポートすることができる。所与のエンドポイントでサポートされる特徴の一部は、他でサポートされるものと同様のものとすることができ、他の特徴は所与のエンドポイントに一意のものとすることができる。様々なエンドポイント110でサポートされる特徴間の重複および/または独自性の程度は、実装によって異なり得る。たとえば、一部のエンドポイント110は、タッチ制御、ジェスチャ認識、自然言語インターフェース、および音声コマンドをサポートすることができ、他はより制限されたUIを可能にすることができる。一部のエンドポイントは、ビデオ消費およびインターネットブラウジングをサポートすることができ、他のデバイスは、より制限されたメディア処理およびネットワークインターフェース特徴をサポートすることができる。
[0037] また、アクセサリデバイス114、たとえばリストバンドおよび他のウェアラブルデバイスが環境100に存在することができる。そのようなアクセサリデバイス114は、典型的には、Bluetooth(登録商標)およびUSB(ユニバーサルシリアルバス)などの通信プロトコルを用いてデバイス110と相互運用して、装着者の生理機能(たとえば心拍数、歩数、消費カロリーなど)および環境条件(温度、湿度、紫外線(UV)レベルなど)の監視、ならびに結合されたデバイス110からの通知の浮上などの機能をサポートするようになされる。
[0038] 図2は、異なるエンドポイントが異なるアクセスネットワークを使用し得る方法を例示的に示す。この例では、エンドポイント110の1つは、モバイル事業者によりサポートされ得るセルラーデータアクセスネットワーク205を使用する。第2のエンドポイント110は、DSL(デジタル加入者線:Digital Subscriber Line)オーバーPSTN(公衆交換電話網:Public Switched Telephone Network)インフラストラクチャを用いてIP通信ネットワーク115へのネットワーク接続を実装するアクセスネットワーク210を利用する。第3のエンドポイント110は、そのアクセスネットワーク215としてパブリックWi−Fiホットスポットを使用し、第4のエンドポイント110は、ブロードバンドイーサネット(イーサネットは登録商標)を特徴とするISPにより提供されるアクセスネットワーク220を使用する。ここに記載されたアクセスネットワークタイプが例示的であることが意図されていること、および様々な他のネットワークのタイプ(たとえば、衛星、短距離、ホワイトスペースなど)を利用して特定の実装のニーズを満たすこともできることが強調される。追加的に、場合によっては、所与のエンドポイントは、2つ以上のアクセスネットワークと接続を確立することが可能であり得る。たとえば、スマートフォンはいくつかの状況ではWi−Fiまたはセルラーデータを使用する能力を有することができる。
[0039] 異なるアクセスネットワークは、異なる様々な属性を有することができる。たとえば、図3に示されるように、所与のアクセスネットワーク112は、典型的には、一部のネットワークが典型的にはより高速であり(たとえばブロードバンドイーサネット)、他のもの(たとえばDSL)がより低速である、アクセスネットワークによって変化し得る帯域幅305などの関連する属性300を有する。サービス品質(QoS:Quality of Service)310は、一部のアクセスネットワークが特定のレベルの性能および/または可用性/信頼性を保証し、他のものが無保証のサービスを提供し得る、アクセスネットワークによって変化し得る他の属性である。一部のアクセスネットワーク、たとえばモバイルデータプランに関連するものは、月次のデータ限度に達すると帯域幅が抑制され得る可変のデータ速度および/または容量315を有することができる。経済的コスト、ローミングネットワーク利用、エンドポイント間のデータ共有などの側面を網羅するサービス利用規約320は、ネットワークおよびエンドポイントによって変化し得る他のアクセスネットワーク属性である。
[0040] マルチポイント対処可能通知体験は、所与のエンドポイント110でインスタンス化されるコンポーネントを用いて実装することができる。図4は、様々なアプリケーションおよび他のコンポーネントをサポートする例示的な階層化アーキテクチャ400を示す。アーキテクチャ400は典型的にはソフトウェアで実装されるが、ソフトウェア、ファームウェアおよび/またはハードウェアの組み合わせも場合によっては利用することができる。アーキテクチャ400は層状に構成され、アプリケーション層405、OS(オペレーティングシステム)層410、およびハードウェア層415を含む。ハードウェア層415は、エンドポイント110により使用される様々なハードウェア(たとえば、入力および出力デバイス、ネットワーキングおよび/または無線ハードウェアなど)の抽象化を上位の層に提供する。
[0041] この例示的な例におけるアプリケーション層405は、典型的なアプリケーション430(たとえば、ウェブブラウザ、音楽プレーヤー、電子メールアプリケーションなど)、ならびに通知を生成および/または処理可能な特定のアプリケーション440をサポートする。また、対処可能通知クライアント450は、この例ではアプリケーション層405でインスタンス化される。クライアント450は、典型的には、線460で示されるように、サービス130と対話して対処可能通知システムを実行するように構成される。
[0042] いくつかの実装では、対処可能通知サービス130は、API(アプリケーションプログラミングインターフェース)、たとえばREST(表現状態転送:Representational State Transfer)API465を公開して、通知アプリケーション440がサービス130と直接に対話できるようにすることができる。したがって、クライアント450は、場合によってはインストールされる必要がない場合があり、またはAPI465により公開されるメソッドおよび関数を補う働きをすることができる。通知アプリケーション440は、たとえば、セルラー、短距離(たとえばBluetoothなど)、IPベース、たとえばWi−Fiおよびイーサネット、公衆交換などを含む様々なネットワークタイプ上で、異なるプロトコル(たとえば、HTTP(ハイパーテキスト転送プロトコル)、SMS(ショートメッセージサービス)、SMTP(簡易メール転送プロトコル)など)を用いて動作することが可能な通知プッシュサービス/システムと対話するクライアントコンポーネントを含むことができることに留意されたい。
[0043] 対処可能通知サービス130は、いくつかの実装では、管理ツール468を公開することができる。ツール468は、ユーザが登録済みエンドポイントをリモートで管理できるようにするために、ブラウザなどのウェブアプリケーションを用いてアクセスするように構成することができる。たとえば、ユーザは、デバイスを紛失した/盗難された、または交換/更新されたシナリオにおいて、エンドポイントを再認証することを望む場合がある。ツール468は、図10に付随するテキストにおいて以下で説明されるように、エンドポイントでローカルに公開されるユーザインターフェースコントロールの一部を補うまたは置換するために使用することができる。
[0044] アプリケーション430、440および450は、ローカルに実行するコードを用いて実装されることが多い。しかしながら、場合によっては、これらのアプリケーションは、リモートサーバまたは他のコンピューティングプラットフォーム、たとえば他のクラウドベースのリソース/サービス470によりサポートされるものによって提供されるサービスおよび/またはリモートコード実行に依存し得る。対処可能通知クライアント450はここではアプリケーション層405でインスタンス化されるコンポーネントとして示されているが、それがサポートする機能が、OSコンポーネント475および/またはハードウェア層415でサポートされる他のコンポーネントを用いて全体的または部分的に実装され得ることは理解されよう。
[0045] 図5に示されるように、対処可能通知クライアント450は、いくつかの実装ではそれ自体のネイティブ通知能力505を、典型的にはサービス130と共にサポートすることができる。また、対処可能通知クライアント450は、API510を通知アプリケーション440の1つまたは複数に公開することができる。API510は、以下でより詳細に説明されるように、サブスクライブ側エンドポイントに通知を発行するために、通知アプリケーション440が対処可能通知サービス130と相互運用することを可能にし得る。対処可能通知クライアント450は、API510のサポートを、場合によってはそれ自体のネイティブ通知能力もサポートすることはせずに、行うことができる。API510は、典型的には、様々なメソッドおよび関数を通知アプリケーションに公開し、特定の体験および/または特徴を実装するのに必要とされ得る発行された通知に関連するアウトバウンドデータ515を受信する(および他の信号およびコントロールなどを交換する)ように構成される。
[0046] 対処可能通知クライアント450は、通知がリモート発行側エンドポイントから受信された場合に、ローカルエンドポイント110で通知に関連するネイティブ体験をサポートするのに適切なアプリケーションを起動することが可能なアプリケーションランチャ520を含むことができる。典型的には、クライアント450は、通知に関連するネイティブ体験をレンダリングするために必要とされ得るインバウンド通知データ525を、API530を介してアプリケーション440に渡すことになる。
[0047] 図6は、サービス130によりサポートされる通知発行およびサブスクリプションシステム600を示す。エンドポイントはシステム600に登録して、登録済みエンドポイント605となる。図7に例示的に示されるように、登録済みエンドポイントは、発行の権利(参照番号705により代表して示されている)のために登録することができ、ならびに他の登録済みエンドポイントにより発行される通知のサブスクライブ側(参照番号710により代表して示されている)として登録することができる。エンドポイントは、場合によってはドメイン間通知が利用できるように、個別に登録することが可能な複数のユーザアカウントをサポートすることができる。
[0048] 図7に示された例では、登録済みエンドポイントA715は、対処可能通知720を通知発行およびサブスクリプションシステム600に発行する。登録済みエンドポイントB725および登録済みエンドポイントD730は、参照番号735および740によりそれぞれ示されるように(いくつかのサブスクリプションの中でとりわけ)登録済みエンドポイントA715により発行される対処可能通知のサブスクライブ側として登録しており、通信ネットワークを介して対処可能通知720を受信する。
[0049] 図8に示されるように、対処可能通知720は、典型的には、アプリケーション440(図4)によりネイティブ体験をサポートするために使用され得るコンテンツペイロード805、ならびに通知発行およびサブスクリプションシステム600により対処可能通知を関連するサブスクライブ側エンドポイントにルーティングおよび/またはフィルタリングするために使用され得るメタデータ810を含むことができる。いくつかの実装では、コンテンツペイロード805は、通知が同じコンテンツを有するときを決定するために、対処可能通知サービスにより(匿名で)分析することができる。たとえば、コンテンツペイロードの一部または全部に、ハッシュ化または異なるソースからの通知の比較を可能にする他のアルゴリズムを施して、サブスクライブ側エンドポイントへの通知を識別する場合に一意性を検証することができる。加えて、場合によっては同一の通知をシステムにより除去して、帯域幅およびリソース利用率を向上させることができる。たとえば、ユーザは、セルラーネットワーク接続を介して同一の天気および緊急通知を受信する複数のエンドポイントを有することがある。ユーザは、同一の通知が対処可能通知サービスによりサブスクライブ側エンドポイントのそれぞれに重複して伝播されないように希望することができる。
[0050] 図9に示されるように、対処可能通知内で場合によっては他のデータと共に提供されるメタデータは、通知発行およびサブスクリプションシステム600への入力905として使用することができる。例示的な入力の全てが、対処可能通知のあらゆる実装で使用される必要はない。メタデータは、重複した通知の処理を容易にし得る開始エンドポイント一意識別子(ID)910と、開始エンドポイントの位置915と、対処可能通知のタイムスタンプ920と、ペイロードサイズ925と、タイプがたとえば、対処必須ダイアログ(ARD:Action Required Dialog)、アラート、緊急通知、通知「トースト」、通知センター項目などを含むことが可能な通知タイプ930と、通知優先度935とを含むことができる。他のシステム入力は、受信エンドポイント状態940(たとえば、電池充電残量、利用中のアクセスネットワークなど)と、受信エンドポイント位置945と、特定の対処可能通知実装に必要とされ得る他の入力950とを含むことができる。
[0051] 対処可能通知クライアント450は、図10に示されるようにUI1005を浮上させて、ユーザが、自分のニーズに適合された対処可能通知をセットアップし、エンドポイントおよびアクセスネットワークリソースを最適に管理するための様々なタスクを実施することを可能にすることができる。図示されたように、UI1005は、エンドポイントを通知発行およびサブスクリプションシステムに対して登録および登録解除するための制御のサポート1010と、エンドポイント上のアプリケーション440またはクライアント450に対する発行権の選択1015と、受諾基準の設定1025および抑制基準の設定1030を含むサブスクリプションの管理1020とを行うことができる。いくつかの実装では、登録処理は、最初にエンドポイントを構成することと、次いで、「ブートストラッピング」処理と典型的に呼ばれるものを用いて、特権エージェントとしてリモート対処可能通知サービスからエンドポイントに継続的にプロビジョニングを行うこととを伴い得る。
[0052] サブスクリプション管理特徴は、発行された通知がサブスクライブ側エンドポイントで受信される基準、および通知の受信を抑制するための基準をユーザが選択しやすくすることができる。たとえば、通知を1日の特定の時間中にはサブスクライブ側エンドポイントで受信し、他の時間には抑制できるように、受諾および抑制基準をUI1005を介して指定することができる。他の例では、サブスクライブ側エンドポイントがWi−Fiアクセスネットワーク上にある場合には通知を受諾することができるが、セルラーデータアクセスネットワーク上にある場合には通知が高優先度でない限り抑制することができるように、基準を選択することができる。これらがサブスクリプション管理特徴が利用され得る方法のごくわずかの例であること、および所与の実装のニーズを満たすように体験を調整し、リソース割り当て、利用、および消費を最適化するためにシステム入力905(図9)を用いて様々な基準を指定できることが強調される。
[0053] また、UI1005は、ユーザが、サブスクライブ側エンドポイントで受信された通知に対処すること1040により、通知に応答すること1035と、複数のエンドポイントにわたる通知を破棄すること1045によって、重複した通知を管理し制御することとを可能にし得る。また、対処可能通知の特定の実装に必要とされ得る他の特徴および機能1050も、UI1005によって公開することができる。たとえば、UI1005は、場合によっては、全ての登録済みエンドポイントの全体像と、それらに関連する発行権およびサブスクリプションの詳細とをユーザに提供するように構成することができる。
[0054] 図11は、対処可能通知が複数のサブスクライブ側エンドポイント間で共有される例示的な例を示す。この例では、父のスマートフォンは、キッチンに位置する登録済みエンドポイント1102である。月曜日の朝の午前7:30に悪天候アラート1105を受信し、対処可能通知1110を通知発行およびサブスクリプションシステム600に発行する。システム600は、IP通信ネットワーク115(図1)への接続を提供するホームWi−Fiアクセスネットワーク1120を共有するサブスクライブ側エンドポイント1115、1117、1119および1121(これらは全て家族に属する)のそれぞれにおいて対処可能通知1110を浮上させる。また、対処可能通知1110を、システム600により発信エンドポイント1102上に浮上させて、着信アラート1105を置換するまたは場合によってはこれを追加の特徴または機能で補うことができる。
[0055] 図12は、第2の悪天候アラート1205がその朝より後の午前8:45に発信エンドポイント1102で受信されることを示す。この時刻には、家族の何人かがもはや家におらず、母は列車で会議へ向かい、娘は学校にいる。母のエンドポイント(タブレット)は、セルラーデータアクセスネットワーク1215を用いたネットワーク接続を有しており、娘のエンドポイント(スマートフォン)は、学校のWi−Fiアクセスネットワーク1218を介した接続を有している。
[0056] 開始エンドポイント1102は、対処可能通知1210を通知発行およびサブスクリプションシステム600に発行する。システム600は、先の悪天候アラートと同様に、対処可能通知1210をサブスクライブ側エンドポイント1115および1117上に浮上させる。図示されたように、システム600は、サブスクライブ側エンドポイント1119および1121における対処可能通知を抑制する。この特定の例では、母のタブレットがホームWi−Fiネットワークの外側にある場合に、セルラーデータアクセスネットワーク1215における帯域幅消費を減少させるために、対処可能通知が抑制されるように、基準が選択されていた。また、娘のスマートフォンが授業時間中に学校に位置しているときに、気が散らないようにする学校の方針に従うために、通知が抑制されるように、基準が選択されていた。
[0057] 図13および図14は、対処可能通知が複数のエンドポイントにわたって破棄されることを示す。ここでは、父1305は、エンドポイント1115(家の書斎に位置するPC)上で対処可能通知1210を見た後、参照番号1310で示されるように対処可能通知を破棄することができる。対処可能通知サービスは、図14に示されるように、父の他のエンドポイント1102および1117(キッチンのスマートフォンおよび寝室のタブレット)に破棄を伝播させて、重複した通知が破棄されるようにすることができる。複数のエンドポイントにわたる通知状態のそのような同期は、通知が新しいかまたは既に見られ処理されているかについてユーザの混乱を低減させることができ、また、ユーザがエンドポイントのそれぞれにおいて通知を破棄する必要をなくすことによって、デバイスにわたるリソースの管理を支援することができる。
[0058] 図15は、着信VoIP(ボイスオーバーインターネットプロトコル)通話1500が父のエンドポイント1115で受信される例示的なシナリオを示す。着信通話イベントに応答して、エンドポイント1102は、システム600へ発行される対処可能通知1505を開始する。エンドポイント1102および1117は、エンドポイント1115により発行される通知のサブスクライブ側として登録されているので、対処可能通知1505がエンドポイント1102上に浮上する。しかしながら、図15に示されるように、エンドポイント1117は電池充電が少ない。この特定の例では、ユーザは、所与のエンドポイントデバイスの状態が特定の条件、たとえばここではタブレットの電池充電が少ない状態などに合致する場合に、対処可能通知が抑制されるように、抑制基準を選択している。
[0059] 図16は、着信VoIP通話1500に関連する浮上した対処可能通知1505を示す、エンドポイント1102上に表示される例示的なUI1600のスクリーンキャプチャを示す。対処可能通知1505は、他のエンドポイントにおける通話イベントをユーザに知らせるためのテキスト1608と、行動を実施するためのコントロール1610と、通知を破棄するためのコントロール1615とを含む。ここで示されているUIの特定の見た目は例示的であることが意図されていること、および本マルチエンドポイント対処可能通知の特定の実装のニーズを満たす変形が利用できることが強調される。加えて、以下の説明では、UIとのユーザ対話は、タッチスクリーンインターフェースを公開するエンドポイントの文脈で論じられる。しかしながら、他のタイプの入力、たとえば、物理的または仮想的なボタンの押下、ジェスチャ認識デバイス/ソフトウェアへのジェスチャ入力、音声コマンド、自然言語入力なども、所与のエンドポイントでサポートされる特徴に応じて利用できることに留意されたい。所与の目的で利用され得る特定のユーザ行動は、実装およびエンドポイントによって異なり得る。
[0060] 図16に示されるように、ユーザ(すなわち、父)は、行動実施コントロール1610にタッチ1620を行なっており、対処可能通知サービスは、それぞれのエンドポイント上のクライアントと対話して、図17でエンドポイント1102に表示されたUI1700上に示されるように着信VoIP通話を浮上させることによってこれに応答する。UI1700は、発信者を、通話に応答するためのコントロール1710、および通話を拒否するためのコントロール1715と共に表示するVoIP通話ウィンドウ1705を含む。
[0061] 典型的な実装では、サブスクライブ側エンドポイント上の通話ウィンドウ1705は、開始エンドポイント上のネイティブVoIP通話アプリケーションによって公開されるウィンドウと同様に見え、ユーザはウィンドウ1705と対話して通話を通常の方法で処理することができる。そのような運用上の透過性は、所与の実装のニーズに応じて異なる方法で実装することができる。図18に示されるように、エンドポイント1102は、リモート発信者1810とのVoIP通話に関与するエンドポイント1115と、リモートデスクトップ接続1805を確立することができる。リモート接続を介して、エンドポイント1102は、リモートPCデスクトップ1815およびVoIP通話ウィンドウ1705をホストすることができる。
[0062] 図19および図20は、他の例示的な対処可能通知シナリオを示す。図19において、リモート発信者1910は、キッチンの父のエンドポイント1102にモバイル通話1902をかける。このエンドポイントは、着信通話イベントに応答して、サブスクライブ側エンドポイントに対処可能通知を送信することができる。エンドポイント1102により発行される通知を受信するように構成される登録済みエンドポイントである書斎のPC1115は、ユーザ1305(すなわち、父)がエンドポイント1115からリモート発信者1910とのモバイル通話1902に参加することを可能にする、VoIPセッション1905をセットアップするための対処可能通知を受信することができる。
[0063] 図20において、リモートユーザ2010は、父のエンドポイント1102とチャットセッションを開始する。着信チャットメッセージが受信された場合、エンドポイント1102は、PC1115を含むサブスクライブ側エンドポイントに対処可能通知を送信することによって、イベントに応答する。対処可能通知は、チャットセッション2005をリモートモバイルデスクトップ2015上でホストできるよう、リモートセッション2014をエンドポイント1102および1115の間で確立することを可能にするように構成することができる。このようにして、ユーザ1305(すなわち、父)は、他のユーザ2002が携帯電話エンドポイント1002を他の目的で、たとえばゲームをプレイする、音楽を聞く、ビデオを見るなどのために使用している間に、PC上でリモートユーザ2010とのチャットセッション2005に参加することができる。
[0064] 図21に示されるように、対処可能通知サービス130は、SMSまたはMMS(マルチメディアメッセージングサービス)通知などの通知2105を、エンドポイント1102で実行されるメッセージングアプリケーション2110に送信することができる。通知2105は、典型的にはブラウザアプリケーションなどのWebサービスクライアント2115で辿ることが可能な、コンテンツプロバイダ125により公開され得るアプリケーション(App)ストア2120または同様のサービスへのリンク2108を含むことができる。Appストア2120は、エンドポイント1102がVoIP通話をリモートではなく直接処理することができるように、適切なアプリケーション2125をダウンロード2130として提供することができる。
[0065] 図22は、エンドポイントにおいてマルチエンドポイント対処可能通知を実装するための一例示的方法2200のフローチャートを示す。特に記載がない限り、以下のフローチャートに示され添付のテキストに記載されている方法またはステップは、特定の順序またはならびに制約されない。加えて、それらの方法またはステップの一部は、同時に発生するまたは行うことができ、全ての方法またはステップが所与の実装において、そのような実装の要件に応じて行われる必要はなく、一部の方法またはステップは任意選択により利用することができる。
[0066] ステップ2205において、対処可能通知が、エンドポイントにおいて通知発行およびサブスクリプションシステムから受信される。上記のように、ユーザ体験および電池寿命およびネットワーク利用などのリソースをユーザのニーズに合わせて最適化できるように、サブスクリプション基準はユーザ選択可能である。ステップ2210において、受信された通知は、サブスクライブ側エンドポイントのUI上に浮上する。ステップ2215において、通知に対処するまたはそれを破棄するための、UIにおけるユーザからの入力が受信される。通知が破棄された場合、他のサブスクライブ側エンドポイントで受信された重複した通知も、対処可能通知サービスにより破棄される。UIを介して通知が対処された場合、ステップ2220において、対処可能通知クライアントは、APIを介してエンドポイント上の関連するアプリケーションと対話して、通知を処理するためのアプリケーションを起動し、適切なユーザ体験を提供することができる。代替的には、サービスは、ステップ2225において開始発行側エンドポイントによりホストされるサブスクライブ側エンドポイント上でのリモート体験を容易にすることができる。
[0067] 図23は、対処可能通知サービスにおいて複数のエンドポイントにわたる通知を管理するための一例示的方法2300のフローチャートを示す。ステップ2305において、サービスは、エンドポイントをシステムに対して登録および登録解除し、登録済みエンドポイントに対して発行権およびサブスクリプションを設定するように構成されるUIを公開する。ステップ2310において、サービスは、発行された通知をサブスクライブ側エンドポイントに分配できるように、エンドポイントがネットワークを介してアクセス可能な通知発行およびサブスクリプションシステムをホストする。ステップ2315において、サービスは、通知受諾および抑制基準をユーザ設定するように構成されるUIを提供し、ステップ2320において、通知は抑制基準に従ってサブスクライブ側エンドポイントに抑制される。ステップ2325において、対処可能通知サービスは、通知処理アプリケーションをダウンロードするためのリモートリソースまで辿ることが可能なリンクを含む通知をサブスクライブ側エンドポイントに送信する。ステップ2330において、対処可能通知サービスは、ユーザがサブスクライブ側エンドポイントの1つで通知を破棄した場合に、複数のサブスクライブ側エンドポイントにわたる重複した通知をまとめて破棄することを可能にする。
[0068] 図24は、クライアント−サーバ構成を用いて実装することが可能な、登録済みエンドポイントにわたる重複した通知を除去するための一例示的方法2400のフローチャートを示す。ステップ2405において、発行側エンドポイントからの通知がサブスクライブ側エンドポイントで破棄されたという表示が受信される。ステップ2410において、発行側エンドポイントから通知を同様に受信したさらなるサブスクライブ側エンドポイントが識別される。識別は、発行された通知に関連するメタデータをレビューして、さらなるサブスクライブ側エンドポイントで受信された通知が重複していることを検証することを含むことができる。ステップ2415において、さらなるサブスクライブ側エンドポイントは、発行側エンドポイントから受信された通知を破棄するように指示される。典型的には、サーバは、それぞれのエンドポイント上の対処可能通知クライアントと通信して、エンドポイントにわたる破棄を実施することができる。
[0069] 図25は、本マルチエンドポイント対処可能通知を実装可能な、PC、クライアントマシン、またはサーバなどの一例示的コンピュータシステム2500の簡略化されたブロック図である。コンピュータシステム2500は、プロセッサ2505と、システムメモリ2511と、システムメモリ2511を含む様々なシステムコンポーネントをプロセッサ2505に結合するシステムバス2514とを含む。システムバス2514は、様々なバスアーキテクチャのいずれかを用いた、メモリバスもしくはメモリコントローラ、ペリフェラルバス、またはローカルバスを含むいくつかのタイプのバス構造のいずれかとすることができる。システムメモリ2511は、読み出し専用メモリ(ROM)2517、およびランダムアクセスメモリ(RAM)2521を含む。起動中などにコンピュータシステム2500内の要素間で情報を転送するのを支援する基本ルーチンを含む基本入出力システム(BIOS)2525は、ROM2517に記憶される。コンピュータシステム2500は、内蔵ハードディスク(図示せず)との間で読み書きするためのハードディスクドライブ2528と、リムーバブル磁気ディスク2533(たとえばフロッピーディスク)との間で読み書きするための磁気ディスクドライブ2530と、リムーバブル光ディスク2543、たとえばCD(コンパクトディスク)、DVD(デジタル多用途ディスク)、または他の光メディアとの間で読み書きするための光ディスクドライブ2538とをさらに含むことができる。ハードディスクドライブ2528、磁気ディスクドライブ2530、および光ディスクドライブ2538は、それぞれハードディスクドライブインターフェース2546、磁気ディスクドライブインターフェース2549、および光学ドライブインターフェース2552によってシステムバス2514に接続される。これらのドライブおよびそれらに関連するコンピュータ可読記憶媒体は、コンピュータシステム2500用のコンピュータ可読命令、データ構造、プログラムモジュール、および他のデータの不揮発性記憶を提供する。この例示的な例はハードディスク、リムーバブル磁気ディスク2533、およびリムーバブル光ディスク2543を含むが、コンピュータによりアクセス可能なデータを記憶することができる他のタイプのコンピュータ可読記憶媒体、たとえば磁気カセット、フラッシュメモリカード、デジタルビデオディスク、データカートリッジ、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)なども、本マルチエンドポイント対処可能通知のいくつかの適用例において使用することができる。加えて、本明細書で使用される場合、コンピュータ可読記憶媒体という用語は、メディアタイプの1つまたは複数のインスタンス(たとえば、1つまたは複数の磁気ディスク、1つまたは複数のCDなど)を含む。本明細書および特許請求の範囲においては、「コンピュータ可読記憶媒体」という語句およびその変形は、波、信号、および/または他の一時的かつ/または無形の通信媒体を含まない。
[0070] いくつかのプログラムモジュールを、ハードディスク、磁気ディスク2533、光ディスク2543、ROM2517、またはRAM2521に記憶することができ、これには、オペレーティングシステム2555、1つまたは複数のアプリケーションプログラム2557、他のプログラムモジュール2560、およびプログラムデータ2563が含まれる。ユーザは、キーボード2566などの入力デバイスおよびマウスなどのポインティングデバイス2568を介して、コンピュータシステム2500にコマンドおよび情報を入力することができる。他の入力デバイス(図示せず)は、マイクロフォン、ジョイスティック、ゲームパッド、衛星受信アンテナ、スキャナ、トラックボール、タッチパッド、タッチスクリーン、タッチ感応デバイス、音声コマンドモジュールまたはデバイス、ユーザモーションまたはユーザジェスチャキャプチャデバイスなどを含むことができる。これらおよび他の入力デバイスは、システムバス2514に結合されるシリアルポートインターフェース2571を介してプロセッサ2505に接続されることが多いが、他のインターフェース、たとえばパラレルポート、ゲームポート、またはユニバーサルシリアルバス(USB)によって接続することができる。また、モニタ2573または他のタイプの表示デバイスは、ビデオアダプタ2575などのインターフェースを介してシステムバス2514に接続される。モニタ2573に加えて、パーソナルコンピュータは、典型的には、他のペリフェラル出力デバイス(図示せず)、たとえばスピーカーおよびプリンタを含む。また、図25に示された例示的な例は、ホストアダプタ2578、スモールコンピュータシステムインターフェース(SCSI)バス2583、およびSCSIバス2583に接続される外部記憶デバイス2576を含む。
[0071] コンピュータシステム2500は、リモートコンピュータ2588などの1つまたは複数のリモートコンピュータへの論理接続を用いたネットワーク環境で動作可能である。リモートコンピュータ2588は、他のパーソナルコンピュータ、サーバ、ルータ、ネットワークPC、ピアデバイス、または他の一般的なネットワークノードとして選択することができ、典型的には、コンピュータシステム2500に関する上述の要素の多くまたは全てを含むが、単一の代表的なリモートメモリ/記憶デバイス2590のみが図25に示されている。図25に示された論理接続は、ローカルエリアネットワーク(LAN)2593、およびワイドエリアネットワーク(WAN)2595を含む。そのようなネットワーク環境は、たとえば、オフィス、企業規模のコンピュータネットワーク、イントラネットおよびインターネットに配備されることが多い。
[0072] LANネットワーク環境で使用される場合、コンピュータシステム2500は、ネットワークインターフェースまたはアダプタ2596を介してローカルエリアネットワーク2593に接続される。WANネットワーク環境で使用される場合、コンピュータシステム2500は、典型的には、ブロードバンドモデム2598、ネットワークゲートウェイ、またはインターネットなどのワイドエリアネットワーク2595を介して通信を確立するための他の手段を含む。ブロードバンドモデム2598は、内蔵でも外付けでもよいが、シリアルポートインターフェース2571を介してシステムバス2514に接続される。ネットワーク環境において、コンピュータシステム2500またはその部分に関するプログラムモジュールは、リモートメモリ記憶デバイス2590に記憶することができる。図25に示されたネットワーク接続は例示的なものであり、コンピュータ間に通信リンクを確立する他の手段を、本マルチエンドポイント対処可能通知の適用例の特定の要件に応じて使用できることに留意されたい。
[0073] 図26は、本マルチエンドポイント対処可能通知を提供するための、本明細書で説明された様々なコンポーネントを実行することが可能なデバイスのための例示的なアーキテクチャ2600を示す。したがって、図26に示されたアーキテクチャ2600は、サーバコンピュータ、携帯電話、PDA、スマートフォン、デスクトップコンピュータ、ネットブックコンピュータ、タブレットコンピュータ、GPSデバイス、ゲーミングコンソール、および/またはラップトップコンピュータに適合可能なアーキテクチャを示す。アーキテクチャ2600は、本明細書で提示されたコンポーネントの任意の態様を実行するために利用することができる。
[0074] 図26に示されたアーキテクチャ2600は、CPU(中央処理装置)2602と、RAM2606およびROM2608を含むシステムメモリ2604と、メモリ2604をCPU2602に結合するシステムバス2610とを含む。起動中などにアーキテクチャ2600内の要素間で情報を転送するのを支援する基本ルーチンを含む基本入出力システムは、ROM2608に記憶される。アーキテクチャ2600は、アプリケーション、ファイルシステム、およびオペレーティングシステムを実装するために利用されるソフトウェアコードまたは他のコンピュータ実行されるコードを記憶するための大容量記憶デバイス2612をさらに含む。
[0075] 大容量記憶デバイス2612は、バス2610に接続される大容量記憶コントローラ(図示せず)を介してCPU2602に接続される。大容量記憶デバイス2612およびこれに関連するコンピュータ可読記憶媒体は、アーキテクチャ2600に不揮発性記憶を提供する。
[0076] 本明細書に含まれるコンピュータ可読記憶媒体の説明は、大容量記憶デバイス、たとえばハードディスクまたはCD−ROMドライブについて言及しているが、コンピュータ可読記憶媒体は、アーキテクチャ2600によりアクセス可能な任意の利用可能な記憶媒体とすることができることは当業者には理解されよう。
[0077] 例として、限定なく、コンピュータ可読記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの情報を記憶するための任意の方法または技術で実装される揮発性および不揮発性のリムーバブルおよび非リムーバブルメディアを含むことができる。たとえば、コンピュータ可読媒体は、限定はされないが、RAM、ROM、EPROM(消去可能プログラム可能読み出し専用メモリ)、EEPROM(電気的消去可能プログラム可能読み出し専用メモリ)、フラッシュメモリもしくは他の固体メモリ技術、CD−ROM、DVD、HD−DVD(高精細DVD)、Blu−ray(登録商標)、もしくは他の光学記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶デバイスもしくは他の磁気記憶デバイス、または所望の情報を記憶するために使用可能であってアーキテクチャ2600によりアクセス可能な任意の他の媒体を含む。
[0078] 様々な実施形態によれば、アーキテクチャ2600は、ネットワークを介したリモートコンピュータへの論理接続を用いてネットワーク環境で動作することができる。アーキテクチャ2600は、バス2610に接続されたネットワークインターフェースユニット2616を介してネットワークに接続することができる。ネットワークインターフェースユニット2616を利用して、他のタイプのネットワークおよびリモートコンピュータシステムに接続することもできることは理解されよう。また、アーキテクチャ2600は、キーボード、マウス、または電子スタイラス(図26では図示せず)を含むいくつかの他のデバイスから入力を受信し処理するための入出力コントローラ2618を含むことができる。同様に、入出力コントローラ2618は、表示画面、プリンタ、または他のタイプの出力デバイス(同様に図26では図示せず)に出力を提供することができる。
[0079] 本明細書で説明されたソフトウェアコンポーネントが、CPU2602にロードされ実行された場合、CPU2602および全体的なアーキテクチャ2600を、汎用コンピューティングシステムから、本明細書で提示された機能を促進するようにカスタマイズされた専用コンピューティングシステムに変換できることは理解されよう。CPU2602は、任意数の状態を個別にまたは集合的に想定し得る任意数のトランジスタまたは他のディスクリート回路素子から構築することができる。より具体的には、CPU2602は、本明細書で開示されたソフトウェアモジュールに含まれる実行可能命令に応答して、有限状態機械として動作することができる。これらのコンピュータ実行可能命令は、CPU2602が状態間を遷移する方法を指定して、CPU2602を構成するトランジスタまたは他のディスクリートハードウェア素子を変換することによって、CPU2602を変換することができる。
[0080] また、本明細書で提示されたソフトウェアモジュールの符号化は、本明細書で提示されたコンピュータ可読記憶媒体の物理構造を変換することができる。物理構造の特定の変換は、この説明の異なる実装において、様々な要因に依存し得る。そのような要因の例は、限定はされないが、コンピュータ可読記憶媒体を実装するのに使用される技術、コンピュータ可読記憶媒体が一次または二次記憶のいずれとして特徴付けられるかなどを含むことができる。たとえば、コンピュータ可読記憶媒体が半導体ベースのメモリとして実装される場合、本明細書で開示されるソフトウェアは、半導体メモリの物理状態を変換することによって、コンピュータ可読記憶媒体上に符号化することができる。たとえば、ソフトウェアは、半導体メモリを構成するトランジスタ、キャパシタ、または他のディスクリート回路素子の状態を変換することができる。また、ソフトウェアは、そのようなコンポーネントの物理状態を変換して、データをその上に記憶することができる。
[0081] 他の例として、本明細書で開示されたコンピュータ可読記憶媒体は、磁気または光学技術を用いて実装することができる。そのような実装では、本明細書で提示されたソフトウェアは、磁気または光メディアの物理構造を、ソフトウェアがその中に符号化された場合に変換することができる。これらの変換は、所与の磁気メディア内の特定の場所の磁気特性を変化させることを含むことができる。また、これらの変換は、所与の光メディア内の特定の場所の物理特徴または特性を、これらの場所の光学特性を変更するように変化させることを含むことができる。物理メディアの他の変換は、本説明の範囲および精神から逸脱することなく可能であり、前述の例はこの議論を容易にするためにのみ提供されている。
[0082] 上記に照らして、本明細書で提示されたソフトウェアコンポーネントを記憶し実行するために、多数のタイプの物理変換がアーキテクチャ2600で行われることは理解されよう。また、アーキテクチャ2600が、他のタイプのコンピューティングデバイス、たとえばハンドヘルドコンピュータ、組み込みコンピュータシステム、スマートフォン、PDA、および当業者に知られている他のタイプのコンピューティングデバイスを含むことができることも理解されよう。また、アーキテクチャ2600が、図26に示されたコンポーネントの全てを含まなくてもよく、図26に明示されていない他のコンポーネントを含むことができ、または図26に示されたものとは完全に異なるアーキテクチャを利用することができると考えられる。
[0083] 図27は、2702に全体的に示されている、様々な任意選択のハードウェアおよびソフトウェアコンポーネントを含む、携帯電話またはスマートフォンなどの例示的なモバイルデバイス110の機能ブロック図である。モバイルデバイスの任意のコンポーネント2702は、任意の他のコンポーネントと通信することができるが、説明を容易にするために、全ての接続が示されているわけではない。モバイルデバイスは、様々なコンピューティングデバイス(たとえば、セルフォン、スマートフォン、ハンドヘルドコンピュータ、PDAなど)のいずれかとすることができ、セルラーまたは衛星ネットワークなどの1つまたは複数のモバイル通信ネットワーク2704とワイヤレス双方向通信を行うことができる。
[0084] 図示されたデバイス110は、信号符号化、データ処理、入出力処理、電源制御、および/または他の機能などのタスクを実行するためのコントローラまたはプロセッサ2710(たとえば、信号プロセッサ、マイクロプロセッサ、マイクロコントローラ、ASIC(特定用途向け集積回路)、または他の制御および処理論理回路)を含むことができる。オペレーティングシステム2712は、電源状態、ロック済み状態、および未ロック状態を含む、コンポーネント2702の割り当ておよび使用を制御することができ、1つまたは複数のアプリケーションプログラム2714へのサポートを提供する。アプリケーションプログラムは、一般的なモバイルコンピューティングアプリケーション(たとえば、イメージキャプチャアプリケーション、電子メールアプリケーション、カレンダー、連絡先マネージャ、ウェブブラウザ、メッセージングアプリケーション)、または任意の他のコンピューティングアプリケーションを含むことができる。
[0085] 図示されたモバイルデバイス110は、メモリ2720を含むことができる。メモリ2720は、非リムーバブルメモリ2722および/またはリムーバブルメモリ2724を含むことができる。非リムーバブルメモリ2722は、RAM、ROM、フラッシュメモリ、ハードディスク、または他のよく知られているメモリ記憶技術を含むことができる。リムーバブルメモリ2724は、フラッシュメモリ、もしくはGSM(モバイル通信用グローバルシステム)システムでよく知られている加入者識別モジュール(SIM:Subscriber Identity Module)カード、または他のよく知られているメモリ記憶技術、たとえば「スマートカード」を含むことができる。メモリ2720は、オペレーティングシステム2712およびアプリケーションプログラム2714を動作させるためのデータおよび/またはコードを記憶するために使用することができる。データの例は、1つまたは複数のワイヤードまたはワイヤレスネットワークを介して1つまたは複数のネットワークサーバあるいは他のデバイスとの間で送信および/または受信されるウェブページ、テキスト、画像、音声ファイル、ビデオデータ、または他のデータセットを含むことができる。
[0086] また、メモリ2720は、コンピュータ可読命令、データ構造、プログラムモジュールまたは他のデータなどの情報を記憶するための任意の方法または技術で実装される1つまたは複数のコンピュータ可読記憶媒体として構成する、またはこれを含むことができる。たとえば、コンピュータ可読媒体は、限定はされないが、RAM、ROM、EPROM、EEPROM、フラッシュメモリもしくは他の固体メモリ技術、CD−ROM(コンパクトディスクROM)、DVD(デジタル多用途ディスク)、HD−DVD(高精細DVD)、Blu−ray、もしくは他の光学記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶デバイスまたは他の磁気記憶デバイス、または所望の情報を記憶するために使用可能であってモバイルデバイス110によりアクセス可能な任意の他の媒体を含む。
[0087] メモリ2720は、国際移動体加入者識別番号(IMSI:International Mobile Subscriber Identity)などの加入者識別子、国際移動体機器識別子(IMEI:International Mobile Equipment Identifier)などの機器識別子を記憶するために使用することができる。そのような識別子をネットワークサーバに送信して、ユーザおよび機器を識別することができる。モバイルデバイス110は、1つまたは複数の入力デバイス2730、たとえばタッチスクリーン2732、音声認識、音声コマンドなどのための音声入力を実装するためのマイクロフォン2734、カメラ2736、物理キーボード2738、トラックボール2740、および/または近接センサ2742、ならびに1つまたは複数の出力デバイス2750、たとえばスピーカー2752および1つまたは複数のディスプレイ2754をサポートすることができる。また、ジェスチャ認識を用いた他の入力デバイス(図示せず)も、場合によっては利用することができる。他の可能な出力デバイス(図示せず)は、圧電または触覚出力デバイスを含むことができる。いくつかのデバイスは、2つ以上の入出力機能を提供することができる。たとえば、タッチスクリーン2732およびディスプレイ2754は、単一の入出力デバイスに組み合わせることができる。
[0088] 当技術分野でよく理解されているように、ワイヤレスモデム2760は、アンテナ(図示せず)に結合することができ、プロセッサ2710および外部デバイスの間の双方向通信をサポートすることができる。モデム2760は総称的に示されており、モバイル通信ネットワーク2704と通信するためのセルラーモデム、および/または他の無線ベースのモデム(たとえば、Bluetooth2764またはWi-Fi2762)を含むことができる。ワイヤレスモデム2760は、典型的には、単一のセルラーネットワーク内、セルラーネットワーク間、またはモバイルデバイスおよび公衆交換電話網(PSTN)の間のデータおよび音声通信のための、GSMネットワークなどの1つまたは複数のセルラーネットワークと通信するように構成される。
[0089] モバイルデバイスは、少なくとも1つの入出力ポート2780、電源2782、衛星ナビゲーションシステム受信機2784、たとえばGPS受信機、加速度計2786、ジャイロスコープ(図示せず)、ならびに/あるいはUSBポート、IEEE1394(ファイアワイヤー)ポート、および/またはRS−232ポートであり得る物理コネクタ2790をさらに含むことができる。図示されたコンポーネント2702は必須でも包括的でもなく、その理由は、任意のコンポーネントを削除することができ、他のコンポーネントを追加することができるためである。
[0090] 図28は、マルチメディアコンソール110の例示的な機能ブロック図である。マルチメディアコンソール110は、レベル1キャッシュ2802、レベル2キャッシュ2804、およびフラッシュROM(読み出し専用メモリ)2806を有する中央処理装置(CPU)2801を有する。レベル1キャッシュ2802、レベル2キャッシュ2804は、データを一時的に記憶し、したがってメモリアクセスサイクル数を削減し、それによって処理速度およびスループットを向上する。CPU2801は、2つ以上のコア、ひいてはさらなるレベル1およびレベル2キャッシュ2802および2804を備えて構成することができる。フラッシュROM2806は、マルチメディアコンソール110が電源ONされた場合に、ブートプロセスの初期段階中にロードされる実行可能コードを記憶することができる。
[0091] グラフィクス処理ユニット(GPU)2808およびビデオエンコーダ/ビデオコーデック(コーダ/デコーダ)2814は、高速かつ高解像度のグラフィクス処理のためにビデオ処理パイプラインを形成する。データが、GPU2808からビデオエンコーダ/ビデオコーデック2814へバスを介して搬送される。ビデオ処理パイプラインは、データをA/V(オーディオ/ビデオ)ポート2840に出力して、テレビまたは他のディスプレイに送信できるようにする。メモリコントローラ2810が、たとえば、限定はされないが、RAMなどの様々なタイプのメモリ2812へのプロセッサアクセスを容易にするために、GPU2808に接続される。
[0092] マルチメディアコンソール110は、I/Oコントローラ2820、システム管理コントローラ2822、オーディオ処理ユニット2823、ネットワークインターフェースコントローラ2824、第1のUSB(ユニバーサルシリアルバス)ホストコントローラ2826、第2のUSBコントローラ2828、およびフロントパネルI/Oサブアセンブリ2830を含み、これらはモジュール2818上で実装されることが好ましい。USBコントローラ2826および2828は、ペリフェラルコントローラ2842(1)および2842(2)、ワイヤレスアダプタ2848、および外部メモリデバイス2846(たとえば、フラッシュメモリ、外付けCD/DVD ROMドライブ、リムーバブルメディアなど)についてのホストとして機能する。ネットワークインターフェースコントローラ2824および/またはワイヤレスアダプタ2848は、ネットワーク(たとえば、インターネット、ホームネットワークなど)へのアクセスを提供し、多種多様な様々なワイヤードまたはワイヤレスアダプタコンポーネント、たとえばイーサネットカード、モデム、Bluetoothモジュール、ケーブルモデムなどのいずれかとすることができる。
[0093] システムメモリ2843は、ブートプロセス中にロードされるアプリケーションデータを記憶するために提供される。メディアドライブ2844が設けられ、DVD/CDドライブ、ハードドライブ、または他のリムーバブルメディアドライブなどを備えることができる。メディアドライブ2844は、マルチメディアコンソール110に対して内蔵または外付けとすることができる。アプリケーションデータは、マルチメディアコンソール110によって実行、再生などを行うために、メディアドライブ2844を介してアクセスすることができる。メディアドライブ2844は、シリアルATAバスまたは他の高速接続(たとえばIEEE1394)などのバスを介して、I/Oコントローラ2820に接続される。
[0094] システム管理コントローラ2822は、マルチメディアコンソール110の可用性の保証に関する様々なサービス機能を提供する。オーディオ処理ユニット2823およびオーディオコーデック2832は、高い忠実度およびステレオ処理を有する対応するオーディオ処理パイプラインを形成する。オーディオデータは、オーディオ処理ユニット2823およびオーディオコーデック2832の間で通信リンクを介して搬送される。オーディオ処理パイプラインは、データをA/Vポート2840に出力して、外部のオーディオプレーヤーまたはオーディオ能力を有するデバイスにより再生できるようにする。
[0095] フロントパネルI/Oサブアセンブリ2830は、電源ボタン2850および取り出しボタン2852、ならびにマルチメディアコンソール110の外面に露出した任意のLED(発光ダイオード)または他のインジケータの機能をサポートする。システム電源モジュール2839は、マルチメディアコンソール110のコンポーネントに電力を提供する。ファン2838は、マルチメディアコンソール110内の回路を冷却する。
[0096] CPU2801、GPU2808、メモリコントローラ2810、およびマルチメディアコンソール110内の様々な他のコンポーネントは、様々なバスアーキテクチャのいずれかを用いた、シリアルおよびパラレルバス、メモリバス、ペリフェラルバス、およびプロセッサまたはローカルバスを含む1つまたは複数のバスを介して相互接続される。例として、そのようなアーキテクチャは、ペリフェラルコンポーネントインターコネクト(PCI)バス、PCIエクスプレスバスなどを含むことができる。
[0097] マルチメディアコンソール110が電源ONされた場合、アプリケーションデータを、システムメモリ2843からメモリ2812ならびに/あるいはキャッシュ2802および2804にロードし、CPU2801上で実行することができる。アプリケーションは、マルチメディアコンソール110で利用可能な異なるメディアタイプに誘導する場合に一貫したユーザ体験を提供するグラフィカルユーザインターフェースを提示することができる。動作において、アプリケーションおよび/またはメディアドライブ2844に含まれる他のメディアを、メディアドライブ2844から起動または再生して、追加の機能をマルチメディアコンソール110に提供することができる。
[0098] マルチメディアコンソール110は、システムをテレビまたは他のディスプレイに単に接続することによって、スタンドアローンシステムとして動作させることができる。このスタンドアローンモードでは、マルチメディアコンソール110は、1人または複数人のユーザがシステムと対話し、映画を視聴し、または音楽を聴くことを可能にする。しかしながら、ネットワークインターフェースコントローラ2824またはワイヤレスアダプタ2848を介して利用可能となるブロードバンド接続の統合によって、マルチメディアコンソール110は、より大きいネットワークコミュニティの参加者としてさらに動作させることができる。
[0100] マルチメディアコンソール110が電源ONされた場合、一定量のハードウェアリソースが、マルチメディアコンソールオペレーティングシステムによるシステム使用のために予約される。これらのリソースは、メモリ(たとえば16MB)、CPUおよびGPUサイクル(たとえば5%)、ネットワーク帯域幅(たとえば8kbps)などの予約を含むことができる。これらのリソースはシステムブート時に予約されるので、予約されたリソースは、アプリケーションのビューからは存在しない。
[0101] 具体的には、メモリ予約は、起動カーネル、同時システムアプリケーション、およびドライバを含むのに十分大きいことが好ましい。予約されたCPU使用がシステムアプリケーションにより使用されない場合に、アイドル状態のスレッドが任意の未使用のサイクルを消費するように、CPU予約は一定であることが好ましい。
[0102] GPU予約に関して、システムアプリケーションにより生成される軽量メッセージ(たとえばポップアップ)は、GPU割り込みを用いて、ポップアップをオーバーレイにレンダリングするコードをスケジュールすることによって、表示される。オーバーレイに必要とされるメモリ量はオーバーレイ領域サイズに依存し、オーバーレイは画面解像度でスケーリングされることが好ましい。完全なユーザインターフェースが同時システムアプリケーションにより使用される場合、アプリケーション解像度と独立した解像度を使用することが好ましい。スケーラを用いてこの解像度を設定して、周波数を変更しTVを再同期させる必要がなくなるようにすることができる。
[0103] マルチメディアコンソール110が起動しシステムリソースが予約された後、同時システムアプリケーションはシステム機能を提供するために実行される。システム機能は、上述の予約されたシステムリソース内で実行されるシステムアプリケーションのセットにカプセル化される。オペレーティングシステムカーネルは、システムアプリケーションスレッド対ゲーミングアプリケーションスレッドであるスレッドを識別する。システムアプリケーションは、一貫したシステムリソースビューをアプリケーションに提供するために、所定の時間および間隔でCPU2801上で動作するようにスケジュールされることが好ましい。スケジューリングは、コンソール上で動作するゲーミングアプリケーションに対してキャッシュ中断を最小化するためのものである。
[0104] 同時システムアプリケーションがオーディオを要求する場合、オーディオ処理は、時間感度のために、ゲーミングアプリケーションとは非同期にスケジュールされる。マルチメディアコンソールアプリケーションマネージャ(後述)は、システムアプリケーションがアクティブである場合に、ゲーミングアプリケーションオーディオレベル(たとえば、ミュート、減衰)を制御する。
[0105] 入力デバイス(たとえば、コントローラ2842(1)および2842(2))は、ゲーミングアプリケーションおよびシステムアプリケーションにより共有される。入力デバイスは予約されるリソースではないが、システムアプリケーションおよびゲーミングアプリケーションの間で、それぞれがデバイスのフォーカスを有するように切り替えられる。アプリケーションマネージャは、ゲーミングアプリケーションの知識を知ることなく、入力ストリームの切り替えを制御することが好ましく、ドライバはフォーカス切り替えに関する状態情報を保持する。
[0106] 本マルチエンドポイント対処可能通知の様々な例示的実施形態が、例示のために、全ての実施形態の網羅的なリストとしてではなくここで提示される。一例は、通知発行およびサブスクリプションシステムへの登録済みエンドポイントとして構成されるデバイスであって、1つまたは複数のプロセッサと、デバイスユーザと対話するためのユーザインターフェース(UI)をサポートするディスプレイと、1つまたは複数のプロセッサにより実行された場合に、複数のエンドポイントデバイスにわたって通知を管理するための方法を実施するコンピュータ可読命令を記憶するメモリとを備え、方法が、発行側エンドポイントのサブスクリプションに従ってシステムから通知を受信することであって、サブスクリプションが複数のエンドポイントデバイスにわたってリソースを管理するためにユーザ選択可能であり、リソースがデバイスリソースおよびネットワークリソースを含む、受信することと、受信された通知をUI上に浮上させることと、通知に対処するまたは通知を破棄するためのUIにおける入力を受信することであって、UIにおける通知の破棄が、他のサブスクライブ側エンドポイントのそれぞれにおいてそれぞれ受信された通知の破棄を生じさせる、受信することと、UI上で通知が対処された場合に、通知を処理するためのアプリケーションを起動することとを備える、デバイスを含む。
[0107] 他の例では、デバイスは、通知を通知発行およびサブスクリプションシステムに発行することをさらに含み、通知が、サブスクライブ側エンドポイントで受信され浮上した場合に対処可能である。他の例では、デバイスは、通知発行およびサブスクリプションシステムと対話するように構成されるクライアントをホストすることをさらに含み、クライアントが通知を処理するアプリケーションを起動するためランチャまたはネイティブ通知能力のうちの少なくとも1つを含む。他の例では、デバイスは、1つまたは複数のアプリケーションに対してアプリケーションプログラミングインターフェース(API)を公開するようにクライアントを構成することをさらに含み、APIが、通知発行およびサブスクリプションシステムに発行される通知に関連付けられたアウトバウンド通知データを受信するように構成される。他の例では、アプリケーションが、リモート体験をサポートするために発行側エンドポイントへの接続を用いて起動される。他の例では、複数のエンドポイントのそれぞれが、通知発行およびサブスクリプションシステムへの接続および通知転送についての異なる属性を有するそれぞれのアクセスネットワークを使用し、管理することが、通知をそれぞれの複数のエンドポイントに転送する場合に異なるアクセスネットワークの利用を管理することを含む。他の例では、デバイスは、UIにおけるユーザが、デバイス上でのネイティブ体験として通知処理アプリケーションと対話することを可能にすることをさらに含む。他の例では、デバイスは、エンドポイント登録、エンドポイントサブスクリプション管理、またはエンドポイント発行管理の1つまたは複数のユーザ対話用にUIを構成することをさらに含み、エンドポイントサブスクリプション管理が、通知受諾または通知抑制のための基準の設定を含む。他の例では、基準が、エンドポイント位置、時間、通知特性、またはエンドポイント状態のうちの1つを含む。他の例では、デバイスはさらに、スマートフォン、タブレット、ウェアラブルコンピューティングデバイス、パーソナルコンピュータ、またはゲーミングデバイスの1つに組み込まれる。
[0108] さらなる例は、複数のエンドポイントにわたって通知を管理するための方法であって、各エンドポイントが、通知発行およびサブスクリプションシステムに登録されるデバイスである方法において、サーバで公開されるユーザインターフェース(UI)をサポートするステップであって、ユーザインターフェースが、i)エンドポイントを通知発行およびサブスクリプションシステムに対して登録および登録解除することを可能にし、ii)登録済みエンドポイントに対して発行権を設定し、iii)登録済みエンドポイントに対してサブスクリプションを設定するように構成される、サポートするステップと、登録済みエンドポイントがネットワークを介してアクセスするために通知発行およびサブスクリプションシステムをホストするステップであって、通知発行およびサブスクリプションシステムが、発行権およびサブスクリプションに従って発行側エンドポイントおよびサブスクライブ側エンドポイントの間でネットワークを介して対処可能通知を分配するように構成される、ホストするステップとを備える、方法を含む。
[0109] 他の例では、方法は、エンドポイントごとに通知受諾および通知抑制基準をユーザ設定するようにUIを構成することをさらに含む。他の例では、方法は、抑制基準に従って通知がエンドポイントに到達するのを抑制することをさらに含む。他の例では、方法は、サブスクライブ側エンドポイントにおける通知が対処された場合に、サブスクライブ側エンドポイントに対して発行側エンドポイントでホストされるリモート体験をサポートするために、サブスクライブ側エンドポイントおよび発行側エンドポイントの間の接続の確立をトリガすることをさらに含む。他の例では、方法は、リンク付き通知をサブスクライブ側エンドポイントに送信することをさらに含み、リンクが、辿られた場合に、サブスクライブ側エンドポイントによってダウンロードするのに利用可能な通知処理アプリケーションへのアクセスを提供する。他の例では、方法は、ユーザがローカルエンドポイントにおいて通知を破棄したことに応答して、リモートエンドポイントにわたる重複した通知を破棄することをさらに含む。
[0110] さらなる例は、電子デバイス内の1つまたは複数のプロセッサにより実行された場合に、通知発行およびサブスクリプションシステムに登録されたエンドポイントにわたる重複した通知を除去するための方法を実施する命令を記憶する1つまたは複数のコンピュータ可読メモリデバイスであって、方法が、ネットワークを介してサブスクライブ側エンドポイントで受信された発行側エンドポイントからの通知が破棄されたという表示を受信することと、ネットワークを介して発行側エンドポイントから通知を受信したさらなるサブスクライブ側エンドポイントを識別することと、さらなるサブスクライブ側エンドポイントに発行側エンドポイントから受信された通知を破棄するように指示することとを備える、1つまたは複数のコンピュータ可読メモリデバイスを含む。
[0111] 他の例では、1つまたは複数のコンピュータ可読メモリデバイスは、通知に関連するメタデータをレビューして、さらなるサブスクライブ側エンドポイントで受信された通知が重複していることを検証することをさらに含む。他の例では、メタデータは、発行側エンドポイント用の一意IDを備える。他の例では、通知発行およびサブスクリプションシステムは、それぞれの登録済みエンドポイントに配置されるクライアントと相互運用するサーバを用いて実装される。
[0112] 上記に基づいて、マルチエンドポイント対処可能通知のための技術が本明細書で開示されていることは理解されよう。本明細書で提示された主題が、コンピュータ構造的特徴、方法論的および変形的行為、特定のコンピューティング機械、およびコンピュータ可読記憶媒体に特有の文言で説明されているが、添付の特許請求の範囲で定義された本発明が、本明細書で説明された特定の特徴、行為、または媒体に必ずしも限定されないことは理解されよう。むしろ、特定の特徴、行為、および媒体は、特許請求の範囲を実装する例示的な形態として開示されている。
[0113] 上述の主題は、例示のみのために提供され、限定と解釈されてはならない。図示され説明された例示的実施形態およびアプリケーションに従うことなく、以下の特許請求の範囲に記載された本発明の真の精神および範囲から逸脱することなく、様々な修正および変更を本明細書に記載された主題に対して行うことができる。

Claims (15)

  1. 通知発行およびサブスクリプションシステムへの登録済みエンドポイントとして構成されるデバイスであって、
    1つまたは複数のプロセッサと、
    デバイスユーザと対話するためのユーザインターフェース(UI)をサポートするディスプレイと、
    前記1つまたは複数のプロセッサにより実行された場合に、複数のエンドポイントデバイスにわたって通知を管理するための方法を実施するコンピュータ可読命令を記憶するメモリとを備え、前記方法が、
    発行側エンドポイントのサブスクリプションに従って前記システムから通知を受信することであって、前記サブスクリプションが前記複数のエンドポイントデバイスにわたってリソースを管理するためにユーザ選択可能であり、前記リソースがデバイスリソースおよびネットワークリソースを含む、受信することと、
    前記受信された通知を前記UI上に浮上させることと、
    前記通知に対処するまたは前記通知を破棄するための前記UIにおける入力を受信することであって、前記UIにおける前記通知の破棄が、他のサブスクライブ側エンドポイントのそれぞれにおいてそれぞれ受信された前記通知の破棄を生じさせる、受信することと、
    前記UI上で前記通知が対処された場合に、前記通知を処理するためのアプリケーションを起動することと
    を備える、デバイス。
  2. 通知を前記通知発行およびサブスクリプションシステムに発行することをさらに含み、前記通知が、サブスクライブ側エンドポイントで受信され浮上した場合に対処可能である、請求項1に記載のデバイス。
  3. 前記通知発行およびサブスクリプションシステムと対話するように構成されるクライアントをホストすることをさらに含み、前記クライアントが、前記通知を処理する前記アプリケーションを起動するためランチャまたはネイティブ通知能力のうちの少なくとも1つを含む、請求項1に記載のデバイス。
  4. 1つまたは複数のアプリケーションに対してアプリケーションプログラミングインターフェース(API)を公開するように前記クライアントを構成することをさらに含み、前記APIが、前記通知発行およびサブスクリプションシステムに発行される通知に関連付けられたアウトバウンド通知データを受信するように構成される、請求項3に記載のデバイス。
  5. 前記アプリケーションが、リモート体験をサポートするために発行側エンドポイントへの接続を用いて起動される、請求項1に記載のデバイス。
  6. 前記複数のエンドポイントのそれぞれが、前記通知発行およびサブスクリプションシステムへの接続および通知転送についての異なる属性を有するそれぞれのアクセスネットワークを使用し、前記管理することが、前記通知をそれぞれの複数のエンドポイントに転送する場合に前記異なるアクセスネットワークの利用を管理することを含む、請求項1に記載のデバイス。
  7. 前記UIにおけるユーザが、前記デバイス上でのネイティブ体験として前記通知処理アプリケーションと対話することを可能にすることをさらに含む、請求項1に記載のデバイス。
  8. エンドポイント登録、エンドポイントサブスクリプション管理、またはエンドポイント発行管理の1つまたは複数のユーザ対話用に前記UIを構成することをさらに含み、前記エンドポイントサブスクリプション管理が、通知受諾または通知抑制のための基準の設定を含む、請求項1に記載のデバイス。
  9. 前記基準が、エンドポイント位置、時間、通知特性、またはエンドポイント状態のうちの1つを含む、請求項8に記載のデバイス。
  10. 複数のエンドポイントにわたって通知を管理するための方法であって、各エンドポイントが、通知発行およびサブスクリプションシステムに登録されるデバイスである方法において、
    サーバで公開されるユーザインターフェース(UI)をサポートするステップであって、前記ユーザインターフェースが、i)エンドポイントを前記通知発行およびサブスクリプションシステムに対して登録および登録解除することを可能にし、ii)登録済みエンドポイントに対して発行権を設定し、iii)登録済みエンドポイントに対してサブスクリプションを設定するように構成される、サポートするステップと、
    登録済みエンドポイントがネットワークを介してアクセスするために前記通知発行およびサブスクリプションシステムをホストするステップであって、前記通知発行およびサブスクリプションシステムが、前記発行権およびサブスクリプションに従って発行側エンドポイントおよびサブスクライブ側エンドポイントの間で前記ネットワークを介して対処可能通知を分配するように構成される、ホストするステップと
    を備える、方法。
  11. エンドポイントごとに通知受諾および通知抑制基準をユーザ設定するように前記UIを構成することをさらに含む、請求項10に記載の方法。
  12. 前記抑制基準に従って通知がエンドポイントに到達するのを抑制することをさらに含む、請求項11に記載の方法。
  13. サブスクライブ側エンドポイントにおける通知が対処された場合に、前記サブスクライブ側エンドポイントに対して発行側エンドポイントでホストされるリモート体験をサポートするために、前記サブスクライブ側エンドポイントおよび前記発行側エンドポイントの間の接続の確立をトリガすることをさらに含む、請求項10に記載の方法。
  14. リンク付き通知をサブスクライブ側エンドポイントに送信することをさらに含み、前記リンクが、辿られた場合に、前記サブスクライブ側エンドポイントによってダウンロードするのに利用可能な通知処理アプリケーションへのアクセスを提供する、請求項10に記載の方法。
  15. ユーザがローカルエンドポイントにおいて通知を破棄したことに応答して、リモートエンドポイントにわたる重複した通知を破棄することをさらに含む、請求項10に記載の方法。
JP2017525085A 2014-12-09 2015-11-30 マルチエンドポイント対処可能通知 Pending JP2018505573A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/565,100 2014-12-09
US14/565,100 US20160164810A1 (en) 2014-12-09 2014-12-09 Multi-endpoint actionable notifications
PCT/US2015/062873 WO2016094097A1 (en) 2014-12-09 2015-11-30 Multi-endpoint actionable notifications

Publications (1)

Publication Number Publication Date
JP2018505573A true JP2018505573A (ja) 2018-02-22

Family

ID=55025350

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017525085A Pending JP2018505573A (ja) 2014-12-09 2015-11-30 マルチエンドポイント対処可能通知

Country Status (11)

Country Link
US (1) US20160164810A1 (ja)
EP (1) EP3230942A1 (ja)
JP (1) JP2018505573A (ja)
KR (1) KR20170095281A (ja)
CN (1) CN107004226A (ja)
AU (1) AU2015360998A1 (ja)
BR (1) BR112017010234A2 (ja)
CA (1) CA2967983A1 (ja)
MX (1) MX2017007441A (ja)
RU (1) RU2017120072A (ja)
WO (1) WO2016094097A1 (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9801050B2 (en) * 2015-09-30 2017-10-24 Verizon Patent And Licensing Inc. Formatting an endpoint as a private entity
US20170264652A1 (en) * 2016-03-08 2017-09-14 T-Mobile Usa, Inc. Cross-platform video conversation between related devices
US10630835B2 (en) 2016-03-08 2020-04-21 T-Mobile Usa, Inc. Content sharing between related devices
US10356745B2 (en) * 2016-06-08 2019-07-16 T-Mobile Usa, Inc. Device and/or line event awareness and smart synchronization
US10580404B2 (en) * 2016-09-01 2020-03-03 Amazon Technologies, Inc. Indicator for voice-based communications
US11588913B1 (en) * 2016-12-11 2023-02-21 Snap Inc. Push notification management
US10528228B2 (en) 2017-06-21 2020-01-07 Microsoft Technology Licensing, Llc Interaction with notifications across devices with a digital assistant
US10701310B2 (en) 2017-06-23 2020-06-30 T-Mobile Usa, Inc. Video call continuity between devices via a telecommunications network
US10826861B1 (en) 2018-01-24 2020-11-03 Parallels International Gmbh System and method for managing notifications from published applications
US10812435B2 (en) * 2018-02-28 2020-10-20 Ringcentral, Inc. Systems and methods for suppressing repetitive notifications about messages in messaging groups
KR102007913B1 (ko) * 2018-06-19 2019-08-06 지니언스(주) 엔드포인트 그룹 라벨 기반 소프트웨어 정의 경계에서의 네트워크 제어 방법 및 시스템
US10993110B2 (en) * 2018-07-13 2021-04-27 Nvidia Corp. Connectionless fast method for configuring Wi-Fi on displayless Wi-Fi IoT device
US11463395B1 (en) * 2018-07-18 2022-10-04 Intrado Corporation System and method of providing notifications
KR102519625B1 (ko) * 2018-10-30 2023-04-06 삼성에스디에스 주식회사 리스트 인터페이스의 아이템간 차이점 표시 장치 및 방법
US10534734B1 (en) * 2019-04-26 2020-01-14 Dell Products L.P. Processor/endpoint communication coupling configuration system
US11368373B2 (en) * 2020-06-16 2022-06-21 Citrix Systems, Inc. Invoking microapp actions from user applications
US20230316178A1 (en) * 2022-03-30 2023-10-05 Atlassian Pty Ltd. System for synchronizing contextual notifications for event feed items

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7349980B1 (en) * 2003-01-24 2008-03-25 Blue Titan Software, Inc. Network publish/subscribe system incorporating Web services network routing architecture
US8438225B2 (en) * 2009-06-03 2013-05-07 Microsoft Corporation Traversing between electronic mail and real time communications
US8881533B2 (en) * 2010-08-05 2014-11-11 Rolls-Royce Corporation Turbine engine
US20120311045A1 (en) * 2011-05-31 2012-12-06 Dany Sylvain Notification services to one or more subscriber devices
US8707201B1 (en) * 2012-06-27 2014-04-22 Google Inc. Systems and methods for prioritizing notifications on mobile devices
CN103546493B (zh) * 2012-07-09 2018-12-28 上海博路信息技术有限公司 一种跨设备通信方法
EP2871935A2 (en) * 2012-07-13 2015-05-20 Pioneer Hi-Bred International Inc. Molecular markers for various traits in wheat and methods of use
US9147008B2 (en) * 2012-09-13 2015-09-29 Cisco Technology, Inc. Activity based recommendations within a social networking environment based upon graph activation
US9300492B2 (en) * 2013-01-14 2016-03-29 Dropbox, Inc. Notification feed across multiple client devices
US9288164B2 (en) * 2013-06-07 2016-03-15 Apple Inc. Managing notifications across multiple devices

Also Published As

Publication number Publication date
AU2015360998A1 (en) 2017-05-25
BR112017010234A2 (pt) 2018-01-02
EP3230942A1 (en) 2017-10-18
KR20170095281A (ko) 2017-08-22
MX2017007441A (es) 2017-09-12
CA2967983A1 (en) 2016-06-16
RU2017120072A (ru) 2018-12-10
US20160164810A1 (en) 2016-06-09
WO2016094097A1 (en) 2016-06-16
CN107004226A (zh) 2017-08-01

Similar Documents

Publication Publication Date Title
JP2018505573A (ja) マルチエンドポイント対処可能通知
US11169654B2 (en) Task completion across devices using a shared work space
US10135965B2 (en) Use of a digital assistant in communications
US11012385B2 (en) App powered extensibility of messages on an existing messaging service
KR102509245B1 (ko) 써드 파티 애플리케이션으로의 디지털 어시스턴트 확장성
US20160210363A1 (en) Contextual search using natural language
US10212103B2 (en) Smart automatic composition of short messaging responses
US9119052B2 (en) Content sharing for mobile devices
KR101890973B1 (ko) 네트워크 통신 및 코스트 인식 기법
US10592534B2 (en) Automated aggregation of social contact groups
US9882743B2 (en) Cloud based power management of local network devices
US9112917B2 (en) Controller system and method therefor
US20130343373A1 (en) Voice-over-internet protocol (voip) application platform
CN107395493B (zh) 一种基于意图Intent分享消息的方法及装置