IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ セールスフォース ドット コム インコーポレイティッドの特許一覧

特表2024-538533モバイル生成デスクトップリマインダ
<>
  • 特表-モバイル生成デスクトップリマインダ 図1
  • 特表-モバイル生成デスクトップリマインダ 図2
  • 特表-モバイル生成デスクトップリマインダ 図3
  • 特表-モバイル生成デスクトップリマインダ 図4
  • 特表-モバイル生成デスクトップリマインダ 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-10-23
(54)【発明の名称】モバイル生成デスクトップリマインダ
(51)【国際特許分類】
   H04L 67/54 20220101AFI20241016BHJP
   H04M 11/00 20060101ALI20241016BHJP
   H04M 1/72412 20210101ALI20241016BHJP
   G06F 3/048 20130101ALI20241016BHJP
   H04L 67/75 20220101ALI20241016BHJP
【FI】
H04L67/54
H04M11/00 302
H04M1/72412
G06F3/048
H04L67/75
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2024517586
(86)(22)【出願日】2022-09-06
(85)【翻訳文提出日】2024-05-17
(86)【国際出願番号】 US2022042634
(87)【国際公開番号】W WO2023048934
(87)【国際公開日】2023-03-30
(31)【優先権主張番号】202121042657
(32)【優先日】2021-09-21
(33)【優先権主張国・地域又は機関】IN
(31)【優先権主張番号】17/523,574
(32)【優先日】2021-11-10
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】506332063
【氏名又は名称】セールスフォース インコーポレイテッド
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100229448
【弁理士】
【氏名又は名称】中槇 利明
(72)【発明者】
【氏名】アルヴァラード,キャサリン エセニア
(72)【発明者】
【氏名】バラクリシュナ,マデュー
(72)【発明者】
【氏名】バクシ,アクシャイ
(72)【発明者】
【氏名】カールボーグ,ボウ
(72)【発明者】
【氏名】クムラ,ジョン パパンドレアス
(72)【発明者】
【氏名】グリーンバーグ,ライアン
(72)【発明者】
【氏名】バーク,ヴァネッサ
【テーマコード(参考)】
5E555
5K127
5K201
【Fターム(参考)】
5E555AA26
5E555AA61
5E555BA03
5E555BA04
5E555BA76
5E555BB03
5E555BB04
5E555BC07
5E555CB72
5E555DB41
5E555EA04
5E555FA00
5K127BA03
5K127BB23
5K127BB33
5K127CB21
5K127DA15
5K127GA14
5K127GB21
5K127GD03
5K201BB07
5K201BC27
5K201CA09
5K201EB07
5K201EC06
5K201ED05
5K201EF10
(57)【要約】
本開示は、第1のデバイス上で通信(例えば、ダイレクトメッセージ、グループメッセージ、カレンダーイベント、タスクなど)を受信し、その通信に関連付けられたリマインダが第2のデバイスに提示されることを要求するオプションを提供することに関する。例えば、通信は、モバイルアプリケーションを介してユーザに提示されてもよく、ユーザは、(例えば、ユーザがデスクトップクライアントにいるときに)デスクトップクライアントを介してリマインダが提示されることを要求してもよい。
【特許請求の範囲】
【請求項1】
モバイルクライアントを介した表示のために、通信プラットフォームのユーザアカウントに関連付けられた通信をレンダリングすることと、
前記ユーザアカウントに関連付けられたデスクトップクライアントを介した表示のために、前記通信に関連付けられたリマインダをレンダリングする要求を受信することと、
前記デスクトップクライアントの状態が条件を満たすと判定することと、
前記条件が満たされることに応答して、前記デスクトップクライアントを介した表示のために、前記通信に関連付けられたリマインダをレンダリングすることと、を含む、方法。
【請求項2】
前記デスクトップクライアントは、デスクトップ通信アプリケーションを含み、
前記状態は、前記デスクトップ通信アプリケーションが開かれているか、起動されているか、隠されていないか、又はログオンしていることのうちの1つ以上に基づく、請求項1に記載の方法。
【請求項3】
前記デスクトップクライアントは、コンピューティングデバイスを含み、
前記状態は、前記コンピューティングデバイスが起動していること、ウェイクしていること、ネットワークに接続していること、通信プロトコルを確立していること、又は入力の受信していることのうちの1つ以上に基づく、請求項1に記載の方法。
【請求項4】
前記条件が満たされることに基づいて、前記デスクトップクライアントによって、前記リマインダをレンダリングするために、前記要求に関連付けられたデータを含むデータベースにAPI呼び出しを送信することをさらに含む、請求項1に記載の方法。
【請求項5】
前記通信は、第1の通信であり、レンダリングする前記要求は、第1の要求であり、前記リマインダは、第1のリマインダであり、
前記方法は、
前記デスクトップクライアントを介した表示のために、第2の通信に関連付けられた第2のリマインダをレンダリングする第2の要求を受信することと、
基準に基づいて、前記第1のリマインダを前記第2のリマインダよりも高くランク付けすることと、
前記第1のリマインダを前記第2のリマインダよりも高い優先順位で提示することと、をさらに含む、請求項1に記載の方法。
【請求項6】
前記リマインダをレンダリングする前記要求が受信されたことを示す第2の通信を生成することと、
前記モバイルクライアントを介した表示のために、前記通信を伴うスレッドにおいて前記第2の通信をレンダリングすることと、をさらに含む、請求項1に記載の方法。
【請求項7】
前記通信は、前記ユーザアカウントに割り当てられたアクションアイテムを含む、請求項1に記載の方法。
【請求項8】
システムであって、
1つ以上のプロセッサと、
命令を記憶する1つ以上の非一時的なコンピュータ可読媒体と、を含み、前記命令は、実行されるときに、前記システムに、
モバイルクライアントを介した表示のために、通信プラットフォームのユーザアカウントに関連付けられた通信をレンダリングすることと、
前記ユーザアカウントに関連付けられたデスクトップクライアントを介した表示のために、前記通信に関連付けられたリマインダをレンダリングする要求を受信することと、
前記デスクトップクライアントの状態が条件を満たすと判定することと、
前記条件が満たされることに応答して、前記デスクトップクライアントを介した表示のために、前記通信に関連付けられたリマインダをレンダリングすることと、を含む動作を行わせる、システム。
【請求項9】
前記デスクトップクライアントは、デスクトップ通信アプリケーションを含み、
前記状態は、前記デスクトップ通信アプリケーションが開かれているか、起動されているか、隠されていないか、又はログオンしていることのうちの1つ以上に基づく、請求項8に記載のシステム。
【請求項10】
前記デスクトップクライアントは、コンピューティングデバイスを含み、
前記状態は、前記コンピューティングデバイスが起動していること、ウェイクしていること、ネットワークに接続していること、通信プロトコルを確立していること、又は入力の受信していることのうちの1つ以上に基づく、請求項8に記載のシステム。
【請求項11】
前記動作は、前記条件が満たされることに基づいて、前記デスクトップクライアントによって、前記リマインダをレンダリングするために、前記要求に関連付けられたデータを含むデータベースにAPI呼び出しを送信することをさらに含む、請求項8に記載のシステム。
【請求項12】
前記通信は、第1の通信であり、レンダリングする前記要求は、第1の要求であり、前記リマインダは、第1のリマインダであり、
前記動作は、
前記デスクトップクライアントを介した表示のために、第2の通信に関連付けられた第2のリマインダをレンダリングする第2の要求を受信することと、
基準に基づいて、前記第1のリマインダを前記第2のリマインダよりも高くランク付けすることと、
前記第1のリマインダを前記第2のリマインダよりも高い優先順位で提示することと、をさらに含む、請求項8に記載のシステム。
【請求項13】
前記動作は、
前記リマインダをレンダリングする前記要求が受信されたことを示す第2の通信を生成することと、
前記モバイルクライアントを介した表示のために、前記通信を伴うスレッドにおいて前記第2の通信をレンダリングすることと、をさらに含む、請求項8に記載のシステム。
【請求項14】
前記通信は、前記ユーザアカウントに割り当てられたアクションアイテムを含む、請求項8に記載のシステム。
【請求項15】
命令を記憶する1つ以上の非一時的なコンピュータ可読媒体であって、前記命令は、実行されるときに、1つ以上のプロセッサに、
モバイルクライアントを介した表示のために、通信プラットフォームのユーザアカウントに関連付けられた通信をレンダリングすることと、
前記ユーザアカウントに関連付けられたデスクトップクライアントを介した表示のために、前記通信に関連付けられたリマインダをレンダリングする要求を受信することと、
前記デスクトップクライアントの状態が条件を満たすと判定することと、
前記条件が満たされることに応答して、前記デスクトップクライアントを介した表示のために、前記通信に関連付けられたリマインダをレンダリングすることと、を行わせる、1つ以上の非一時的なコンピュータ可読媒体。
【請求項16】
前記デスクトップクライアントは、デスクトップ通信アプリケーションを含み、
前記状態は、前記デスクトップ通信アプリケーションが開かれているか、起動されているか、隠されていないか、又はログオンしていることのうちの1つ以上に基づく、請求項15に記載の1つ以上の非一時的なコンピュータ可読媒体。
【請求項17】
前記デスクトップクライアントは、コンピューティングデバイスを含み、
前記状態は、前記コンピューティングデバイスが起動していること、ウェイクしていること、ネットワークに接続していること、通信プロトコルを確立していること、又は入力の受信していることのうちの1つ以上に基づく、請求項15に記載の1つ以上の非一時的なコンピュータ可読媒体。
【請求項18】
前記命令は、実行されるときに、前記1つ以上のプロセッサに、前記条件が満たされることに基づいて、前記デスクトップクライアントによって、前記リマインダをレンダリングするために、前記要求に関連付けられたデータを含むデータベースにAPI呼び出しを送信することをさらに行わせる、請求項15に記載の1つ以上の非一時的なコンピュータ可読媒体。
【請求項19】
前記通信は、第1の通信であり、レンダリングする前記要求は、第1の要求であり、前記リマインダは、第1のリマインダであり、
前記命令は、実行されるときに、前記1つ以上のプロセッサに、
前記デスクトップクライアントを介した表示のために、第2の通信に関連付けられた第2のリマインダをレンダリングする第2の要求を受信することと、
基準に基づいて、第1のリマインダを第2のリマインダよりも高くランク付けする。
前記第1のリマインダを前記第2のリマインダよりも高い優先順位で提示することと、をさらに行わせる、請求項15に記載の1つ以上の非一時的なコンピュータ可読媒体。
【請求項20】
前記命令は、実行されるときに、前記1つ以上のプロセッサに、
前記リマインダをレンダリングする前記要求が受信されたことを示す第2の通信を生成することと、
前記モバイルクライアントを介した表示のために、前記通信を伴うスレッドにおいて前記第2の通信をレンダリングすることと、をさらに行わせる、請求項15に記載の1つ以上の非一時的なコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
この特許出願は、2021年9月21日に出願されたインド特許出願第202121042657号の優先権を主張する、2021年11月10日に出願された米国特許出願第17/523,574号の優先権を主張する。米国特許出願第17/523,574号及びインド特許出願第202121042657号は、その全体が、あらゆる目的のために、参照により本明細書に完全に組み込まれる。
【0002】
コンピューティングアプリケーションのユーザは、多くの場合、アプリケーション(例えば、コピー、バージョン、インスタンス、反復など)を複数のデバイスにダウンロードする。例えば、アプリケーションは、デスクトップ、ラップトップ、タブレット、及び/又はスマートフォンにダウンロードされてもよく、ユーザアカウント(例えば、同じユーザアカウント)は、各デバイスに関連付けられてもよい。場合によっては、コンピューティングアプリケーションは、デバイス及び/又はオペレーティングシステムに依存し得る異なるバージョンを含むことがある。例えば、コンピューティングアプリケーションは、デスクトップバージョン及びモバイルバージョン、並びにウェブバージョンを含んでもよい。
【背景技術】
【0003】
多くの場合、ユーザが第1のデバイスと第2のデバイスの両方にアプリケーションをダウンロードするとき(例えば、デスクトップバージョンを第1のデバイスに、モバイルバージョンを第2のデバイスに)、ユーザは、異なるデバイス上でアプリケーションを使用することを交互に行う。例えば、デスクトップバージョンが、いくつかのインスタンス(例えば、デスク又は他の固定又は半固定ワークステーションにいるとき)で使用されることがあり、モバイルバージョンが、他のインスタンス(例えば、外出時、通勤時、又は他の方法でデスクトップデバイスから離れているとき)で使用されることがある。場合によっては、通信(例えば、ダイレクトメッセージ、グループメッセージ、カレンダーイベント、タスクなど)が、第1のデバイス上のアプリケーションを介してユーザに提示されることがあるが、ユーザが他のデバイス上のアプリケーションに切り替えるときに、通信を忘れたり、見つけるのが難しくなることがある。例えば、ユーザがデスクトップコンピューティングデバイスから離れているときに、モバイルアプリケーションを介して通信が提示されることがあるが、ユーザがデスクトップアプリケーションの使用に切り替えるときに、ユーザは通信を忘れたり、通信を見つけるのが難しくなることがある。とりわけ、異なるデバイス上のアプリケーション間での切り替えは、ユーザが通信を見逃す可能性を増大させることがある。追加的に、ユーザがあるデバイス上で、異なるデバイスを介して受信された通信を検索する間に、非効率性を生じることがある。いくつかのインスタンスでは、ユーザは、(例えば、フラストレーションから)1つ以上のバージョンを潜在的に放棄する可能性がある。
【図面の簡単な説明】
【0004】
以下の詳細な説明が添付の図面を参照して記載される。図において、参照番号の左端の桁は、その参照番号が最初に現れる図を識別する。異なる図における同じ参照番号の使用は、類似又は同一の構成要素又は特徴を示す。
【0005】
図1】明細書に記載される例示的な技術を実装するために使用可能なコンピューティングデバイスの例示的なシステムを描写するブロック図を示す。
【0006】
図2】ユーザコンピューティングデバイスのネットワークを示し、そのうちのいくつかは、本明細書に記載されるように、リマインダに関連付けられたユーザインターフェースを含む。
【0007】
図3】本明細書に記載されるように、リマインダ要求を確認する情報を提示するユーザインターフェースを示す。
【0008】
図4】本明細書に記載されるように、リマインダに関連するユーザインターフェースを示す。
【0009】
図5】本明細書に記載されるように、デスクトップリマインダを提示するための例示的なプロセスを示すフロー図を含む。
【発明を実施するための形態】
【0010】
上述したように、多くのインスタンスでは、ユーザは、コンピューティングアプリケーションを複数のデバイスに(例えば、異なるバージョン、コピー、インスタンス、反復などとして)ダウンロードしてもよい。例えば、ユーザは、コンピューティングアプリケーションを、モバイルデバイスとデスクトップ(又はラップトップ)コンピューティングデバイスの両方にダウンロードしてもよい。追加的に、ユーザは、しばしば、デバイス間を行ったり来たりして、コンピューティングアプリケーションと対話する(例えば、コンピューティングアプリケーションを介して通信を送信/受信する)。本開示は、第1のデバイス(第1のクライアント)上のアプリケーションを介して通信(例えば、ダイレクトメッセージ、グループメッセージ、カレンダーイベント、タスクなど)を受信し、第2のデバイス(第2のクライアント)上のアプリケーションを介して、通信に関連付けられたリマインダが提示されることを要求するオプションを提供することに関連する。例えば、通信は、モバイルアプリケーションを介してユーザに提示されてもよく、ユーザは、(例えば、ユーザがデスクトップクライアントにいるときに)デスクトップアプリケーションを介して、通信に関連付けられたリマインダが提示されることを要求してもよい。このように、ユーザは、通信を見逃したり忘れたりする可能性が低くなり、デスクトップアプリケーション内の他の通信からとりわけ通信を見つけるのが難しくなる可能性が低くすることができる。
【0011】
本開示の例では、通信プラットフォームは、ネットワーク化されたコンピューティングデバイス間で通信サービスを提供してもよい。いくつかのインスタンスでは、通信(例えば、グループメッセージ、ダイレクトメッセージ、カレンダー招待、取引、添付、反応、メンションなど)がユーザアカウントに送信される(又はユーザアカウントによってアクセス可能である)とき、そのユーザアカウントに関連付けられた複数のクライアントが、その通信及び/又はその通信に関連付けられた通知を受信してもよい。通知の形式(例えば、配置、アクセス可能性、プレゼンテーション、外観など)は、クライアントのタイプ及び/又はクライアントの状態に依存してもよい。例えば、モバイルクライアントは、ロック画面インターフェース及び/又は通知インターフェースを含んでもよく、その場合、1つ以上の通知が、提示のために(例えば、スタックされた提示において)コンパイルされてもよい。他の例では、モバイルクライアントは、通信アプリケーションに関連付けられたデバイスホーム画面インターフェース及び/又はユーザインターフェースを含んでもよく、この場合、1つ以上の通知が、モバイルクライアントの上部から徐々にスライドインするか、又は他の方法でポップアップしてもよい。
【0012】
いくつかのインスタンスでは、ユーザは、通知に関連してリマインダを要求することを望むことがある。そのため、少なくともいくつかの例では、リマインダメニューは、通知と関連して提示され、リマインダメニューは、リマインダに関連して設定を指定又はカスタマイズするためのオプションをユーザに提供するユーザインターフェース要素を含んでもよい。例えば、リマインダメニューは、1つ以上の条件が満たされたときにリマインダが提示されるように、1つ以上の条件を指定するためのオプションをユーザに提供してもよい。ユーザは、様々な理由で通知に関連付けられたリマインダを要求したいことがある。例えば、記載のように、ユーザアカウントは、モバイルクライアントとデスクトップ/ラップトップクライアントとに関連付けられ、ユーザは、モバイルクライアントを介して通知を受信してもよいが、ユーザは、デスクトップ/ラップトップクライアントを介した通信に関して何らかのアクション(例えば、閲覧、開く、返信、反応など)をとりたいことがある。したがって、本開示の例は、デスクトップクライアントがアクティブであるとき、及び/又はユーザがデスクトップクライアントに戻る(又はデスクトップクライアントにいる)ときなどに、デスクトップクライアントに関連してリマインダを要求するための技術をユーザに提供する。
【0013】
前述のように、リマインダは、通知に役立つことがある。追加的に、リマインダは、通信(例えば、モバイルクライアント上で開かれるか、又は閲覧される通信)に有用であってもよく、したがって、本開示の例は、通信に関連して、その通信に関連してデスクトップリマインダを要求するために有用なリマインダメニューを提供してもよい。
【0014】
本開示の例では、リマインダの提示のための条件は、デスクトップクライアント(例えば、デスクトップクライアント204aに関連付けられた状態又はステータス)に基づいてもよい。例えば、リマインダの提示は、デスクトップユーザコンピューティングデバイス及び/又はデスクトップ通信アプリケーションの状態又は状態の変化などのクライアントステータスに条件付けられてもよい。リマインダを提示するための条件が満たされているかどうかを判定するためのデスクトップ状態又はステータスは、様々な方式で判定されてもよい。例えば、状態又は状態の変化は、デスクトップクライアントにおけるユーザの存在及び/又はデスクトップクライアントのアクティブ状態を示すか、又はそれに関連付けられてもよい。いくつかのインスタンスでは、条件は、デスクトップクライアントがスリープ状態からウェイクすること、再起動すること、及び/又は電源が入れられることを含んでもよく、状態は、デスクトップクライアントをウェイクさせる入力(例えば、タッチスクリーン入力、キーボード入力、ラップトップが開かれていることなど)をI/Oデバイスが受信することに基づいて、検出されてもよい。いくつかの例では、状態は、WebSocket又は他の通信状態(例えば、WiFi接続などのネットワーク接続の確立)に基づいて検出されてもよい。いくつかの例では、状態は、通信アプリケーションが開かれている、隠されていない、起動されている、及び/又はログオンされていることに基づいて、検出されてもよい。
【0015】
リマインダが要求されると、その要求の記録(例えば、その条件及び関連する通信へのリンクを含む)は、ユーザアカウントに関連付けられたリマインダ情報を記憶するためのデータベースに維持されてもよい。したがって、条件が満たされる(例えば、デスクトップクライアントのステータス)ときに、API呼び出しがデータベース上で実行されて、提示のためのリマインダに関する情報を取り出してもよい。
【0016】
リマインダ(及び/又はリマインダの指標)は、様々な方法で提示され得る。例えば、リマインダの指標は、別のアカウント(例えば、仮想アシスタント、リマインダボットなど)からのダイレクトメッセージとして提示されてもよい。他の例では、リマインダの指標は、リマインダインターフェース内に提示されてもよく、このリマインダインターフェースは、様々な基準に基づいてリマインダをソートしてもよく、リマインダの優先順位付けされた提示を提供してもよい。すなわち、いくつかのインスタンスでは、条件が満たされたときに(例えば、「自分のデスクトップにいるとき」リマインダ)、複数のリマインダがユーザに提供されてもよく、リマインダユーザインターフェースは、複数のリマインダを優先順位付けされた方式でソートしてもよい。いくつかの例では、リマインダは、要求がいつ受信されたかに基づいてランク付けされてもよい(例えば、最初に要求されたリマインダは、より高くランク付けされる)。いくつかの例では、リマインダは、リマインダに関連付けられたユーザの認識された重要性に基づいて(例えば、送信者が重要な連絡先としてマーク付けされているかどうかに基づいて)、又はリマインダに関連付けられたチャネル又はダイレクトメッセージが重要であると識別されるかどうかに基づいて(例えば、星付きで)ランク付けされてもよい。
【0017】
少なくともいくつかの例では、ユーザがデスクトップクライアントにいるときにリマインダを送信する要求は、自動的に生成されてもよい(例えば、ユーザがリマインダメニューを介して手動で要求する必要なしに)。例えば、ある条件を満たす通信に対して、ユーザが自分のデスクトップにいる(例えば、そこに到着した)ときにリマインダを要求するリマインダ要求が自動的に送信されることを指定する設定がプログラムされてもよい。例えば、満たされる場合、自動デスクトップリマインダを生成する条件は、添付ファイルあり(例えば、任意の添付ファイル又はサイズ閾値を超える添付ファイル)通信、指定されたチャネルにおける通信、指定された送信者(例えば、特に識別された送信者又は高い重要性が識別された送信者)からの通信、指定された第三者アプリケーション(例えば、プログラミング、設計などのデスクトップ動作を通常含むアプリケーション)に関連付けられた通信を含んでもよい。
【0018】
いくつかの例では、「デスクトップにいるとき」タイミングは、受信された通信以外のアイテムに適用されてもよい。例えば、ユーザが、デスクトップクライアントから離れていることがあり、ユーザがデスクトップクライアントに戻ったときにタスクを完了するリマインダを作成したいことがある。そのため、ユーザは、タスクアイテムを作成し、タスクアイテムに関連して、ユーザがデスクトップクライアントにいるときに提示されるリマインダを要求してもよい。他の例では、ユーザは、1人以上の他のユーザに送信される通信(例えば、ダイレクトメッセージ、チャネルへのメッセージ、スレッド内のメッセージ、1人以上の他のユーザのためのタスクなど)を起草し、他のユーザデバイス上での通信の提示が、他のユーザが他のユーザデバイスにいるときに基づいてタイミングを合わせるように要求してもよい。
【0019】
本開示の例は、様々な利点を提供することができる。例えば、デスクトップリマインダに基づいて、ユーザは、通信を見逃したり忘れたりする可能性が低くなり、デスクトップアプリケーション内の他の通信からとりわけ通信を見つけるのが難しくなる可能性が低くすることができる。とりわけ、これは、検索時間を低減し、検索に費やされるコンピューティングリソースを低減し、したがって、コンピューティングデバイスの性能を改善することができる。追加的に、デスクトップリマインダは、より堅牢で組織化されたデータ(例えば、デスクトップリマインダに基づく組織の追加層を含む通信)に寄与する可能性があり、これはまた、コンピューティング性能の改善に寄与することができる。これらの態様及び他の態様は、添付図面を参照して以下にさらに記載される。図面は、単なる例示的な実装であり、特許請求の範囲を限定するものと解釈されるべきではない。例えば、いくつかの例は、モバイルデバイスのためのユーザインターフェースのコンテキストで示されるが、同じ又は類似の技術は、任意のコンピューティングデバイスを使用して実装されてもよいし、ユーザインターフェースは、特定のコンピューティングデバイスのサイズ、形状、及び構成に適合されてもよい。
【0020】
図1は、本明細書に記載する技術を実行するための例示的な環境100を示す。少なくとも1つの例では、例示的な環境100は、ネットワークベースのコンピューティングシステムを活用して、通信プラットフォームのユーザがデータを交換することを可能にし得る通信プラットフォームに関連付けられてもよい。少なくとも1つの例では、通信プラットフォームは、プラットフォーム、及び関連するシステム、通信チャネル、メッセージ、及び/又は仮想空間が、定義されたユーザグループへのアクセスを制限するためのセキュリティ(許可によって定義され得る)を有するように、「グループベース」であり得る。いくつかの例では、このようなユーザグループは、共通のアクセスクレデンシャル、ドメインなどに関連付けられ得る、上述のようなグループ識別子によって定義されてもよい。いくつかの例では、通信プラットフォームは、ユーザがチャット、会合、電話、共同作業、ファイル若しくは他のデータの転送、又は他の方法で互いに通信することを可能にするための安全でプライベートな仮想空間を提供するハブであってもよい。上述のように、各グループは、ワークスペースに関連付けられ、グループに関連付けられたユーザが、チャット、会合、電話、共同作業、ファイル若しくは他のデータの転送、又は他の方法で安全なプライベート仮想空間内で互いに通信することを可能にしてもよい。いくつかの例では、グループメンバ、つまりワークスペースが同じ組織に関連付けられてもよい。いくつかの例では、グループメンバ、したがってワークスペースは、異なる組織(例えば、異なる組織識別子を有するエンティティ)に関連付けられてもよい。
【0021】
少なくとも1つの例では、例示的な環境100は、1つ以上のサーバコンピューティングデバイス(又は「サーバ」)102を含んでもよい。少なくとも1つの例では、サーバ102は、1つ以上のサーバ、又は任意の数の方法で具現化され得る他のタイプのコンピューティングデバイスを含んでもよい。例えば、サーバの例では、機能コンポーネント及びデータは、単一のサーバ、サーバのクラスタ、サーバファーム又はデータセンタ、クラウドホストコンピューティングサービス、クラウドホストストレージサービスなどで実装されてもよいが、他のコンピュータアーキテクチャが追加的又は代替的に使用されてもよい。
【0022】
少なくとも1つの例では、サーバ102は、1つ以上のネットワーク106を介して、1つ以上のユーザコンピューティングデバイス104a及び/又は104b(ユーザコンピューティングデバイス104とも呼ばれる)と通信してもよい。すなわち、サーバ102及びユーザコンピューティングデバイス104は、本明細書に記載されるように、ネットワーク106を使用して、データ(例えば、コンテンツ、情報など)を送信、受信、及び/又は記憶してもよい。ユーザコンピューティングデバイス104は、任意の好適なタイプのコンピューティングデバイス、例えば、ポータブル、セミポータブル、セミステーショナリ、又はステーショナリであってもよい。ユーザコンピューティングデバイス104のいくつかの例は、タブレットコンピューティングデバイス、スマートフォン、モバイル通信デバイス、ラップトップ、ネットブック、デスクトップコンピューティングデバイス、端末コンピューティングデバイス、ウェアラブルコンピューティングデバイス、拡張現実デバイス、モノのインターネット(IOT)デバイス、又は本明細書に記載される技術により通信を送信し、機能を実行することができる任意の他のコンピューティングデバイスを含んでもよい。図1は、ユーザコンピューティングデバイス104a及びユーザコンピューティングデバイス104bを示すが、実際には、例示的な環境100は、複数(例えば、数十、数百、数千、数百万)のユーザコンピューティングデバイスを含んでもよい。
【0023】
少なくとも1つの例では、ユーザコンピューティングデバイス104などのユーザコンピューティングデバイスは、とりわけ、通信プラットフォームを介して通信サービスにアクセスするために、ユーザによって動作可能であってもよい。ユーザは、個人、個人グループ、雇用者、企業、組織などであってもよい。いくつかの例では、ユーザ(例えば、同じユーザ)は、複数のコンピューティングデバイスを使用して、通信プラットフォームを介して通信サービスにアクセスしてもよい。例えば、ユーザは、通信サービスにアクセスするために、ユーザコンピューティングデバイス104aとユーザコンピューティングデバイス104bの両方を使用してもよい(例えば、ユーザは、通信サービスにアクセスするときに、ユーザコンピューティングデバイス104を切り替えるか、又は、交互にしてもよい)。
【0024】
ネットワーク106は、限定されるものではないが、ローカルエリアネットワーク又はワイドエリアネットワーク、インターネット、無線ネットワーク、セルラネットワーク、ローカル無線ネットワーク、Wi-Fi及び/又は近距離無線通信、Bluetooth(登録商標)、BLE(Bluetooth Low Energy)、NFC(Near Field Communication)、有線ネットワーク、若しくは任意の他のそのようなネットワーク、又はそれらの任意の組み合わせなど、当技術分野で知られている任意のタイプのネットワークを含んでもよい。このような通信に使用されるコンポーネントは、少なくとも部分的には、ネットワークのタイプ、選択された環境、又はその両方に依存してもよい。このようなネットワーク106を介して通信するためのプロトコルは周知であり、ここでは詳細には論じられない。
【0025】
少なくとも1つの例では、サーバ102は、1つ以上のプロセッサ108、コンピュータ可読媒体110、1つ以上の通信インターフェース112、及び入出力デバイス114を含んでもよい。
【0026】
少なくとも1つの例では、プロセッサ108の各プロセッサは、単一の処理ユニット又は複数の処理ユニットであってもよく、単一又は複数のコンピューティングユニット又は複数の処理コアを含んでもよい。プロセッサ108は、1つ以上のマイクロプロセッサ、マイクロコンピュータ、マイクロコントローラ、デジタル信号プロセッサ、中央処理装置(CPU)、グラフィック処理装置(GPU)、状態マシン、論理回路構成、及び/又は動作命令に基づいて信号を操作する任意のデバイスとして実装されてもよい。例えば、プロセッサ108は、本明細書に記載されるアルゴリズム及びプロセスを実行するように特別にプログラムされたか又は構成された任意の好適なタイプの1つ以上のハードウェアプロセッサ及び/又は論理回路であってもよい。プロセッサ108は、コンピュータ可読媒体に記憶されたコンピュータ可読命令をフェッチして実行するように構成されてもよく、これらの命令は、本明細書に記載される機能を実行するようにプロセッサをプログラムしてもよい。
【0027】
コンピュータ可読媒体110は、揮発性及び不揮発性メモリ、及び/又はコンピュータ可読命令、データ構造、プログラムモジュール、又は他のデータなどのデータを記憶するための任意のタイプの技術で実装されたリムーバブル及び非リムーバブル媒体を含んでもよい。このようなコンピュータ可読媒体110は、RAM、ROM、EEPROM、フラッシュメモリ又は他のメモリ技術、光ストレージ、ソリッドステートストレージ、磁気テープ、磁気ディスクストレージ、RAID記憶システム、記憶アレイ、ネットワーク接続ストレージ、記憶域ネットワーク、クラウドストレージ、又は所望のデータを記憶するために使用され、かつコンピューティングデバイスによってアクセスされ得る任意の他の媒体を含んでもよいが、これらに限定されない。サーバ102の構成に応じて、コンピュータ可読媒体110は、コンピュータ可読記憶媒体の1つのタイプであってもよく、及び/又は、言及される場合、非一時的なコンピュータ可読媒体が、エネルギー、キャリア信号、電磁波、及び信号自体などの媒体を除外する範囲で、有形の非一時的な媒体であってもよい。
【0028】
コンピュータ可読媒体110は、プロセッサ108によって実行可能な任意の数の機能的構成要素を記憶するために使用されてもよい。多くの実装では、これらの機能コンポーネントは、プロセッサ108によって実行可能であり、実行されるときに、サーバ102に対して上述した動作を実行するようにプロセッサ108を具体的に構成する命令又はプログラムを含む。コンピュータ可読媒体に記憶された機能コンポーネントは、任意選択で、ワークスペース管理コンポーネント116、チャネル管理コンポーネント118、リマインダマネージャ119、オペレーティングシステム121、及びデータストア122を含んでもよい。
【0029】
少なくとも1つの例では、ワークスペース管理コンポーネント116は、ワークスペースを管理してもよい。すなわち、少なくとも1つの例では、通信プラットフォームは、上述のように、異なるユーザグループに関連付けられ得る異なるワークスペースにパーティショニングされてもよい。上述のように、各ワークスペースは、グループ識別子に関連付けられ、1つ以上のユーザアカウントが、グループ識別子にマッピングされるか、又は他の方法で関連付けられてもよい。このようなユーザアカウントに対応するユーザは、グループの「メンバ」であってもよい。
【0030】
いくつかの例では、ワークスペース管理コンポーネント116は、ワークスペースメンバシップを管理してもよい。すなわち、ワークスペース管理コンポーネント116は、ユーザを個々のワークスペースに関連付ける要求を受信してもよく、ワークスペース管理コンポーネント116は、そのようなユーザに関連付けられたユーザアカウントを、個々のワークスペースに関連付けられたグループ識別子に関連付けてもよい。例えば、ワークスペース管理コンポーネント116は、ワークスペースにユーザを追加する要求を受信することに応答して、ユーザのユーザアカウントをワークスペースのグループ識別子に関連付けてもよい。ワークスペース管理コンポーネント116は、例えば、ユーザがワークスペースから削除されたときに、ユーザアカウントとグループ識別子との関連付けを解除してもよい。
【0031】
少なくとも1つの例では、チャネル管理コンポーネント118は、通信チャネルを管理してもよい。上述のように、少なくとも1つの例では、通信プラットフォームは、チャネルベースのメッセージングプラットフォームであってもよく、いくつかの例では、ユーザグループによって使用可能であってもよい。通信プラットフォームのユーザは、通信チャネルを介して他のユーザと通信してもよい。通信チャネル、又は仮想空間は、通信プラットフォームに関連付けられたシステム及び装置の間でデータを交換するために使用されるデータ経路であってもよい。少なくとも1つの例では、チャネル管理コンポーネント118は、様々なユーザコンピューティングデバイス間の通信チャネルを確立し、ユーザコンピューティングデバイスが互いに通信し、データを共有することを可能にする。少なくとも1つの例では、チャネル管理コンポーネント118は、そのような通信及び/又はデータの共有を管理してもよい。いくつかの例では、通信チャネルに関連付けられたデータは、ユーザインターフェースを介して提示されてもよい。少なくとも1つの例では、チャネル管理コンポーネント118は、ワークスペース管理コンポーネント116と対話して、ユーザインターフェースの生成、提示、及び/又は更新を管理してもよい。チャネル管理コンポーネント118によって実行され得る動作の追加の詳細は、以下に記載される。
【0032】
少なくとも1つの例では、リマインダマネージャ119は、通信サービスに関連付けられたリマインダを提供する要求を(例えば、ユーザコンピューティングデバイス104から)受信してもよい。例えば、通信サービスに関連付けられた動作を実行するときに、サーバ102は、ユーザコンピューティングデバイス104bに通信を提供してもよい。追加的に、ユーザコンピューティングデバイス104bは、ある条件(例えば、時間ベースの条件、スケジューリングされた条件、ユーザがコンピューティングデバイス104aに切り替える(又はそこにいる)ときなど)が発生すると、通信に関連付けられたリマインダが提供されるように要求してもよい。リマインダマネージャ119は、とりわけ、リマインダ要求を受信して記憶し、条件が満たされたときを判定し、条件が満たされると、リマインダの提示を容易にするのに役立ってもよい。
【0033】
少なくとも1つの例では、オペレーティングシステム121は、サーバ102のプロセッサ108、コンピュータ可読媒体110、ハードウェア、ソフトウェアなどを管理してもよい。
【0034】
少なくとも1つの例では、データストア122は、アクセス可能、管理可能、及び更新可能なデータを記憶するように構成されてもよい。いくつかの例では、データストア122は、図1に示すように、サーバ102と統合されてもよい。他の例では、データストア122は、サーバ102から遠隔に位置してもよく、サーバ102及び/又はユーザコンピューティングデバイス104などのユーザデバイスにアクセス可能であってもよい。データストア122は、ユーザデータ124、許可データ126、ワークスペースデータ128、及びチャネルデータ130を含んでもよい複数のデータベースを含んでもよい。追加のデータ又は代替のデータが、データストア及び/又は1つ以上の他のデータストアに記憶されてもよい。
【0035】
少なくとも1つの例では、ユーザデータ124は、通信プラットフォームのユーザに関連付けられたデータを記憶してもよい。少なくとも1つの例では、ユーザデータ124は、ユーザプロファイル(「ユーザアカウント」とも呼ばれる)にデータを記憶してもよく、ユーザプロファイルは、ユーザに関連付けられたデータを記憶することができ、このユーザに関連付けられたデータは、ユーザが関連付けられた複数の異なる組織又はエンティティに関連付けられた1つ以上のユーザ識別子、ユーザがアクセスを許可された通信チャネルに関連付けられた1つ以上の通信チャネル識別子、ユーザが関連付けられたグループ(又は、組織、チーム、エンティティなど)の1つ以上のグループ識別子、ユーザが任意の通信チャネルの所有者又は管理者であるかどうかの指標、ユーザが任意の通信チャネル制限を有するかどうかの指標、複数のメッセージ、複数の絵文字、複数の会話、複数の会話トピック、アバター、電子メールアドレス、実名(例えば、John Doe)、ユーザ名(例えば、j doe)、パスワード、タイムゾーン、ステータス(例えば、アクティブ、不在、非アクティブなどのユーザステータス)、トークンなどを含むが、これらに限定されない。
【0036】
いくつかの例では、ユーザは、複数のクライアントに関連付けられたユーザアカウント又はプロファイルを作成してもよい。例えば、ユーザアカウントは、複数のコンピューティングデバイス(例えば、デスクトップ、ラップトップ、モバイルデバイス、タブレットなど)にダウンロードされた通信アプリケーションの異なるコピー又はバージョンに関連して使用されてもよい。いくつかの例では、ユーザデータ124は、全てのクライアント間で一致させられてもよい(reconciled)。ユーザデータ124は、他の情報も含んでもよい。例えば、ユーザデータ124は、ユーザアカウントに関連して要求されたリマインダのリスト(例えば、テーブル)を記憶してもよい。リストは、例えば、リマインダの主題(例えば、リマインダが要求された通信)に関する情報と、満たされたときにリマインダが提供されるべきであることを示す条件ベースの設定を含む条件情報と、を含んでもよい。例えば、ユーザが自分のデスクトップクライアントにいるときにリマインダが要求された場合、リマインダに関連して(例えば、データストア、テーブルなどに)記憶されたデータは、そのように示してもよい。
【0037】
少なくとも1つの例では、許可データ126は、通信プラットフォームの個々のユーザの許可に関連付けられたデータを記憶してもよい。いくつかの例では、許可は、自動的に、又は、通信プラットフォームの管理者、通信プラットフォームを利用する雇用者、企業、組織、若しくは他のエンティティ、チームリーダ、グループリーダ、若しくはチームメンバ、グループメンバなどと通信するために通信プラットフォームを利用する他のエンティティ、個々のユーザなどによって設定されてもよい。いくつかの例では、個々のユーザに関連付けられた許可は、ユーザデータ124に関連付けられたアカウント又はプロファイルにマッピングされるか、又は他の方法で関連付けられてもよい。いくつかの例では、許可は、どのユーザが他のユーザと直接通信することができるか、どのチャネルにユーザがアクセスすることを許可されているか、個々のチャネルに対する制限、どのワークスペースにユーザがアクセスすることを許可されているか、個々のワークスペースに対する制限などを示してもよい。少なくとも1つの例では、許可は、定義されたユーザグループへのアクセスを制限するためのセキュリティを維持することによって、通信プラットフォームをサポートしてもよい。いくつかの例では、そのようなユーザは、上述のように、共通アクセスクレデンシャル、グループ識別子などによって定義されてもよい。
【0038】
少なくとも1つの例では、ワークスペースデータ128は、個々のワークスペースに関連付けられたデータを記憶してもよい。上述のように、通信プラットフォームは、ユーザグループに関連付けられたワークスペースにパーティショニングされてもよい。少なくとも1つの例では、グループ識別子は、ワークスペースに関連付けられてもよい。少なくとも1つの例では、グループ識別子は、対応するワークスペースに関するデータが記憶されているワークスペースデータ128内の物理アドレスを示してもよい。少なくとも1つの例では、ワークスペース許可に関連付けられたデータは、グループ識別子に関連して記憶されてもよく、ワークスペースに関連付けられたユーザを識別するデータは、グループ識別子に関連して記憶されてもよく、ワークスペースに関連付けられたメッセージ及び/又は他のコンテンツに関連付けられたデータは、グループ識別子に関連して記憶されてもよく、ワークスペースに関連付けられた通信チャネルに関連付けられたデータは、グループ識別子に関連して記憶されてもよい、などである。いくつかの例では、ワークスペースは、1つ以上の組織識別子に関連付けられてもよく、この組織識別子は、組織、又は通信プラットフォームに関連付けられた他のエンティティに関連付けられてもよい。いくつかの例では、そのようなデータは、データストア122内の他のタイプのデータ(例えば、ユーザデータ124、許可データ126、チャネルデータ130など)にマッピングされ、又は他の方法で関連付けられてもよい。
【0039】
少なくとも1つの例では、チャネルデータ130は、個々の通信チャネルに関連するデータを記憶してもよい。少なくとも1つの例では、チャネル管理コンポーネント118は、様々なユーザコンピューティングデバイス間の通信チャネルを確立し、ユーザコンピューティングデバイスが互いに通信し、データを共有することを可能にする。少なくとも1つの例では、通信チャネルに関するデータが記憶されているチャネルデータ130内の物理アドレスを示す通信チャネル識別を、通信チャネルに割り当ててもよい。通信チャネルは、組織内の任意のユーザ(例えば、組織識別子に関連付けられた)が、通信チャネルを介してデータ共有に加入し、参加することを可能にし得る「パブリック」であってもよいし、通信チャネルは、通信チャネル内のデータ通信を、一定のユーザ又は特定の役割(例えば、マネージャ、管理者など)を有するユーザに制限し得る「プライベート」であってもよい。いくつかの例では、通信チャネルは「共有」され、これにより、異なる組織に関連付けられたユーザ(例えば、異なる組織識別子に関連付けられたエンティティ)が、通信チャネルを介してデータ共有に加入し、参加することが可能になってもよい。共有チャネルは、いずれかの組織の任意のユーザがアクセスできるようにパブリックにされてもよいし、両方の組織からの一定のユーザ又は特定の役割を有するユーザによるアクセスに制限されているようにプライベートにされてもよい。
【0040】
いくつかの例では、データストア122は、個別にアクセス及び管理され得るデータの個別のアイテム(例えば、データシャード)にパーティショニングされてもよい。データシャードは、データ保持、アンファール(例えば、メッセージコンテンツがリンクを含むことの検出、リンクのメタデータのクローリング、及びメタデータの統一された要約の判定)、及び統合設定など、多くの技術的タスクを単純化してもよい。いくつかの例では、データシャードは、組織、グループ(例えば、ワークスペース)、通信チャネル、ユーザなどに関連付けられてもよい。
【0041】
いくつかの例では、個々の組織は、特定の組織識別に関するデータを記憶するデータストア122内のデータベースシャードに関連付けられてもよい。例えば、データベースシャードは、特定の組織のメンバに関連付けられた電子通信データを記憶してもよく、これにより、その特定の組織のメンバは、リアルタイム又はほぼリアルタイムで、同じ組織の他のメンバと通信し、データを交換することが可能となる。この例では、組織自体がデータベースシャードの所有者であってもよく、関連するデータがどこにどのように記憶されるかについての制御を有する。いくつかの例では、データベースシャードは、2つ以上の組織に関するデータを記憶してもよい(例えば、共有チャネル内のように)。
【0042】
いくつかの例では、個々のグループは、特定のグループ識別(例えば、ワークスペース)に関するデータを記憶するデータストア122内のデータベースシャードに関連付けられてもよい。例えば、データベースシャードは、特定のグループのメンバに関連付けられた電子通信データを記憶してもよく、これにより、その特定のグループのメンバは、リアルタイム又はほぼリアルタイムで、同じグループの他のメンバと通信し、データを交換することが可能となる。この例では、グループ自体がデータベースシャードの所有者であってもよく、関連するデータがどこにどのように記憶されるかについての制御を有する。
【0043】
いくつかの例では、通信チャネルは、特定のチャネル識別に関するデータを記憶するデータストア122内のデータベースシャードに関連付けられてもよい。例えば、データベースシャードは、通信チャネルに関連付けられた電子通信データを記憶してもよく、これにより、その特定の通信チャネルのメンバは、同じ通信チャネルの他のメンバと、リアルタイム又はほぼリアルタイムで通信し、データを交換することが可能となる。この例では、グループ又は組織がデータベースシャードの所有者であってもよく、関連するデータがどこにどのように記憶されるかについての制御を有してもよい。
【0044】
いくつかの例では、個々のユーザは、特定のユーザアカウントに関連するデータを記憶するデータストア122内のデータベースシャードに関連付けられてもよい。例えば、データベースシャードは、個々のユーザに関連付けられた電子通信データを記憶してもよく、これにより、ユーザは、リアルタイム又はほぼリアルタイムで、通信プラットフォームの他のユーザと通信し、データを交換することが可能となる。いくつかの例では、ユーザ自身がデータベースシャードの所有者であってもよく、関連するデータがどこにどのように保存されるかについての制御を有する。
【0045】
通信インターフェース112は、ネットワーク106を介して、又は直接的に、様々な他のデバイス(例えば、ユーザコンピューティングデバイス104)との通信を可能にするための1つ以上のインターフェース及びハードウェア構成要素を含んでもよい。いくつかの例では、通信インターフェース112は、Websocket、API( Application Programming Interface)(例えば、API呼び出しを使用する)、HTTP(HyperText Transfer Protocol)などを介した通信を容易にしてもよい。
【0046】
サーバ102は、さらに、様々な入出力デバイス114(例えば、I/Oデバイス)を備えてもよい。このようなI/Oデバイス114は、ディスプレイ、様々なユーザインターフェースコントロール(例えば、ボタン、ジョイスティック、キーボード、マウス、タッチスクリーンなど)、オーディオスピーカ、接続ポートなどを含んでもよい。
【0047】
少なくとも1つの例では、ユーザコンピューティングデバイス104は、1つ以上のプロセッサ132、コンピュータ可読媒体134、1つ以上の通信インターフェース136、及び入出力デバイス138(I/Oデバイス)を含んでもよい。
【0048】
少なくとも1つの例では、プロセッサ132の各プロセッサは、単一の処理ユニット又は複数の処理ユニットであってもよく、単一又は複数のコンピューティングユニット又は複数の処理コアを含んでもよい。プロセッサ132は、プロセッサ108に関して上述した任意のタイプのプロセッサを含んでもよく、プロセッサ108と同じか、又は異なっていてもよい。
【0049】
コンピュータ可読媒体134は、コンピュータ可読媒体110に関して上述した任意のタイプのコンピュータ可読媒体134を含んでもよく、コンピュータ可読媒体110と同じか、又は異なっていてもよい。コンピュータ可読媒体に記憶された機能的構成要素は、任意選択で、(例えば、サーバ102と対話するための)通信アプリケーション140と、オペレーティングシステム142と、を含んでもよい。
【0050】
少なくとも1つの例では、通信アプリケーション140は、モバイルアプリケーション、ウェブアプリケーション、又はデスクトップアプリケーションであってもよく、これらは、通信プラットフォームによって提供されてもよいし、専用アプリケーションであってもよい。いくつかの例では、環境100に関連付けられた個々のユーザコンピューティングデバイスは、通信アプリケーション140のインスタンス又はバージョン化されたインスタンスを有してもよく、このインスタンスは、アプリケーションストアからダウンロードされ、インターネットを介してアクセス可能であり、又は、本明細書に記載される動作を実行するためにプロセッサ132によって実行可能であってもよい。すなわち、通信アプリケーション140は、ユーザコンピューティングデバイス104がサーバ102と対話して、通信プラットフォームを介して利用可能な通信サービスにアクセスし、及び/又は、それを使用することを可能にするアクセスポイントであってもよい。少なくとも1つの例では、通信アプリケーション140は、例えばサーバ102を介して、様々な他のユーザコンピューティングデバイス間でのデータの交換を容易にしてもよい。少なくとも1つの例では、通信アプリケーション140は、本明細書に記載されるように、ユーザインターフェースを提示してもよい。少なくとも1つの例では、ユーザは、タッチ入力、キーボード入力、マウス入力、音声入力、又は任意の他のタイプの入力(例えば、I/Oデバイス138を使用する)を介してユーザインターフェースと対話してもよい。
【0051】
通信アプリケーション140は、様々な機能コンポーネントを含んでもよく、少なくとも1つの例では、アプリケーション140は、リマインダマネージャ143を含む。いくつかの例では、リマインダマネージャ143は、リマインダマネージャ119と同様の1つ以上の動作を実行してもよい。少なくともいくつかの例では、リマインダマネージャ143は、リマインダを要求及び/又はスケジューリングするための1つ以上のオプションを(例えば、通信と関連して)提供してもよい。例えば、リマインダマネージャ143は、時間ベースの条件(例えば、30分以内、又は指定された時間)、場所ベースの条件(例えば、クライアントがある場所にいると判定されたとき)、クライアントステータスベースの条件(例えば、デスクトップクライアントがアクティブであるとき)など、条件が満たされたときにリマインダを要求するオプションを提供してもよい。少なくともいくつかの例では、リマインダマネージャ143は、ユーザによって入力されたリマインダ要求を受信し、記憶する(memorialize)ことができる。例えば、リマインダマネージャ143は、クライアント上でローカルにリマインダ要求の記録を記憶してもよく、及び/又はリマインダ要求をサーバ102(例えば、リマインダマネージャ119)に通信してもよい。いくつかの例では、リマインダマネージャ143は、リマインダに関連付けられた条件が満たされたときを判定し、及び/又は条件が満たされたことの別のコンポーネントからの指標(例えば、警告又は通知)を受信してもよい。少なくともいくつかの例では、リマインダマネージャ143は、(例えば、指定された場合、条件が満たされると)、(例えば、通信アプリケーション140のコンテキストにおいて)ユーザコンピューティングデバイスを介してリマインダを提示してもよい。
【0052】
ユーザインターフェース144及び152の非限定的な例が図1に示されている。ユーザインターフェース144及び152は、ユーザアカウント(例えば、ユーザプロファイルインジケータ145及び154によって示されるUserAB)に関連付けられた情報を提示してもよい。図1は、ユーザインターフェース144及び152が同じユーザアカウントに関連付けられた情報を提示する例を描写しているが、他の例では、ユーザインターフェース144及び152は、異なるユーザアカウントに関連付けられた情報を提示してもよい。例えば、ユーザインターフェース144及び152は、サーバ102によって提供される通信サービスを介して情報を交換する異なるユーザアカウントに関連付けられた情報を提示してもよい。
【0053】
図1に示すように、ユーザインターフェース144は、1つ以上のチャネル、及びいくつかの例では、1つ以上のワークスペースに関連付けられたデータを提示することができる。すなわち、いくつかの例では、ユーザインターフェース144は、ユーザが複数のワークスペースにアクセスすることを可能にすることができる。いくつかの例では、ユーザインターフェース144は、ユーザ(例えば、ユーザのアカウント)が関連付けられているワークスペースに関連付けられたユーザインターフェース要素を含む第1のセクション146(例えば、ユーザインターフェース144の一部分、ペイン、又は他のパーティションニングされた単位であり得る)を含むことができる。図1には、第1のワークスペースを表す第1のユーザインターフェース要素147aと、第2のワークスペースを表す第2のユーザインターフェース要素147bの2つのユーザインターフェース要素が示されている。前述のように、このようなワークスペースは、異なるドメインに関連付けられ得る。いくつかの例では、ユーザは、第1のユーザインターフェース要素147a又は第2のユーザインターフェース要素147bと対話して、対応するワークスペースにアクセスすることができる。いくつかの例では、ユーザは、対応するワークスペースで認証するためのクレデンシャルを提供するように求められ得る。2つのユーザインターフェース要素が示されているが、任意の数のユーザインターフェース要素が、1つ以上のドメインに関連付けられ得る第1のセクション146を介して提示され得る。
【0054】
いくつかの例では、ユーザインターフェース144は、ユーザ(例えば、ユーザのアカウント)が関連付けられているワークスペースに関連付けられたデータを表すユーザインターフェース要素を含む第2のセクション148(例えば、ユーザインターフェース144の一部分、ペイン、又は他のパーティションニングされた単位であり得る)を含んでもよい。いくつかの例では、第2のセクション148を介して提示されるユーザインターフェース要素は、ユーザが特定のワークスペース又は複数のワークスペースを介してアクセスすることができる仮想空間を表すことができる。いくつかの例では、第2のセクション148は、ワークスペースに関連付けられたデータに関する1つ以上のリマインダを示すユーザインターフェース要素を含んでもよい。例えば、第2のセクション148は、選択されるときに、(例えば、bot、仮想アシスタント、リマインダマネージャ143などによって生成された)リマインダを提示するユーザインターフェース要素149を含んでもよい。いくつかの例では、リマインダインターフェース要素は、ダイレクトメッセージセクションの下に(例えば、botからのダイレクトメッセージとして)提示されてもよい。
【0055】
少なくとも1つの例において、ユーザインターフェース144は、本明細書に記載されるように、通信を容易にするための1つ以上のチャネル及び/又は他の仮想空間(例えば、ダイレクトメッセージ通信に関連付けられた仮想空間、イベント及び/又はアクションに関連付けられた仮想空間など)に投稿されたメッセージ及び/又はそれに対して取られたアクションを示すデータフィード(又は「フィード」)に関連付けられ得る第3のセクション150(例えば、ユーザインターフェース144の一部分、ペイン、又は他のパーティションニングされたユニットであり得る)を含むことができる。少なくとも1つの例では、第3のセクション150に関連付けられたデータが、同じ又は異なるワークスペースに関連付けられ得る。すなわち、いくつかの例では、第3のセクション150は、統合フィードを介して、同じ又は異なるワークスペースに関連付けられたデータを提示することができる。いくつかの例では、データは、ワークスペース、時間(例えば、関連するデータがポストされるか、又は関連する動作が他の方法で実行されるとき)、アクションのタイプ、チャネル、ユーザなどによって編成及び/又はソート可能であり得る。いくつかの例では、そのようなデータは、どのユーザ(例えば、チャネルのメンバ)がメッセージを投稿したか、及び/又はアクションを実行したかの指標に関連付けられてもよい。第3のセクション150が複数のワークスペースに関連付けられたデータを提示する例では、少なくともいくつかのデータは、そのデータがどのワークスペースに関連付けられるかの指標に関連付けられてもよい。いくつかの例では、第3のセクション150は、ユーザインターフェース要素149が選択されたときに、1つ以上のリマインダに関連付けられたデータを提示してもよい。
【0056】
少なくとも1つの例では、第1のセクション146、第2のセクション148、及び第3のセクション150は、組み合わせて、ユーザが通信プラットフォームと対話することができる「グループベースの通信ユーザインターフェース」に関連付けられ得る。ユーザインターフェース144に関連付けられた追加の詳細は、図2及び図4を参照して以下に記載される。
【0057】
図1に示すように、ユーザインターフェース152は、1つ以上の通信チャネル、及び、いくつかの例では、1つ以上のワークスペースに関連付けられたデータを提示してもよい。すなわち、いくつかの例では、ユーザインターフェース152は、複数のワークスペースからのデータを単一のユーザインターフェースに統合し、(例えば、ユーザコンピューティングデバイス104bの)ユーザが、自分が関連付けられたか、及び/又は他の方法で複数のワークスペースに関連付けられた他のユーザと通信する複数のワークスペースに関連付けられたデータにアクセスし、及び/又は対話するようにする。例えば、第1の領域又はペイン158(例えば、ヘッダ領域)は、ユーザ(例えば、ユーザのアカウント)が関連付けられたワークスペースに関連付けられたインジケータ(例えば、ユーザインターフェース要素又はオブジェクト)を含んでもよい。いくつかの例では、第1の領域158は、ワークスペース識別子160(例えば、インジケータ147aと同様であってもよい)を含んでもよく、この識別子は、選択されるときに、異なるワークスペース(図1には明示的に図示せず)の選択又は追加を可能にするサイドバー又は他のユーザインターフェース(例えば、他のペイン又はウィンドウ)を開く。
【0058】
例として、ユーザインターフェース152は、ユーザ(例えば、ユーザのアカウント)が関連付けられているワークスペース(例えば、図1のワークスペースA)に関連付けられたデータを表すインジケータ(例えば、ユーザインターフェース要素又はオブジェクト)を含む第2の領域162、又はペインを含んでもよい。例えば、第2の領域162は、メンション/リアクションに関するインジケータ(例えば、UserABによって投稿されたメッセージに対するリアクションを含む、又はUserABにメンションする、グループ間で共有されるメッセージ)、ユーザアカウントに関連付けられた通信スレッドに関するインジケータ(例えば、UserABが含まれるスレッド、又はUserABがアクセスできるスレッド)、ユーザアカウントと共有される未読の通信(例えば、UserABがアクセスできる)、ユーザアカウントがメンバであるチャネル(例えば、UserABがメンバであるチャネル)、他のユーザとのダイレクトメッセージ交換などを含んでもよい。少なくともいくつかの例では、第2の領域162は、ユーザインターフェース要素(例えば163)を含んでもよく、このユーザインターフェースは、選択されるときに、例えばカテゴリの下のリストを展開することによって、それぞれのカテゴリ(例えば「チャネル」カテゴリ又は「ダイレクトメッセージ」カテゴリ)の下に1つ以上のサブアイテムを提示する。少なくともいくつかの例では、第2の領域162は、ユーザインターフェース要素(例えば、165)を含んでもよく、このユーザインターフェースは、選択されるときに、カテゴリの下で検索するため、及び/又はカテゴリの下で新しいアイテムを作成するための別のユーザインターフェースを提示する。追加的に、いくつかの例では、第2の領域162は、ワークスペースに関連付けられたデータに関する1つ以上のリマインダを示すユーザインターフェース要素を含んでもよい。例えば、第2のセクション162は、ユーザインターフェース要素167を含んでもよく、このユーザインターフェースは、選択されるときに、(例えば、bot、仮想アシスタント、リマインダマネージャ143などによって生成された)リマインダを提示し、及び/又は複数のリマインダを提示する異なるユーザインターフェースにナビゲートする。
【0059】
少なくともいくつかの例では、ユーザインターフェース152は、異なるユーザインターフェース、ペイン、又はウィンドウにナビゲートするために選択可能な他のインジケータ(例えば、ユーザインターフェース要素又はオブジェクト)を有する第3の領域164(例えば、フッタ領域)を含んでもよい。いくつかの例では、第3の領域164に提示されるインジケータは、ユーザコンピューティングデバイス104が1つユーザインターフェースから別のユーザインターフェースにナビゲートするとき(例えば、領域158及び/又は162のコンテンツが変化するとき)、第3の領域164に永続的に表示されてもよい。例えば、第3の領域164は、ホーム画面インジケータを含んでもよく、このホーム画面インジケータは、選択されるときに、ホーム画面(例えば、ユーザインターフェース152)にナビゲートする。さらに、いくつかの例では、第3の領域164は、選択されるときに、1つ以上のダイレクトメッセージスレッドを表示するウィンドウにナビゲートするダイレクトメッセージインジケータと、選択されるときに、UserABをメンションする通信及び/又はUserABによって投稿された通信にリアクションする通信を表示するウィンドウにナビゲートするメンション/リアクションインジケータとを含んでもよい。第3の領域164は、検索要素及びプロファイルインジケータ154などの1つ以上の他の選択可能なインジケータを含んでもよい。ユーザインターフェース144に関連付けられた追加の詳細は、図2及び図3を参照して以下に記載される。
【0060】
少なくとも1つの例では、オペレーティングシステム142は、サーバ102のプロセッサ132、コンピュータ可読媒体134、ハードウェア、ソフトウェアなどを管理してもよい。
【0061】
通信インターフェース136は、ネットワーク106を介して、又は直接的に、様々な他のデバイス(例えば、ユーザコンピューティングデバイス104)との通信を可能にするための1つ以上のインターフェース及びハードウェア構成要素を含んでもよい。いくつかの例では、通信インターフェース136は、Websocket、API(例えば、API呼び出しを使用する)、HTTPなどを介した通信を容易にしてもよい。
【0062】
ユーザコンピューティングデバイス104は、さらに、様々な入出力デバイス138(例えば、I/Oデバイス)を備えてもよい。このようなI/Oデバイス138は、ディスプレイ、様々なユーザインターフェースコントロール(例えば、ボタン、ジョイスティック、キーボード、マウス、タッチスクリーンなど)、オーディオスピーカ、接続ポートなどを含んでもよい。
【0063】
本明細書に記載される技術は、ワークスペース管理コンポーネント116、チャネル管理コンポーネント118、リマインダマネージャ119及び/又は143、並びに通信アプリケーション140によって実行されるものとして記載されているが、本明細書に記載される技術は、サーバ102、ユーザコンピューティングデバイス104、又はそれらの組み合わせに関連付けられ得る、任意の他のコンポーネント、又はコンポーネントの組み合わせによって実行されてもよい。
【0064】
ここで、図2を参照すると、図2は、とりわけ、図1を参照して上述したユーザインターフェース144及び152(並びに他のユーザインターフェース)、リマインダ、及び他の態様に関連付けられた追加の詳細を示す。図2は、ユーザアカウント(UserAB)が2つのクライアント204a及び204bに関連付けられる例を示し、クライアントは、ユーザコンピューティングデバイス104a及びユーザコンピューティングデバイス104b、及び/又は通信アプリケーション140a(例えば、ユーザコンピューティングデバイス104a上の通信アプリケーション140のインスタンス)及び通信アプリケーション140b(例えば、ユーザコンピューティングデバイス104b上の通信アプリケーション140のインスタンス)を含んでもよい。すなわち、クライアント204aは、ユーザコンピューティングデバイス104a及び/又はユーザコンピューティングデバイス104aによって実行されている通信アプリケーション140aを含んでもよく、クライアント204bは、ユーザコンピューティングデバイス104b及び/又はユーザコンピューティングデバイス104bによって実行されている通信アプリケーション140bを含んでもよい。上述したように、いくつかのインスタンスでは、ユーザは、コンピューティングアプリケーションを複数のデバイスに(例えば、コンピューティングアプリケーションの異なるバージョン、コピー、インスタンス、反復などとして)ダウンロードしてもよい。例えば、ユーザは、通信アプリケーション140aをユーザコンピューティングデバイス104a(例えば、デスクトップ又はラップトップ)にダウンロードし、通信アプリケーション140bをユーザコンピューティングデバイス104b(例えば、モバイルデバイス又はタブレット)にダウンロードしてもよい。追加的に、ユーザは、デバイス104aと104bとの間を行ったり来たりして、コンピューティングアプリケーションと、及び通信プラットフォームサーバ(単数又は複数)202によって提供される通信サービスと対話(例えば、これらを介して通信を送受信)してもよい。
【0065】
図2は、1つ以上のユーザデバイス205が、通信プラットフォームサーバ202を活用して通信206を提供してもよいことを示す。図2では、通信206は、チャネル(例えば、Channel-A)に関連付けられたメッセージ(例えば、グループメッセージ)を含むように示されている。ダイレクトメッセージ、カレンダー招待又は他の会議要求、タスク、取引、添付ファイル、反応、メンション、絵文字など、様々な他のタイプの通信がユーザデバイス205から提供されてもよい。いくつかの例では、第1のクライアント及び第2のクライアントに関連付けられたユーザアカウント(例えば、同じユーザアカウント)は、通信206にアクセスする(例えば、受信及び/又は対話する)許可を有する。いくつかの例では、通信206(例えば、通信206のコピー)は、第1のクライアント204a及び第2のクライアント204bに提供されてもよい。
【0066】
少なくともいくつかの例では、第1のクライアント204a及び第2のクライアント204bは、通信206に関連付けられた1つ以上の通知を提示してもよく、通知の形式(例えば、配置、アクセス可能性、提示、外観など)は、クライアントの状態に依存してもよい。例えば、クライアント204bは、ロック画面インターフェース(例えば、クライアント204bがロック状態であるときに提示されるインターフェース)又は通知インターフェース(例えば、ユーザが下にスワイプすることなどによって通知センタにナビゲートするときに提示されるインターフェース)を表すことができるインターフェース208を含んでもよい。インターフェース208によって提供される例では、通知は、通信アプリケーション、通信206に関連付けられた時間、及び通信206のコンテンツの少なくとも一部分のうちの1つ以上を識別するインターフェース要素210を含んでもよい。追加的に、図2は、クライアント204bがロック解除され、ユーザコンピューティングデバイス104bによって実行可能なアプリケーションを提示するか、又はユーザコンピューティングデバイス204bにダウンロードされるときに提示され得る、デバイスホーム画面インターフェース212を含む、クライアント204bの別の例示的な状態を示す。インターフェース212によって提供される例では、通知は、インターフェース要素210と同様であり、かつインターフェース210の上部からフローティングしてもよいインターフェース要素214を含んでもよく、オーバーレイ若しくはポップアップとして徐々に現れてもよく、又は他の方法でホーム画面又はアプリケーションにわたって提示されてもよい。追加的に、図2は、通信アプリケーション140bに関連付けられたユーザインターフェース216(例えば、図1に関して記載されたユーザインターフェース152と同様のもの)を含む、クライアント204bの別の例示的な状態を示す。インターフェース216によって提供される例では、通知は、インターフェース要素214と同様のインターフェース要素218を含んでもよい。
【0067】
図2は、通信206に関連付けられたコンテンツ222を提示してもよいユーザインターフェース220を含む、通信206に関する別の例を示す。例えば、クライアント204bは、通知インターフェース要素210、214、又は218のうちの1つの一部分の選択に応答して、及び/又はユーザインターフェース216内のインターフェース要素の選択(例えば、「unreads」フォルダインターフェース要素又は「#channel-a」フォルダインターフェース要素の選択)に応答して、ユーザインターフェース220及びコンテンツ222を提示してもよい。ユーザインターフェース220は、応答インターフェース要素、タグインターフェース要素、転送インターフェース要素、及びメニュー拡張インターフェース要素など、コンテンツ222と対話するための要素を含んでもよい。
【0068】
本開示の少なくともいくつかの例は、通知及び/又は通信(例えば、ダイレクトメッセージ、グループメッセージ、タスク、カレンダーイベント、取引など)に関連してリマインダメニューを提示することを含む。本開示に記載されるように、リマインダメニューは、リマインダに関連して設定を指定又はカスタマイズするためのオプションをユーザに提供するユーザインターフェース要素を含む。例えば、リマインダメニューは、1つ以上の条件が満たされたときにリマインダが提示されるように、1つ以上の条件を指定するためのオプションをユーザに提供してもよい。図2は、リマインダメニュー224、226、228が通知210、214、218に関連して(それぞれ)提示される様々な例を示す。リマインダメニュー224、226、及び228は、タッチ入力(例えば、長押し)などの様々なユーザ入力に応答して提示されてもよい。別の例では、リマインダメニュー230は、長押し入力を介して、及び/又はメニュー拡張インターフェース要素232を介してメニューオプションを拡張することによって、呼び出されてもよい。
【0069】
ユーザは、様々な理由で通信に関連付けられたリマインダを要求したいことがある。例えば、記載のように、ユーザアカウントは、モバイルクライアント204bとデスクトップ/ラップトップクライアント204aとに関連付けられ、ユーザは、モバイルクライアント204bを介して通知を受信してもよいが、ユーザは、デスクトップ/ラップトップクライアント204aを介した通信に関して何らかのアクションをとりたいことがある。そのため、デスクトップクライアント204aがアクティブであるとき、及び/又はユーザがデスクトップクライアント204aに戻る(又はデスクトップクライアント204aにいる)ときなどに、デスクトップクライアント117 aに関連してリマインダを要求することが有用であることがある。
【0070】
本開示の例では、リマインダの提示のための条件は、デスクトップクライアント204a(例えば、デスクトップクライアント204aに関連付けられた状態又はステータス)に基づいてもよい。例えば、リマインダの提示は、デスクトップユーザコンピューティングデバイス及び/又はデスクトップ通信アプリケーション(例えば、140a)の状態又は状態の変化などのクライアントステータスに条件付けられてもよい。少なくともいくつかの例では、リマインダ提示は、クライアント204bの場所が場所ベースの閾値(例えば、位置の閾値距離内)を満たすかどうかなど、クライアント場所にも(又は代替的に)条件付けられてもよい。そのため、いくつかの例では、リマインダメニュー(例えば、224、226、228、及び230)は、(例えば、デスクトップクライアント204aの状態又はステータスが条件を満たすときに)リマインダがデスクトップクライアント204aに提示されることを要求するためのリマインダオプションインターフェース要素236を含んでもよい。さらなる例では、リマインダ提示のための条件は、時間ベースの条件234(例えば、30分以内、1時間以内、明日、来週など)又はカレンダーベースの条件(例えば、指定された日付)などの様々な他の基準を含んでもよい。
【0071】
いくつかの例では、リマインダが要求されるときに(例えば、インターフェース要素236の選択によって)、リマインダマネージャ143bは、要求されたリマインダを記録/記憶し、及び/又はリマインダ要求をサーバ側リマインダマネージャ119に通信してもよい。追加的に、リマインダ要求は、リマインダ提示が基づく条件(例えば、デスクトップクライアント204aのステータス)及び関連する通信(例えば、通信206又は通信206へのリンク)などの関連情報と共に(例えば、データストア122に)記憶されてもよい。
【0072】
図3を簡単に参照すると、図3は、1つ以上の例によるユーザインターフェース320の例を提示する。少なくともいくつかの例では、リマインダ要求がユーザアカウントから受信されたとき、確認通信がユーザアカウントに送信され、ユーザが自分のデスクトップクライアントにいるときにリマインダが提供されることを確認する。例えば、ユーザインターフェース320は、コンテンツ222に関連付けられたスレッドの一部分を提示し、スレッドは、確認通信(例えば、リマインダボットからの)に関連付けられたコンテンツ322を含む。
【0073】
図2を再び参照すると、少なくともいくつかの例では、デスクトップクライアント204aのリマインダマネージャ143aは、リマインダ提示が条件付けられる1つ以上の基準の何らかの識別(例えば、リスト、設定など)を含んでもよい。例えば、リマインダマネージャ143aは、リマインダ提示がデスクトップクライアント204aの状態に基づいてもよいことを示す情報を含んでもよい。そのため、条件によって示される状態が発生する(例えば、リマインダマネージャ143aによって判定される)ときに、リマインダマネージャ143aは、サーバ側リマインダマネージャ119へのAPI呼び出しを実行して、検出されたステータスに条件付けられた任意の要求されたリマインダがデータベースに記憶されているかどうかを判定してもよい。もしそうであれば、リマインダマネージャ143aは、サーバ側リマインダマネージャ119から、提示されるべきリマインダの識別を受信してもよく、リマインダは、ユーザインターフェース244を介して提示されてもよい。
【0074】
リマインダ(及び/又はリマインダの指標)は、様々な方式でユーザインターフェース244に提示されてもよい。例えば、ユーザインターフェース244は、ダイレクトメッセージインターフェース要素249(例えば、仮想パーソナルアシスタントなどのリマインダbotからのダイレクトメッセージ)において、未読の通信(例えば、リマインダを含む通信)が受信されたことを示してもよい。別の例では、ユーザインターフェース244は、グループ化された通信インターフェース要素251において、リマインダが受信されたことを示してもよい。追加的に、インターフェース要素249及び/又は251が選択されるときに、領域250は、通信206に関連付けられたリマインダ270を表示してもよい。リマインダ及びリマインダに関連付けられた指標は、他の方式で提示されてもよい。例えば、図4を簡単に参照すると、ユーザインターフェース400が、いくつかの例に従って描写されている。いくつかのインスタンスでは、ユーザインターフェース400は、様々な基準に基づいてリマインダをソートするのに役立ってもよいリマインダインターフェース要素402を含んでもよい。例えば、図4では、リマインダインターフェース要素402は、リマインダ提示のために指定された条件に基づいて、ソートされたレンダリングを提供してもよい。いくつかの例では、リマインダインターフェース要素402は、デスクトップインジケータ404を含んでもよく、このデスクトップインジケータは、選択されるときに、デスクトップのステータス(例えば、デスクトップがアクティブであるとき、及び/又はユーザがデスクトップにいると認識されたとき)に条件付けられた1つ以上のデスクトップリマインダを提示する。リマインダインターフェース要素402は、時間ベースのインジケータ406などの他のインジケータを含んでもよく、この時間ベースのインジケータは、選択されるときに、時間ベースのスケジューリング(例えば、30分以内)に基づいて提示されるように条件付けされた1つ以上のリマインダを提示してもよい。、他の例では、リマインダインターフェース要素は、チャネル(例えば、チャネルに関連付けられたリマインダ)又はユーザアカウント(例えば、ユーザアカウントからの、又はユーザアカウントにメンションされた、若しくはユーザアカウントによってリアクションされた通信に関連付けられたリマインダ)などの他の基準に基づいてソートされたプレゼンテーションを提供する。
【0075】
図2を参照すると、リマインダマネージャ143bは、デスクトップ状態又はデスクトップ状態の変化に関連付けられた様々な基準に基づいて、「自分のデスクトップにいるとき」リマインダを提示するための条件が満たされたことを判定してもよい。いくつかの例では、状態又は状態の変化は、デスクトップクライアント204aにおけるユーザの存在及び/又はデスクトップクライアント204aのアクティブ状態を示すか、又はそれに関連付けられてもよい。例えば、条件は、デスクトップクライアント204aがスリープ状態からウェイクすること、再起動すること、及び/又は電源が入れられることを含んでもよい。この状態は、デスクトップクライアント204aをウェイクする入力(例えば、タッチスクリーン入力、キーボード入力、ラップトップが開かれていることなど)をI/Oデバイスが受信することに基づいて検出されてもよい。いくつかの例では、状態は、WebSocket又は他の通信状態(例えば、Wi-Fi接続などのネットワーク接続の確立)に基づいて検出されてもよい。いくつかの例では、状態は、通信アプリケーション140aが開かれている、隠されていない、起動されている、及び/又はログオンされていることに基づいて、検出されてもよい。示されるように、リマインダマネージャ143aは、これらの状態のうちの1つ以上を監視し、条件が満たされるときに、サーバ(例えば、図1のサーバ及び/又はリマインダマネージャ119)へのAPI呼び出しを実行して、条件が満たされると(例えば、ユーザがデスクトップにいるとき)、デスクトップクライアント204a上に提示されるように任意のリマインダが要求されているかどうかを判定してもよい。
【0076】
他の例では、リマインダの提示は、ユーザが自分のデスクトップにいることを示唆し得る他の情報に基づいてもよい。例えば、リマインダマネージャ143aは、モバイルクライアント204bがデスクトップクライアント204aに近接していることを示す情報を(例えば、Bluetooth接続若しくは他の無線接続を介して、又は有線接続を介して)受信してもよく、モバイルクライアント204bがデスクトップクライアント204aに近接していることに基づいて、デスクトップ上にリマインダが提示されてもよい。いくつかの例では、デスクトップクライアント及び/又はモバイルクライアントの場所は、Bluetooth接続、GPSデータ、RFIDデータ、バーコード(例えば、QR)データ、又は近距離無線通信(near field communication、NFC)データに基づいてもよい。
【0077】
図2は、デスクトップリマインダが(例えば、インターフェース要素236を選択することによって)手動で要求され得る1つ以上の例を提供する。他の例では、ユーザがデスクトップクライアントにいるときにリマインダを送信する要求は、自動的に生成されてもよい。例えば、ある条件を満たす通信に対して、ユーザが自分のデスクトップにいる(例えば、そこに到着した)ときにリマインダを要求するリマインダ要求が自動的に送信されることを指定する設定がプログラムされてもよい。例えば、満たされる場合、自動デスクトップリマインダを生成する条件は、添付ファイルあり(例えば、任意の添付ファイル又はサイズ閾値を超える添付ファイル)通信、指定されたチャネルにおける通信、指定された送信者(例えば、特に識別された送信者又は高い重要性が識別された送信者)からの通信、指定された第三者アプリケーション(例えば、プログラミング、設計などのデスクトップ動作を通常含むアプリケーション)に関連付けられた通信を含んでもよい。いくつかの実施形態では、リマインダ要求は、特定のイベントがトリガされるときに、ワークフローによって自動的に生成されてもよい。いくつかの実施形態では、リマインダ要求は、特定のイベントが発生したときに、アプリケーションによって自動的に生成されてもよい。
【0078】
追加の例では、ユーザは、デスクトップクライアントに戻ったときに複数のリマインダが提供されることを要求してもよい。そのため、本開示の例は、より重要なリマインダを最初に提示することを試みるなど、様々な基準に基づいてリマインダをランク付けしてもよい。いくつかの例では、リマインダは、要求がいつ受信されたかに基づいてランク付けされてもよい(例えば、最初に要求されたリマインダは、より高くランク付けされる)。いくつかの例では、リマインダは、リマインダに関連付けられたユーザの認識された重要性に基づいて(例えば、送信者が重要な連絡先としてマーク付けされているかどうかに基づいて)、又はリマインダに関連付けられたチャネル又はダイレクトメッセージが重要であると識別されるかどうかに基づいて(例えば、星付きで)ランク付けされてもよい。
【0079】
図2は、デスクトップリマインダ(例えば、自分のデスクトップにいるときにリマインダを提供する)がユーザからの通信に関連付けられる1つ以上の例を提供する。いくつかの例では、「デスクトップにいるとき」タイミングは、他のアイテムに適用されてもよい。例えば、ユーザが、デスクトップクライアントから離れていることがあり、ユーザがデスクトップクライアントにいるときにタスクを完了するリマインダを作成したいことがある。そのため、通信アプリケーション140bを使用して、ユーザは、新しい通信(例えば、ユーザアカウントに割り当てられた、又はユーザアカウントによる完了のための何らかのアクションアイテムを伴うタスク又は他の通信)を作成し、タスクアイテムに関連して、ユーザがデスクトップクライアント204aにいるときに提示されるリマインダを要求してもよい。他の例では、ユーザは、1人以上の他のユーザに送信される通信(例えば、ダイレクトメッセージ、チャネルへのメッセージ、スレッド内のメッセージ、1人以上の他のユーザのためのタスクなど)を起草し、他のユーザデバイス上での通信の提示が、他のユーザが他のユーザデバイスにいるときに基づいてタイミングを合わせるように要求してもよい。
【0080】
図5を参照すると、デスクトップリマインダを要求し提供するための例示的なプロセス500が示されている。いくつかのインスタンスでは、プロセス500の一部又は全部は、環境100内の1つ以上のコンポーネント、又は図1図2図3、及び/又は図4に関して説明した1つ以上のコンポーネントによって実行されてもよい。限定ではなく例として、プロセス500で参照される通信プラットフォームは、(通信プラットフォーム)サーバ102に関連付けられたコンピューティングデバイスを表してもよく、プロセス500で参照されるクライアントは、ユーザコンピューティングデバイス104及び/又はアプリケーション140を表してもよい。しかし、プロセス500は、環境100内のコンポーネントによって実行されることに限定されない。
【0081】
少なくともいくつかの例では、動作502において、プロセスは、モバイルクライアントを介した表示のために、通信プラットフォームのユーザアカウントに関連付けられた通信をレンダリングすることを含む。、例えば、レンダリングされた通信は、通知504、又は通知504に関連付けられたメッセージ506を含んでもよい。
【0082】
少なくともいくつかの例では、動作508において、プロセス500は、ユーザアカウントに関連付けられたデスクトップクライアントを介した表示のために、通信に関連付けられたリマインダをレンダリングする要求を受信する。例えば、インターフェース要素510の選択(例えば、ユーザがデスクトップクライアントにいるときにリマインダを提示させるリマインダオプションを表す)、又はインターフェース要素512の選択(例えば、ユーザがデスクトップクライアントにいるときにリマインダを提示させるリマインダオプションも表す)を示す入力が受信されてもよい。
【0083】
少なくともいくつかの例では、動作514において、プロセス500は、デスクトップクライアントの状態が条件を満たすと判定することを含む。例えば、デスクトップクライアント516は、ユーザがデスクトップクライアント516にいることを示す状態及び/又はデスクトップクライアントのアクティブ状態の存在を(条件に基づいて)判定してもよい。いくつかの例では、状態は、デスクトップクライアントがスリープ状態から目覚め、再起動し、及び/又は電源が入れられることを含むことができ、状態は、デスクトップクライアントをウェイクさせる入力(例えば、タッチスクリーン入力、キーボード入力、ラップトップが開かれているなど)をI/Oデバイスが受信することに基づいて、検出されてもよい。いくつかの例では、状態は、WebSocket又は他の通信状態(例えば、WiFi接続などのネットワーク接続の確立)に基づいて検出されてもよい。いくつかの例では、状態は、通信アプリケーションが開かれている、隠されていない、起動されている、及び/又はログオンされていることに基づいて、検出されてもよい。
【0084】
少なくともいくつかの例では、動作518において、プロセス500は、デスクトップクライアントを介した表示するために、条件が満たされていることに基づいて、通信に関連付けられたリマインダをレンダリングすることを含む。例えば、ユーザインターフェース520では、リマインダの1つ以上の指標522及び/又は524が提示されてもよい。いくつかの例では、リマインダ526は、(例えば、指標522又は524のうちの1つが選択されたときに)提示されてもよい。例示的な箇条
【0085】
A:モバイルクライアントを介した表示のために、通信プラットフォームのユーザアカウントに関連付けられた通信をレンダリングすることと、ユーザアカウントに関連付けられたデスクトップクライアントを介した表示のために、通信に関連付けられたリマインダをレンダリングする要求を受信することと、デスクトップクライアントの状態が条件を満たすと判定することと、条件が満たされることに応答して、デスクトップクライアントを介した表示のために、通信に関連付けられたリマインダをレンダリングすることと、を含む、方法。
【0086】
B:デスクトップクライアントは、デスクトップ通信アプリケーションを含み、状態は、デスクトップ通信アプリケーションが開かれているか、起動されているか、隠されていないか、又はログオンしていることのうちの1つ以上に基づく、段落Aに記載の方法。
【0087】
C:デスクトップクライアントは、コンピューティングデバイスを含み、状態は、コンピューティングデバイスが起動していること、ウェイクしていること、ネットワークに接続していること、通信プロトコルを確立していること、又は入力の受信していることのうちの1つ以上に基づく、段落A又はBに記載の方法。
【0088】
D:条件が満たされることに基づいて、デスクトップクライアントによって、リマインダをレンダリングするために、要求に関連付けられたデータを含むデータベースにAPI呼び出しを送信することをさらに含む、段落A~Cのいずれか1つに記載の方法。
【0089】
E:通信は、第1の通信であり、レンダリングする要求は、第1の要求であり、リマインダは、第1のリマインダであり、方法は、デスクトップクライアントを介した表示のために、第2の通信に関連付けられた第2のリマインダをレンダリングする第2の要求を受信することと、基準に基づいて、第1のリマインダを第2のリマインダよりも高くランク付けすることと、第1のリマインダを第2のリマインダよりも高い優先順位で提示することと、をさらに含む、段落 A~Dのいずれか1つに記載の方法。
【0090】
F:リマインダをレンダリングする要求が受信されたことを示す第2の通信を生成することと、モバイルクライアントを介した表示のために、通信を伴うスレッドにおいて第2の通信をレンダリングすることと、をさらに含む、段落A~Eのいずれか1つに記載の方法。
【0091】
G:通信は、ユーザアカウントに割り当てられたアクションアイテムを含む、段落 A~Fのいずれか1つに記載の方法。
【0092】
H:システムであって、1つ以上のプロセッサと、命令を記憶する1つ以上の非一時的なコンピュータ可読媒体と、を含み、命令は、実行されるときに、システムに、モバイルクライアントを介した表示のために、通信プラットフォームのユーザアカウントに関連付けられた通信をレンダリングすることと、ユーザアカウントに関連付けられたデスクトップクライアントを介した表示のために、通信に関連付けられたリマインダをレンダリングする要求を受信することと、デスクトップクライアントの状態が条件を満たすと判定することと、条件が満たされることに応答して、デスクトップクライアントを介した表示のために、通信に関連付けられたリマインダをレンダリングすることと、を含む動作を行わせる、システム。
【0093】
I:デスクトップクライアントは、デスクトップ通信アプリケーションを含み、状態は、デスクトップ通信アプリケーションが開かれているか、起動されているか、隠されていないか、又はログオンしていることのうちの1つ以上に基づく、段落Hに記載のシステム。
【0094】
J:デスクトップクライアントは、コンピューティングデバイスを含み、状態は、コンピューティングデバイスが起動していること、ウェイクしていること、ネットワークに接続していること、通信プロトコルを確立していること、又は入力の受信していることのうちの1つ以上に基づく、段落H又はIに記載のシステム。
【0095】
K:動作は、条件が満たされることに基づいて、デスクトップクライアントによって、リマインダをレンダリングするために、要求に関連付けられたデータを含むデータベースにAPI呼び出しを送信することをさらに含む、段落H~Jのいずれか1つに記載のシステム。
【0096】
L:通信は、第1の通信であり、レンダリングする要求は、第1の要求であり、リマインダは、第1のリマインダであり、動作は、デスクトップクライアントを介した表示のために、第2の通信に関連付けられた第2のリマインダをレンダリングする第2の要求を受信することと、基準に基づいて、第1のリマインダを第2のリマインダよりも高くランク付けすることと、第1のリマインダを第2のリマインダよりも高い優先順位で提示することと、をさらに含む、段落H~Kのいずれか1つに記載のシステム。
【0097】
M:動作は、リマインダをレンダリングする要求が受信されたことを示す第2の通信を生成することと、モバイルクライアントを介した表示のために、通信を伴うスレッドにおいて第2の通信をレンダリングすることと、をさらに含む、段落H~Lのいずれか1つに記載のシステム。
【0098】
N:通信は、ユーザアカウントに割り当てられたアクションアイテムを含む、段落H~Mのいずれか1つに記載のシステム。
【0099】
O:命令を記憶する1つ以上の非一時的なコンピュータ可読媒体であって、命令は、実行されるときに、1つ以上のプロセッサに、モバイルクライアントを介した表示のために、通信プラットフォームのユーザアカウントに関連付けられた通信をレンダリングすることと、ユーザアカウントに関連付けられたデスクトップクライアントを介した表示のために、通信に関連付けられたリマインダをレンダリングする要求を受信することと、デスクトップクライアントの状態が条件を満たすと判定することと、条件が満たされることに応答して、デスクトップクライアントを介した表示のために、通信に関連付けられたリマインダをレンダリングすることと、を行わせる、1つ以上の非一時的なコンピュータ可読媒体。
【0100】
P:デスクトップクライアントは、デスクトップ通信アプリケーションを含み、状態は、デスクトップ通信アプリケーションが開かれているか、起動されているか、隠されていないか、又はログオンしていることのうちの1つ以上に基づく、段落Oに記載の1つ以上の非一時的なコンピュータ可読媒体。
【0101】
Q:デスクトップクライアントは、コンピューティングデバイスを含み、状態は、コンピューティングデバイスが起動していること、ウェイクしていること、ネットワークに接続していること、通信プロトコルを確立していること、又は入力の受信していることのうちの1つ以上に基づく、段落O又はPに記載の1つ以上の非一時的なコンピュータ可読媒体。
【0102】
R:命令は、実行されるときに、1つ以上のプロセッサに、条件が満たされることに基づいて、デスクトップクライアントによって、リマインダをレンダリングするために、要求に関連付けられたデータを含むデータベースにAPI呼び出しを送信することをさらに行わせる、段落O~Qのいずれか1つに記載の1つ以上の非一時的なコンピュータ可読媒体。
【0103】
S:通信は、第1の通信であり、レンダリングする要求は、第1の要求であり、リマインダは、第1のリマインダであり、複数の命令は、実行されるときに、1つ以上のプロセッサに、デスクトップクライアントを介した表示のために、第2の通信に関連付けられた第2のリマインダをレンダリングする第2の要求を受信することと、基準に基づいて、第1のリマインダを第2のリマインダよりも高くランク付けする。第1のリマインダを第2のリマインダよりも高い優先順位で提示することと、をさらに行わせる、段落O~Rのいずれか1つに記載の1つ以上の非一時的なコンピュータ可読媒体。
【0104】
T:命令は、実行されるときに、1つ以上のプロセッサに、リマインダをレンダリングする要求が受信されたことを示す第2の通信を生成することと、モバイルクライアントを介した表示のために、通信を伴うスレッドにおいて第2の通信をレンダリングすることと、をさらに行わせる、段落O~Sのいずれか1つに記載の1つ以上の非一時的なコンピュータ可読媒体。
【0105】
U:条件は、物理的距離閾値を含み、状態は、デスクトップクライアントが、物理的距離閾値未満にあるモバイルクライアントからある物理的距離に位置することを含む、段落A~Tのいずれか1つに記載のもの。
【0106】
V:通信は、新しい通信であり、方法は、モバイルクライアンを介して、リマインダをレンダリングする要求を受信する前に、新しい通信を作成する要求を受信することをさらに含む、段落A~Uのいずれか1つに記載のもの。
【0107】
上述の例示的な箇条は、1つの特定の実装に関して記載されているが、本文書の文脈において、例示的な箇条のコンテンツは、方法、デバイス、システム、コンピュータ可読媒体、及び/又は別の実装を介して実装されてもよいと理解されたい。まとめ
【0108】
本明細書に記載される技術の1つ以上の例が記載されているが、その様々な改変、追加、置換及び同等物は、本明細書に記載される技術の範囲内に含まれる。
【0109】
例の説明において、明細書の一部を形成する添付の図面を参照し、この添付の図面は、図示により、特許請求の範囲に記載された主題の特定の例を示す。他の例が使用されてもよく、構造の変更などの変更又は修正がなされてもよいと理解されたい。このような例、変更又は改変は、意図された特許請求の範囲に記載された主題に関する範囲から必ずしも逸脱するものではない。本明細書におけるステップは、特定の順序で提示されてもよいが、いくつかの場合に、順序は、記載されるシステム及び方法の機能を変更することなく、特定の入力が異なる時間に又は異なる順序で提供されるように変更されてもよい。開示された手順は、異なる順序で実行され得る。追加的に、本明細書における様々なコンピューティングは、開示された順序で実行される必要はなく、コンピューティングの代替順序を使用する他の例が、容易に実装され得る。順序を変更することに加えて、コンピューティングは、同じ結果を有するサブコンピューティングに分解され得る。
図1
図2
図3
図4
図5
【国際調査報告】