(57)【要約】システム及び方法は、リモートリソースによってホストされたリモートデータオブジェクトと、グループベースコミュニケーションシステムのグループベースコミュニケーションインターフェイスとの間のコミュニケーションの管理を提供する。【選択図】図１
2021533508.tif 000002
【特許請求の範囲】
【請求項１】
リモートリソースによってホストされるリモートデータオブジェクトと、グループベースコミュニケーションシステムのグループベースコミュニケーションインターフェイスとの間のコミュニケーションを管理するための装置であって、前記装置は、少なくとも１つのプロセッサ、及びプログラムコードを含む少なくとも１つの非一時的メモリを備え、前記少なくとも１つの非一時的メモリ及び前記プログラムコードは、前記プロセッサと共に、前記装置に少なくとも
前記リモートリソースによるエンゲージメントのために構成されている共有アプリケーションプログラミングインターフェイスを生成すること、
前記リモートデータオブジェクトに関連付けられたリモートデータオブジェクト識別子、前記グループベースコミュニケーションインターフェイスに関連付けられたグループ識別子、及び共有ロケーション識別子を含むリモートデータオブジェクト共有リクエストを受け取ること、
前記共有アプリケーションプログラミングインターフェイスを介して、リモートデータオブジェクト共有通知を前記リモートリソースに送ることであって、前記リモートデータオブジェクト共有通知は、前記リモートデータオブジェクト識別子を含む、リモートデータオブジェクト共有通知を送ること、及び
前記リモートデータオブジェクト共有通知を送ることに応答して、
前記リモートリソースから、前記共有アプリケーションプログラミングインターフェイスを介して、前記リモートデータオブジェクトに関連付けられたリモートデータオブジェクトメタデータを受け取ること、及び
前記リモートデータオブジェクトに関連付けられたリモートデータオブジェクトグラフィック表現を前記グループベースコミュニケーションインターフェイスの共有ロケーションに自動的にレンダリングすることであって、前記共有ロケーションは、前記共有ロケーション識別子に基づいて求められ、前記リモートデータオブジェクトグラフィック表現は、前記リモートデータオブジェクトのユーザーエンゲージメントを促進させるように構成されている、自動的にレンダリングすること
をさせるように構成されている装置。
【請求項２】
前記共有ロケーション識別子は、グループベースコミュニケーションチャンネル識別子又はダイレクトメッセージ識別子のうちの少なくとも１つを含む
請求項１に記載の装置。
【請求項３】
前記共有ロケーションは、グループベースコミュニケーションチャンネル識別子に関連付けられたグループベースコミュニケーションチャンネル又はダイレクトメッセージ識別子に関連付けられたダイレクトメッセージインターフェイスのうちの少なくとも１つを含む
請求項１に記載の装置。
【請求項４】
前記リモートデータオブジェクトは、ファイル、コールオブジェクト、タスクオブジェクト、イベントオブジェクト、又はカレンダーオブジェクトのうちの少なくとも１つを含む
請求項１に記載の装置。
【請求項５】
前記リモートデータオブジェクト共有リクエストは、共有ユーザー識別子をさらに含む
請求項１に記載の装置。
【請求項６】
前記非一時的メモリ及び前記プログラムコードは、前記プロセッサと共に、前記装置に
ローカル装置メモリにクエリして、前記共有ユーザー識別子に関連付けられた、ローカルに記憶されたデータオブジェクトを特定すること、
リモートリソースメモリにクエリして、前記共有ユーザー識別子に関連付けられた、リモートで記憶されたデータオブジェクトを特定すること、及び
前記グループベースコミュニケーションインターフェイスにユーザー共有データオブジェクトリストをレンダリングすることであって、前記ユーザー共有データオブジェクトリストは、前記ローカルに記憶されたデータオブジェクト及び前記リモートで記憶されたデータオブジェクトに関連付けられたデータオブジェクトグラフィック表現を含む、レンダリングすること
をさせるようにさらに構成されている
請求項５に記載の装置。
【請求項７】
前記ユーザー共有データオブジェクトリストは、アクセスリーセンシーに基づいて順番付けされる
請求項６に記載の装置。
【請求項８】
前記ユーザー共有データオブジェクトリストは、前記共有ロケーション識別子に基づいて順番付けされる
請求項６に記載の装置。
【請求項９】
前記リモートデータオブジェクトメタデータは、リモートデータオブジェクトタイプ識別子を含む
請求項１に記載の装置。
【請求項１０】
前記非一時的メモリ及び前記プログラムコードは、前記プロセッサと共に、前記装置に
ローカル装置メモリにクエリして、前記リモートデータオブジェクトタイプ識別子に関連付けられた、ローカルに記憶されたデータオブジェクトを特定すること、
リモートリソースメモリにクエリして、前記リモートデータオブジェクトタイプ識別子に関連付けられた、リモートで記憶されたデータオブジェクトを特定すること、及び
前記グループベースコミュニケーションインターフェイスにコモンオブジェクトタイプリストをレンダリングすることであって、前記コモンオブジェクトタイプリストは、前記ローカルに記憶されたデータオブジェクト及び前記リモートで記憶されたデータオブジェクトに関連付けられたデータオブジェクトグラフィック表現を含む、レンダリングすること
をさせるようにさらに構成されている
請求項９に記載の装置。
【請求項１１】
前記コモンオブジェクトタイプリストは、アクセスリーセンシーに基づいて順番付けされる
請求項１０に記載の装置。
【請求項１２】
前記コモンオブジェクトタイプリストは、前記共有ロケーション識別子に基づいて順番付けされる
請求項１０に記載の装置。
【請求項１３】
前記リモートリソースに送られる前記リモートデータオブジェクト共有通知は、前記リモートリソースが前記グループベースコミュニケーションシステムと通信することを承認するための認証トークンを含む
請求項１に記載の装置。
【請求項１４】
前記非一時的メモリ及び前記プログラムコードは、前記プロセッサと共に、前記装置に
前記リモートリソースが前記認証トークンを検証することに応答して、前記リモートデータオブジェクトの前記ユーザーエンゲージメントを促進すること
をさせるようにさらに構成されている
請求項１３に記載の装置。
【請求項１５】
前記非一時的メモリ及び前記プログラムコードは、前記プロセッサと共に、前記装置に
前記リモートデータオブジェクトについてのリモートプレビューリクエストを受け取ったことに応答して、前記リモートデータオブジェクトについてのリモートメタデータリクエストを前記リモートリソースに送ること、
前記リモートリソースから、前記リモートデータオブジェクトについてのリモートプレビューメタデータを受け取ること、
前記リモートプレビューメタデータに基づいて、リモートプレビューを生成すること、及び
前記リモートプレビューリクエストに応答して、前記リモートプレビューを自動的にレンダリングすること
をさせるようにさらに構成されている
請求項１に記載の装置。
【請求項１６】
前記リモートデータオブジェクトについての前記リモートプレビューメタデータは、前記リモートプレビューについてのリモートプレビューマークアップデータを含む
請求項１５に記載の装置。
【請求項１７】
前記リモートデータオブジェクトについての前記リモートプレビューメタデータは、前記リモートプレビューについての１つ以上のアクセス制御パラメータを含む
請求項１５に記載の装置。
【請求項１８】
前記リモートデータオブジェクト識別子を決定することは、
前記リモートデータオブジェクトについてのリモートリソース識別子を特定すること、
前記リモートリソース識別子及びリモート相関テーブルに基づいて、リモートオブジェクトについてのローカル識別子を決定すること、及び
前記ローカル識別子に基づいて、前記リモートデータオブジェクト識別子を決定すること
を含む
請求項１に記載の装置。
【請求項１９】
リモートリソースによってホストされるリモートデータオブジェクトと、グループベースコミュニケーションシステムのグループベースコミュニケーションインターフェイスとの間のコミュニケーションを管理するためのシステムであって、前記システムは、少なくとも１つのリポジトリ、及び少なくとも１つのプロセッサ及びプログラムコードを含む少なくとも１つの非一時的メモリを有する少なくとも１つのサーバーを備え、前記少なくとも１つの非一時的メモリ及び前記プログラムコードは、前記プロセッサと共に、前記システムに少なくとも
前記リモートリソースによるエンゲージメントのために構成されている共有アプリケーションプログラミングインターフェイスを生成すること、
前記リモートデータオブジェクトに関連付けられたリモートデータオブジェクト識別子、前記グループベースコミュニケーションインターフェイスに関連付けられたグループ識別子、及び共有ロケーション識別子を含むリモートデータオブジェクト共有リクエストを受け取ること、
前記共有アプリケーションプログラミングインターフェイスを介して、リモートデータオブジェクト共有通知を前記リモートリソースに送ることであって、前記リモートデータオブジェクト共有通知は、前記リモートデータオブジェクト識別子を含む、リモートデータオブジェクト共有通知を送ること、及び
前記リモートデータオブジェクト共有通知を送ることに応答して、
前記リモートリソースから、前記共有アプリケーションプログラミングインターフェイスを介して、前記リモートデータオブジェクトに関連付けられたリモートデータオブジェクトメタデータを受け取ること、及び
前記リモートデータオブジェクトに関連付けられたリモートデータオブジェクトグラフィック表現を前記グループベースコミュニケーションインターフェイスの共有ロケーションに自動的にレンダリングすることであって、前記共有ロケーションは、前記共有ロケーション識別子に基づいて求められ、前記リモートデータオブジェクトグラフィック表現は、前記リモートデータオブジェクトのユーザーエンゲージメントを促進させるように構成されている、自動的にレンダリングすること
をさせるように構成されているシステム。
【請求項２０】
前記共有ロケーション識別子は、グループベースコミュニケーションチャンネル識別子又はダイレクトメッセージ識別子のうちの少なくとも１つを含む
請求項１９に記載のシステム。
【請求項２１】
前記共有ロケーションは、グループベースコミュニケーションチャンネル識別子に関連付けられたグループベースコミュニケーションチャンネル又はダイレクトメッセージ識別子に関連付けられたダイレクトメッセージインターフェイスのうちの少なくとも１つを含む
請求項１９に記載のシステム。
【請求項２２】
前記リモートデータオブジェクトは、ファイル、コールオブジェクト、タスクオブジェクト、イベントオブジェクト、又はカレンダーオブジェクトのうちの少なくとも１つを含む
請求項１９に記載のシステム。
【請求項２３】
前記リモートデータオブジェクト共有リクエストは、共有ユーザー識別子をさらに含む
請求項１９に記載のシステム。
【請求項２４】
前記非一時的メモリ及び前記プログラムコードは、前記プロセッサと共に、前記装置に
ローカル装置メモリにクエリして、前記共有ユーザー識別子に関連付けられた、ローカルに記憶されたデータオブジェクトを特定すること、
リモートリソースメモリにクエリして、前記共有ユーザー識別子に関連付けられた、リモートで記憶されたデータオブジェクトを特定すること、及び
前記グループベースコミュニケーションインターフェイスにユーザー共有データオブジェクトリストをレンダリングすることであって、前記ユーザー共有データオブジェクトリストは、前記ローカルに記憶されたデータオブジェクト及び前記リモートで記憶されたデータオブジェクトに関連付けられたデータオブジェクトグラフィック表現を含む、レンダリングすること
をさせるようにさらに構成されている
請求項２３に記載のシステム。
【請求項２５】
前記ユーザー共有データオブジェクトリストは、アクセスリーセンシーに基づいて順番付けされる
請求項２４に記載のシステム。
【請求項２６】
前記ユーザー共有データオブジェクトリストは、前記共有ロケーション識別子に基づいて順番付けされる
請求項２４に記載のシステム。
【請求項２７】
前記リモートデータオブジェクトメタデータは、リモートデータオブジェクトタイプ識別子を含む
請求項１９に記載のシステム。
【請求項２８】
前記非一時的メモリ及び前記プログラムコードは、前記プロセッサと共に、前記装置に
ローカル装置メモリにクエリして、前記リモートデータオブジェクトタイプ識別子に関連付けられた、ローカルに記憶されたデータオブジェクトを特定すること、
リモートリソースメモリにクエリして、前記リモートデータオブジェクトタイプ識別子に関連付けられた、リモートで記憶されたデータオブジェクトを特定すること、及び
前記グループベースコミュニケーションインターフェイスにコモンオブジェクトタイプリストをレンダリングすることであって、前記コモンオブジェクトタイプリストは、前記ローカルに記憶されたデータオブジェクト及び前記リモートで記憶されたデータオブジェクトに関連付けられたデータオブジェクトグラフィック表現を含む、レンダリングすること
をさせるようにさらに構成されている
請求項２７に記載のシステム。
【請求項２９】
前記コモンオブジェクトタイプリストは、アクセスリーセンシーに基づいて順番付けされる
請求項２８に記載のシステム。
【請求項３０】
前記コモンオブジェクトタイプリストは、前記共有ロケーション識別子に基づいて順番付けされる
請求項２８に記載のシステム。
【請求項３１】
前記リモートリソースに送られる前記リモートデータオブジェクト共有通知は、前記リモートリソースが前記グループベースコミュニケーションシステムと通信することを承認するための認証トークンを含む
請求項１９に記載のシステム。
【請求項３２】
前記非一時的メモリ及び前記プログラムコードは、前記プロセッサと共に、前記装置に
前記リモートリソースが前記認証トークンを検証することに応答して、前記リモートデータオブジェクトの前記ユーザーエンゲージメントを促進すること
をさせるようにさらに構成されている
請求項３１に記載のシステム。
【請求項３３】
前記非一時的メモリ及び前記プログラムコードは、前記プロセッサと共に、前記装置に
前記リモートデータオブジェクトについてのリモートプレビューリクエストを受け取ったことに応答して、前記リモートデータオブジェクトについてのリモートメタデータリクエストを前記リモートリソースに送ること、
前記リモートリソースから、前記リモートデータオブジェクトについてのリモートプレビューメタデータを受け取ること、
前記リモートプレビューメタデータに基づいて、リモートプレビューを生成すること、及び
前記リモートプレビューリクエストに応答して、前記リモートプレビューを自動的にレンダリングすること
をさせるようにさらに構成されている
請求項１９に記載のシステム。
【請求項３４】
前記リモートデータオブジェクトについての前記リモートプレビューメタデータは、前記リモートプレビューについてのリモートプレビューマークアップデータを含む
請求項３３に記載のシステム。
【請求項３５】
前記リモートデータオブジェクトについての前記リモートプレビューメタデータは、前記リモートプレビューについての１つ以上のアクセス制御パラメータを含む
請求項３３に記載のシステム。
【請求項３６】
前記リモートデータオブジェクト識別子を決定することは、
前記リモートデータオブジェクトについてのリモートリソース識別子を特定すること、
前記リモートリソース識別子及びリモート相関テーブルに基づいて、リモートオブジェクトについてのローカル識別子を決定すること、及び
前記ローカル識別子に基づいて、前記リモートデータオブジェクト識別子を決定すること
を含む
請求項１９に記載のシステム。
【請求項３７】
リモートリソースによってホストされるリモートデータオブジェクトと、グループベースコミュニケーションシステムのグループベースコミュニケーションインターフェイスとの間のコミュニケーションを管理するためのコンピュータで実現される方法であって、前記コンピュータで実現される方法は、
前記リモートリソースによるエンゲージメントのために構成されている共有アプリケーションプログラミングインターフェイスを生成すること、
前記リモートデータオブジェクトに関連付けられたリモートデータオブジェクト識別子、前記グループベースコミュニケーションインターフェイスに関連付けられたグループ識別子、及び共有ロケーション識別子を含むリモートデータオブジェクト共有リクエストを受け取ること、
前記共有アプリケーションプログラミングインターフェイスを介して、リモートデータオブジェクト共有通知を前記リモートリソースに送ることであって、前記リモートデータオブジェクト共有通知は、前記リモートデータオブジェクト識別子を含む、リモートデータオブジェクト共有通知を送ること、及び
前記リモートデータオブジェクト共有通知を送ることに応答して、
前記リモートリソースから、前記共有アプリケーションプログラミングインターフェイスを介して、前記リモートデータオブジェクトに関連付けられたリモートデータオブジェクトメタデータを受け取ること、及び
前記リモートデータオブジェクトに関連付けられたリモートデータオブジェクトグラフィック表現を前記グループベースコミュニケーションインターフェイスの共有ロケーションに自動的にレンダリングすることであって、前記共有ロケーションは、前記共有ロケーション識別子に基づいて求められ、前記リモートデータオブジェクトグラフィック表現は、前記リモートデータオブジェクトのユーザーエンゲージメントを促進させるように構成されている、自動的にレンダリングすること
を含むコンピュータで実現される方法。
【請求項３８】
前記共有ロケーション識別子は、グループベースコミュニケーションチャンネル識別子又はダイレクトメッセージ識別子のうちの少なくとも１つを含む
請求項３７に記載のコンピュータで実現される方法。
【請求項３９】
前記共有ロケーションは、グループベースコミュニケーションチャンネル識別子に関連付けられたグループベースコミュニケーションチャンネル又はダイレクトメッセージ識別子に関連付けられたダイレクトメッセージインターフェイスのうちの少なくとも１つを含む
請求項３７に記載のコンピュータで実現される方法。
【請求項４０】
前記リモートデータオブジェクトは、ファイル、コールオブジェクト、タスクオブジェクト、イベントオブジェクト、又はカレンダーオブジェクトのうちの少なくとも１つを含む
請求項３７に記載のコンピュータで実現される方法。
【請求項４１】
前記リモートデータオブジェクト共有リクエストは、共有ユーザー識別子をさらに含む
請求項３７に記載のコンピュータで実現される方法。
【請求項４２】
前記非一時的メモリ及び前記プログラムコードは、前記プロセッサと共に、前記装置に
ローカル装置メモリにクエリして、前記共有ユーザー識別子に関連付けられた、ローカルに記憶されたデータオブジェクトを特定すること、
リモートリソースメモリにクエリして、前記共有ユーザー識別子に関連付けられた、リモートで記憶されたデータオブジェクトを特定すること、及び
前記グループベースコミュニケーションインターフェイスにユーザー共有データオブジェクトリストをレンダリングすることであって、前記ユーザー共有データオブジェクトリストは、前記ローカルに記憶されたデータオブジェクト及び前記リモートで記憶されたデータオブジェクトに関連付けられたデータオブジェクトグラフィック表現を含む、レンダリングすること
をさせるようにさらに構成されている
請求項４１に記載のコンピュータで実現される方法。
【請求項４３】
前記ユーザー共有データオブジェクトリストは、アクセスリーセンシーに基づいて順番付けされる
請求項４１に記載のコンピュータで実現される方法。
【請求項４４】
前記ユーザー共有データオブジェクトリストは、前記共有ロケーション識別子に基づいて順番付けされる
請求項４１に記載のコンピュータで実現される方法。
【請求項４５】
前記リモートデータオブジェクトメタデータは、リモートデータオブジェクトタイプ識別子を含む
請求項３７に記載のコンピュータで実現される方法。
【請求項４６】
前記非一時的メモリ及び前記プログラムコードは、前記プロセッサと共に、前記装置に
ローカル装置メモリにクエリして、前記リモートデータオブジェクトタイプ識別子に関連付けられた、ローカルに記憶されたデータオブジェクトを特定すること、
リモートリソースメモリにクエリして、前記リモートデータオブジェクトタイプ識別子に関連付けられた、リモートで記憶されたデータオブジェクトを特定すること、及び
前記グループベースコミュニケーションインターフェイスにコモンオブジェクトタイプリストをレンダリングすることであって、前記コモンオブジェクトタイプリストは、前記ローカルに記憶されたデータオブジェクト及び前記リモートで記憶されたデータオブジェクトに関連付けられたデータオブジェクトグラフィック表現を含む、レンダリングすること
をさせるようにさらに構成されている
請求項４５に記載のコンピュータで実現される方法。
【請求項４７】
前記コモンオブジェクトタイプリストは、アクセスリーセンシーに基づいて順番付けされる
請求項４６に記載のコンピュータで実現される方法。
【請求項４８】
前記コモンオブジェクトタイプリストは、前記共有ロケーション識別子に基づいて順番付けされる
請求項４６に記載のコンピュータで実現される方法。
【請求項４９】
前記リモートリソースに送られる前記リモートデータオブジェクト共有通知は、前記リモートリソースが前記グループベースコミュニケーションシステムと通信することを承認するための認証トークンを含む
請求項３７に記載のコンピュータで実現される方法。
【請求項５０】
前記非一時的メモリ及び前記プログラムコードは、前記プロセッサと共に、前記装置に
前記リモートリソースが前記認証トークンを検証することに応答して、前記リモートデータオブジェクトの前記ユーザーエンゲージメントを促進すること
をさせるようにさらに構成されている
請求項４９に記載のコンピュータで実現される方法。
【請求項５１】
前記非一時的メモリ及び前記プログラムコードは、前記プロセッサと共に、前記装置に
前記リモートデータオブジェクトについてのリモートプレビューリクエストを受け取ったことに応答して、前記リモートデータオブジェクトについてのリモートメタデータリクエストを前記リモートリソースに送ること、
前記リモートリソースから、前記リモートデータオブジェクトについてのリモートプレビューメタデータを受け取ること、
前記リモートプレビューメタデータに基づいて、リモートプレビューを生成すること、及び
前記リモートプレビューリクエストに応答して、前記リモートプレビューを自動的にレンダリングすること
をさせるようにさらに構成されている
請求項３７に記載のコンピュータで実現される方法。
【請求項５２】
前記リモートデータオブジェクトについての前記リモートプレビューメタデータは、前記リモートプレビューについてのリモートプレビューマークアップデータを含む
請求項５１に記載のコンピュータで実現される方法。
【請求項５３】
前記リモートデータオブジェクトについての前記リモートプレビューメタデータは、前記リモートプレビューについての１つ以上のアクセス制御パラメータを含む
請求項５１に記載のコンピュータで実現される方法。
【請求項５４】
前記リモートデータオブジェクト識別子を決定することは、
前記リモートデータオブジェクトについてのリモートリソース識別子を特定すること、
前記リモートリソース識別子及びリモート相関テーブルに基づいて、リモートオブジェクトについてのローカル識別子を決定すること、及び
前記ローカル識別子に基づいて、前記リモートデータオブジェクト識別子を決定すること
を含む
請求項３７に記載のコンピュータで実現される方法。
【請求項５５】
リモートリソースによってホストされるリモートデータオブジェクトと、グループベースコミュニケーションシステムのグループベースコミュニケーションインターフェイスとの間のコミュニケーションを管理するための方法を少なくとも実行するよう構成された操作を１つ以上のプロセッサに少なくとも実行させるよう構成された命令を備える非一時的コンピュータ記憶媒体であって、前記方法は、
前記リモートリソースによるエンゲージメントのために構成されている共有アプリケーションプログラミングインターフェイスを生成すること、
前記リモートデータオブジェクトに関連付けられたリモートデータオブジェクト識別子、前記グループベースコミュニケーションインターフェイスに関連付けられたグループ識別子、及び共有ロケーション識別子を含むリモートデータオブジェクト共有リクエストを受け取ること、
前記共有アプリケーションプログラミングインターフェイスを介して、リモートデータオブジェクト共有通知を前記リモートリソースに送ることであって、前記リモートデータオブジェクト共有通知は、前記リモートデータオブジェクト識別子を含む、リモートデータオブジェクト共有通知を送ること、及び
前記リモートデータオブジェクト共有通知を送ることに応答して、
前記リモートリソースから、前記共有アプリケーションプログラミングインターフェイスを介して、前記リモートデータオブジェクトに関連付けられたリモートデータオブジェクトメタデータを受け取ること、及び
前記リモートデータオブジェクトに関連付けられたリモートデータオブジェクトグラフィック表現を前記グループベースコミュニケーションインターフェイスの共有ロケーションに自動的にレンダリングすることであって、前記共有ロケーションは、前記共有ロケーション識別子に基づいて求められ、前記リモートデータオブジェクトグラフィック表現は、前記リモートデータオブジェクトのユーザーエンゲージメントを促進させるように構成されている、自動的にレンダリングすること
を含む、非一時的コンピュータ記憶媒体。
【請求項５６】
前記共有ロケーション識別子は、グループベースコミュニケーションチャンネル識別子又はダイレクトメッセージ識別子のうちの少なくとも１つを含む
請求項５５に記載の非一時的コンピュータ記憶媒体。
【請求項５７】
前記共有ロケーションは、グループベースコミュニケーションチャンネル識別子に関連付けられたグループベースコミュニケーションチャンネル又はダイレクトメッセージ識別子に関連付けられたダイレクトメッセージインターフェイスのうちの少なくとも１つを含む
請求項５５に記載の非一時的コンピュータ記憶媒体。
【請求項５８】
前記リモートデータオブジェクトは、ファイル、コールオブジェクト、タスクオブジェクト、イベントオブジェクト、又はカレンダーオブジェクトのうちの少なくとも１つを含む
請求項５５に記載の非一時的コンピュータ記憶媒体。
【請求項５９】
前記リモートデータオブジェクト共有リクエストは、共有ユーザー識別子をさらに含む
請求項５５に記載の非一時的コンピュータ記憶媒体。
【請求項６０】
前記非一時的メモリ及び前記プログラムコードは、前記プロセッサと共に、前記装置に
ローカル装置メモリにクエリして、前記共有ユーザー識別子に関連付けられた、ローカルに記憶されたデータオブジェクトを特定すること、
リモートリソースメモリにクエリして、前記共有ユーザー識別子に関連付けられた、リモートで記憶されたデータオブジェクトを特定すること、及び
前記グループベースコミュニケーションインターフェイスにユーザー共有データオブジェクトリストをレンダリングすることであって、前記ユーザー共有データオブジェクトリストは、前記ローカルに記憶されたデータオブジェクト及び前記リモートで記憶されたデータオブジェクトに関連付けられたデータオブジェクトグラフィック表現を含む、レンダリングすること
をさせるようにさらに構成されている
請求項５９に記載の非一時的コンピュータ記憶媒体。
【請求項６１】
前記ユーザー共有データオブジェクトリストは、アクセスリーセンシーに基づいて順番付けされる
請求項６０に記載の非一時的コンピュータ記憶媒体。
【請求項６２】
前記ユーザー共有データオブジェクトリストは、前記共有ロケーション識別子に基づいて順番付けされる
請求項６０に記載の非一時的コンピュータ記憶媒体。
【請求項６３】
前記リモートデータオブジェクトメタデータは、リモートデータオブジェクトタイプ識別子を含む
請求項５５に記載の非一時的コンピュータ記憶媒体。
【請求項６４】
前記非一時的メモリ及び前記プログラムコードは、前記プロセッサと共に、前記装置に
ローカル装置メモリにクエリして、前記リモートデータオブジェクトタイプ識別子に関連付けられた、ローカルに記憶されたデータオブジェクトを特定すること、
リモートリソースメモリにクエリして、前記リモートデータオブジェクトタイプ識別子に関連付けられた、リモートで記憶されたデータオブジェクトを特定すること、及び
前記グループベースコミュニケーションインターフェイスにコモンオブジェクトタイプリストをレンダリングすることであって、前記コモンオブジェクトタイプリストは、前記ローカルに記憶されたデータオブジェクト及び前記リモートで記憶されたデータオブジェクトに関連付けられたデータオブジェクトグラフィック表現を含む、レンダリングすること
をさせるようにさらに構成されている
請求項６３に記載の非一時的コンピュータ記憶媒体。
【請求項６５】
前記コモンオブジェクトタイプリストは、アクセスリーセンシーに基づいて順番付けされる
請求項６４に記載の非一時的コンピュータ記憶媒体。
【請求項６６】
前記コモンオブジェクトタイプリストは、前記共有ロケーション識別子に基づいて順番付けされる
請求項６４に記載の非一時的コンピュータ記憶媒体。
【請求項６７】
前記リモートリソースに送られる前記リモートデータオブジェクト共有通知は、前記リモートリソースが前記グループベースコミュニケーションシステムと通信することを承認するための認証トークンを含む
請求項５５に記載の非一時的コンピュータ記憶媒体。
【請求項６８】
前記非一時的メモリ及び前記プログラムコードは、前記プロセッサと共に、前記装置に
前記リモートリソースが前記認証トークンを検証することに応答して、前記リモートデータオブジェクトの前記ユーザーエンゲージメントを促進すること
をさせるようにさらに構成されている
請求項６７に記載の非一時的コンピュータ記憶媒体。
【請求項６９】
前記非一時的メモリ及び前記プログラムコードは、前記プロセッサと共に、前記装置に
前記リモートデータオブジェクトについてのリモートプレビューリクエストを受け取ったことに応答して、前記リモートデータオブジェクトについてのリモートメタデータリクエストを前記リモートリソースに送ること、
前記リモートリソースから、前記リモートデータオブジェクトについてのリモートプレビューメタデータを受け取ること、
前記リモートプレビューメタデータに基づいて、リモートプレビューを生成すること、及び
前記リモートプレビューリクエストに応答して、前記リモートプレビューを自動的にレンダリングすること
をさせるようにさらに構成されている
請求項５５に記載の非一時的コンピュータ記憶媒体。
【請求項７０】
前記リモートデータオブジェクトについての前記リモートプレビューメタデータは、前記リモートプレビューについてのリモートプレビューマークアップデータを含む
請求項６９に記載の非一時的コンピュータ記憶媒体。
【請求項７１】
前記リモートデータオブジェクトについての前記リモートプレビューメタデータは、前記リモートプレビューについての１つ以上のアクセス制御パラメータを含む
請求項６９に記載の非一時的コンピュータ記憶媒体。
【請求項７２】
前記リモートデータオブジェクト識別子を決定することは、
前記リモートデータオブジェクトについてのリモートリソース識別子を特定すること、
前記リモートリソース識別子及びリモート相関テーブルに基づいて、リモートオブジェクトについてのローカル識別子を決定すること、及び
前記ローカル識別子に基づいて、前記リモートデータオブジェクト識別子を決定すること
を含む
請求項５５に記載の非一時的コンピュータ記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願への相互参照］
本願は、２０１８年８月２４日に出願された「METHODS, APPARATUSES AND COMPUTER PROGRAM PRODUCTS FOR A GROUP-BASED COMMUNICATION SYSTEM INTERACTING WITH REMOTE RESOURCES FOR REMOTE DATA OBJECTS」と題された米国特許仮出願番号６２／７２２，６５４の優先権を主張し、その内容は全体としてここで参照により援用される。
【背景技術】
【０００２】
さまざまな方法、装置、及びシステムは、アプリケーション及びサービスのためのインテグレーション技術を提供するように構成されている。本願出願人は、既存の方法、装置、及びシステムに関連する多くの欠点及び課題を特定した。適用された努力、独創力、及び革新を通じて、本開示の実施形態による解法を開発することによって、これら特定された欠点及び課題は解決され、その多くの例がここで詳細に記載される。
【発明の概要】
【０００３】
大まかには本開示の実施形態は、アプリケーション及びサービスがグループベースコミュニケーションシステムとインテグレートするためのインテグレーション技術を提供するように構成された方法、装置、システム、コンピューティングデバイス、及び／又はそれらの類似物を提供する。そのような実施形態は、アプリケーション及びサービスをグループベースコミュニケーションシステムと統合するための共有アプリケーションプログラミングインターフェイスを提供するように適応される。
【０００４】
本開示の実施形態は、リモートリソースによってホストされたリモートデータオブジェクトとグループベースコミュニケーションシステムのグループベースコミュニケーションインターフェイスとの間のコミュニケーションを管理する装置に関する。実施形態においては、この装置は、少なくとも１つのプロセッサ及びプログラムコードを含む少なくとも１つの非一時的メモリを備え、この少なくとも１つの非一時的メモリ及びプログラムコードは、プロセッサと共に、この装置がここで記載された機能を少なくとも実行するように構成されている。
【０００５】
実施形態において、本装置は、リモートリソースによるエンゲージメントのために構成されている共有アプリケーションプログラミングインターフェイスを生成するように構成又は制御される。実施形態において、本装置は、前記リモートデータオブジェクトに関連付けられたリモートデータオブジェクト識別子、前記グループベースコミュニケーションインターフェイスに関連付けられたグループ識別子、及び共有ロケーション識別子を含むリモートデータオブジェクト共有リクエストを受け取るように構成又は制御される。実施形態において、本装置は、前記共有アプリケーションプログラミングインターフェイスを介して、リモートデータオブジェクト共有通知を前記リモートリソースに送るように構成又は制御され、前記リモートデータオブジェクト共有通知は、前記リモートデータオブジェクト識別子を含む。実施形態において、本装置は、前記リモートデータオブジェクト共有通知を送ることに応答して、前記リモートリソースから、前記共有アプリケーションプログラミングインターフェイスを介して、前記リモートデータオブジェクトに関連付けられたリモートデータオブジェクトメタデータを受け取り、前記リモートデータオブジェクトに関連付けられたリモートデータオブジェクトグラフィック表現を前記グループベースコミュニケーションインターフェイスの共有ロケーションに自動的にレンダリングするように構成又は制御される。実施形態において、前記共有ロケーションは、前記共有ロケーション識別子に基づいて求められる。実施形態において、前記リモートデータオブジェクトグラフィック表現は、前記リモートデータオブジェクトのユーザーエンゲージメントを促進させるように構成されている。
【０００６】
実施形態において、前記共有ロケーション識別子は、グループベースコミュニケーションチャンネル識別子又はダイレクトメッセージ識別子のうちの少なくとも１つを含む。
【０００７】
実施形態において、前記共有ロケーションは、グループベースコミュニケーションチャンネル識別子に関連付けられたグループベースコミュニケーションチャンネル又はダイレクトメッセージ識別子に関連付けられたダイレクトメッセージインターフェイスのうちの少なくとも１つを含む。
【０００８】
実施形態において、前記リモートデータオブジェクトは、ファイル、コールオブジェクト、タスクオブジェクト、イベントオブジェクト、又はカレンダーオブジェクトのうちの少なくとも１つを含む。
【０００９】
実施形態において、前記リモートデータオブジェクト共有リクエストは、共有ユーザー識別子をさらに含む。
【００１０】
実施形態において、前記非一時的メモリ及び前記プログラムコードは、前記プロセッサと共に、前記装置にローカル装置メモリにクエリして、前記共有ユーザー識別子に関連付けられた、ローカルに記憶されたデータオブジェクトを特定すること、リモートリソースメモリにクエリして、前記共有ユーザー識別子に関連付けられた、リモートで記憶されたデータオブジェクトを特定すること、及び前記グループベースコミュニケーションインターフェイスにユーザー共有データオブジェクトリストをレンダリングすることであって、前記ユーザー共有データオブジェクトリストは、前記ローカルに記憶されたデータオブジェクト及び前記リモートで記憶されたデータオブジェクトに関連付けられたデータオブジェクトグラフィック表現を含む、レンダリングすることをさせるようにさらに構成されている。
【００１１】
実施形態において、前記ユーザー共有データオブジェクトリストは、アクセスリーセンシーに基づいて順番付けされる。
【００１２】
実施形態において、前記ユーザー共有データオブジェクトリストは、前記共有ロケーション識別子に基づいて順番付けされる。
【００１３】
実施形態において、前記リモートデータオブジェクトメタデータは、リモートデータオブジェクトタイプ識別子を含む。
【００１４】
実施形態において、前記非一時的メモリ及び前記プログラムコードは、前記プロセッサと共に、前記装置にローカル装置メモリにクエリして、前記リモートデータオブジェクトタイプ識別子に関連付けられた、ローカルに記憶されたデータオブジェクトを特定すること、リモートリソースメモリにクエリして、前記リモートデータオブジェクトタイプ識別子に関連付けられた、リモートで記憶されたデータオブジェクトを特定すること、及び前記グループベースコミュニケーションインターフェイスにコモンオブジェクトタイプリストをレンダリングすることであって、前記コモンオブジェクトタイプリストは、前記ローカルに記憶されたデータオブジェクト及び前記リモートで記憶されたデータオブジェクトに関連付けられたデータオブジェクトグラフィック表現を含む、レンダリングすることをさせるようにさらに構成されている。
【００１５】
実施形態において、前記コモンオブジェクトタイプリストは、アクセスリーセンシーに基づいて順番付けされる。
【００１６】
実施形態において、前記コモンオブジェクトタイプリストは、前記共有ロケーション識別子に基づいて順番付けされる。
【００１７】
実施形態において、前記リモートリソースに送られる前記リモートデータオブジェクト共有通知は、前記リモートリソースが前記グループベースコミュニケーションシステムと通信することを承認するための認証トークンを含む。
【００１８】
実施形態において、前記非一時的メモリ及び前記プログラムコードは、前記プロセッサと共に、前記装置に前記リモートリソースが前記認証トークンを検証することに応答して、前記リモートデータオブジェクトの前記ユーザーエンゲージメントを促進すること
をさせるようにさらに構成されている。
【００１９】
ある実施形態において、前記非一時的メモリ及び前記プログラムコードは、前記プロセッサと共に、前記装置に前記リモートデータオブジェクトについてのリモートプレビューリクエストを受け取ったことに応答して、前記リモートデータオブジェクトについてのリモートメタデータリクエストを前記リモートリソースに送ること、前記リモートリソースから、前記リモートデータオブジェクトについてのリモートプレビューメタデータを受け取ること、前記リモートプレビューメタデータに基づいて、リモートプレビューを生成すること、及び前記リモートプレビューリクエストに応答して、前記リモートプレビューを自動的にレンダリングすることをさせるようにさらに構成されている。これら実施形態のうちのいくつかにおいて、前記リモートデータオブジェクトについての前記リモートプレビューメタデータは、前記リモートプレビューについてのリモートプレビューマークアップデータ及び／又は前記リモートプレビューについての１つ以上のアクセス制御パラメータを含む。
【００２０】
ある実施形態において、前記リモートデータオブジェクト識別子を決定することは、前記リモートデータオブジェクトについてのリモートリソース識別子を特定すること、前記リモートリソース識別子及びリモート相関テーブルに基づいて、リモートオブジェクトについてのローカル識別子を決定すること、及び前記ローカル識別子に基づいて、前記リモートデータオブジェクト識別子を決定することを含む。
【図面の簡単な説明】
【００２１】
一般的な言葉でいくつかの実施形態がこのように説明されたので、ここで添付の図面が参照されるが、図面においては均一な縮尺ではない。
【図１】図１は、本開示のある例示的実施形態によるグループベースコミュニケーションシステムの例示的システムインフラストラクチャの図である。
【図２】図２は、本開示のある例示的実施形態によるグループベースコミュニケーションサーバーの装置の図である。
【図３】図３は、本開示によるある例示的実施形態によるクライアントデバイスの装置の図である。
【図４】図４は、本開示のある例示的実施形態によるネットワークアプリケーションサーバーの装置の図である。
【図５】図５は、本開示のある例示的実施形態による例示的ユーザーインターフェイスの図である。
【図６】図６は、本開示のある例示的実施形態による例示的ユーザーインターフェイスの図である。
【図７】図７は、本開示のある例示的実施形態による例示的ユーザーインターフェイスの図である。
【図８】図８は、本開示のある例示的実施形態による例示的ユーザーインターフェイスの図である。
【図９】図９は、本開示のある例示的実施形態による例示的ユーザーインターフェイスの図である。
【図１０】図１０は、本開示のある例示的実施形態による例示的方法を示す例示的フローチャートである。
【図１１】図１１は、本開示のある例示的実施形態による例示的方法を示す信号図である。
【図１２】図１２は、本開示のある例示的実施形態による例示的方法を示す他の信号図である。
【図１３】図１３は、本開示のある例示的実施形態による例示的方法を示す例示的フローチャートである。
【図１４】図１４は、本開示のある例示的実施形態による例示的方法を示す例示的フローチャートである。
【図１５】図１５は、本開示のある例示的実施形態による例示的方法を示す他の信号図である。
【発明を実施するための形態】
【００２２】
本開示のさまざまな実施形態は、添付の図面を参照してこれから以下においてより完全に説明され、ここで本開示の実施形態のうちの一部は示されるが、その全てが示されるわけではない。実際、本開示は、多くの異なる形態で実現され得るのであって、ここで記載される実施形態に限定されるように解釈されるべきではない。むしろ、これら実施形態は、本開示が適用される法的要件を充足するように提供される。「又は」という語は、そうではないと明示されない限り、代替的及び接続的意味の両方でここでは用いられている。「説明的（illustrative）」、「例示（example）」、及び「例示的（exemplary）」という語は、質的なレベルを問わない例であるとして用いられている。全体を通して、同様の番号は、同様の要素を表す。
【００２３】
［概観］
本開示の実施形態は、アプリケーション及び／又はサービスをグループベースコミュニケーションシステムに統合することに大まかには関する。本願出願人は、アプリケーション及びサービスをシステムに統合するための既存の技術の中には、アイフレーム（iframes）（インラインフレーム）の使用を伴うものがあることを特定した。アイフレームは、ウェブサイトに埋め込まれ得るイパーテキストマークアップ言語（ＨＴＭＬ）ドキュメントであり、リモートリソース（例えばサードパーティアプリケーション（群）又はサービス（群））からウェブサイトにコンテンツを提供し得る。このようにして、システムによって提供されたウェブサイトは、コンテンツを通信する／やりとりするために他のソースと統合され得る。
【００２４】
出願人は、レイテンシーを最小化することだけでなく、メモリデバイスのメモリスペースを節約することが、グループベースコミュニケーションシステムの任意の実現化を改良するために重要であることを特定した。レイテンシーを増やし、メモリ容量に制約を加えるソリューションは、計算リソースに不当な負担を生じ得て、これは、計算効率に悪影響を与え得て、ネットワークの低速化又はリソースの浪費（例えば帯域幅の減少）を生じ得る。
【００２５】
出願人は、iframeを用いてコンテンツをコンテンツソースからシステムのウェブサイトへと通信することには技術的な欠点が存在することに気づいた。例えば、iframeがロードされる時、ウェブサイトのiframeが用いられたウェブページのスクリプトは、ロード時間が長くなり、ネットワークリソースを消費することになり得て、その結果、ユーザーインターフェイスのレイテンシーが増える。
【００２６】
さらに、ウェブサーバーへの接続の数がウェブページとiframeとの間でふつうは共有されるので、このことは、接続を制限し、そのウェブページをロードしているユーザーインターフェイスのロードを典型的には遅くすることになる。さらにiframeは、典型的にはメモリ内で大きく、メモリ消費が大きいので、iframeは、典型的にはネットワークレイテンシーを増やし、iframeを処理するためのネットワークリソース（例えば処理容量、帯域幅）を制限し得る。
【００２７】
例示的実施形態は、コンテンツのリモートソース（例えばアプリケーション、サービス等）をグループベースコミュニケーションシステムと統合するために特別に構成された共有アプリケーションプログラミングインターフェイス（ＡＰＩ）を利用し得る。特別に構成された共有ＡＰＩを利用することによって、例示的実施形態は、極端に多いデータを検索することなく、グループベースコミュニケーションシステムに関連付けられたリモートリソース（例えばサードパーティアプリケーション、サービス等）の関連するリモートデータオブジェクト（例えば要求されたファイル、コール（例えば電話の通話）、イベントデータ、カレンダーデータ等）を特定し得る。これは、関連するリモートデータオブジェクトが、メッセージ内で特定可能であり得る（例えばリモートリソースは、メッセージ内のリンク（例えば統一資源位置指定子（ＵＲＬ））から特定可能であり得る）、グループベースコミュニケーションシステムのリモートリソース（群）の記憶の中でインデックス作成され得るからである。関連するリモートデータオブジェクトについてのリモートリソースの極端に多いデータを検索しないことに関連するクエリーレイテンシーの最小化によって、例示的実施形態は、ネットワークリソース（例えば処理容量、帯域幅）を節約することもできる。
【００２８】
さらに、例えばiframeのためのスクリプト等のような他のデータとは異なって、グループベースコミュニケーションシステムにリンクされているアプリケーション又はサービスに関連付けられた、関連する要求された情報（例えば登録されたユーザーに関連付けられた要求されたファイル）をユーザーインターフェイスにロードすることによって、例示的実施形態の特別に構成された共有ＡＰＩは、例示的実施形態をより速くし、例示的実施形態の方がiframeを利用するシステムよりもユーザーインターフェイスをロードするのが速くなるようにし得る。
【００２９】
よって、本開示によるさまざまな実施形態によって構築されたシステムは、あるシステムが遭遇する技術的問題に対する具体的な技術的ソリューションを提供する。
【００３０】
［定義］
ここで用いられるように「データ」、「コンテンツ」、「デジタルコンテンツ」、「デジタルコンテンツコンテンツオブジェクト」、「情報」という語、及び同様の語は、本開示の実施形態に従って送信、受信、及び／又は記憶されることが可能なデータを表すために相互交換的に用いられ得る。よって、任意のそのような語の使用は、本開示の実施形態の精神及び範囲を限定するように解釈されるべきではない。さらに、データを他の計算デバイスから受け取るための計算デバイスがここで記載されるが、このデータは、他の計算デバイスから直接に受け取られてもよく、又は、例えば、１つ以上のサーバー、リレー、ルータ、ネットワークアクセスポイント、基地局、ホスト、及び／又は同様のもののような、「ネットワーク」とここで呼ばれることもある、１つ以上の媒介する計算デバイスを介して間接的に受け取られてもよいことが理解されよう。同様に、計算デバイスは、他の計算デバイスにデータを送るようここでは記載されるが、このデータは、他の計算デバイスに直接に送られてもよく、又は１つ以上の中間計算デバイスを介して、例えば１つ以上のサーバー、リレー、ルータ、ネットワークアクセスポイント、基地局、ホスト及び／又はその他を介して、間接的に送られてもよいことが理解されるだろう。
【００３１】
「コンピュータ読み取り可能な記憶媒体」という語は、非一時的な、物理的つまり有体の記憶媒体（例えば揮発性又は不揮発性メモリ）を表し、これは、電磁信号を表す「コンピュータ読み取り可能な伝送媒体」とは区別され得る。
【００３２】
「クライアントデバイス」という語は、サーバーによって利用可能にされたサービスにアクセスするよう構成されたコンピュータハードウェア及び／又はソフトウェアを表す。サーバーは、しばしば（いつもではないが）他のコンピュータシステム上にあり、その場合、クライアントデバイスは、ネットワークによってサービスにアクセスする。クライアントデバイスは、限定としてではなく、スマートフォン、タブレットコンピュータ、ラップトップコンピュータ、ウェラブル機器、パーソナルコンピュータ、エンタープライズコンピュータ等を含み得る。
【００３３】
「グループベース」は、規定されたグループのユーザー群にだけアクセス可能であるのに十分なセキュリティを有するシステム、チャンネル、メッセージ、又は仮想環境を表すためにここでは用いられている。このグループは、オーガナイゼーション又は商業エンタープライズのもののようなコモンアクセス信任状によって定義され得る。アクセスは、参加するための認証された要求又はあるグループメンバーユーザーから他の非メンバーユーザーに送信された参加するための招待によってさらに促進され得る。グループ識別子（以下に定義される）は、データ、情報、メッセージ等を特定のグループと関連付けるために用いられる。
【００３４】
「グループベースコミュニケーションシステム」という語は、コミュニケーションソフトウェアプラットフォームと、複数のグループベースコミュニケーションインターフェイス及び全ての関連付けられた機能をサポートし維持するよう構成された関連付けられたハードウェアとを表す。グループベースコミュニケーションシステムユーザーは、オーガナイゼーショングループに組織化され（例えば、異なる会社の従業員は、別のオーガナイゼーショングループ群であり得る）、それぞれのグループは、それぞれのグループベースコミュニケーションインターフェイスを介してシステムとインタラクトする。例えば、そのグループベースコミュニケーションシステムは、とりわけ、Slack Corporationのグループベースコミュニケーションインターフェイス及びACME Corporationのグループベースコミュニケーションインターフェイスをサポートするかもしれない。例示的グループベースコミュニケーションシステムは、サポーティングサーバー、クライアントデバイス、及びサードパーティーリソースを備える。
【００３５】
「グループベースコミュニケーションインターフェイス」という語は、グループベースコミュニケーションシステムとのユーザーインタラクションを促進するよう構成された仮想コミュニケーション環境を表す。それぞれのグループベースコミュニケーションインターフェイスは、企業又はオーガナイゼーションの従業員のグループのような、ユーザーの選ばれたグループがアクセス可能であり、閲覧可能である（例えばSlack Corp.のインターフェイスは、Slackの従業員がアクセス可能であり、閲覧可能であるが、ACME Corporationのグループベースコミュニケーションインターフェイスは、Slackの従業員にはアクセス可能及び閲覧可能ではない）。グループベースコミュニケーションインターフェイスは、以下で定義される複数のグループベースコミュニケーションチャンネル（例えばマーケティングチャンネル、セールスチャンネル、アカウンティングチャンネル等）を含む。
【００３６】
「グループベースコミュニケーションチャンネル」という語は、当該グループのメンバーだけに閲覧可能である、チャンネルメンバー（例えばクライアントデバイスを用いて環境にアクセスする認証されたユーザー）によってポストされたメッセージングコミュニケーションを表示するよう構成された仮想的な通信環境つまりフィードを表す。グループベースコミュニケーションチャンネルのフォーマットは、グループベースコミュニケーションチャンネルの異なるメンバーには異なるように見えるかもしれない。しかし、グループベースコミュニケーションのチャンネルのコンテンツ（すなわちメッセージングコミュニケーション）は、そのグループベースコミュニケーションチャンネルのそれぞれのメンバーに表示される。例えば、グループベースメッセージングコミュニケーションのコモンセット（common set）は、それぞれのグループベースコミュニケーションチャンネルのそれぞれのメンバーに表示されて、グループベースコミュニケーションチャンネルのコンテンツ（すなわちメッセージングコミュニケーション）がグループベースコミュニケーションチャンネルのメンバーごとに変わらないようにする。
【００３７】
「ユーザー」という語は、個人、企業、オーガナイゼーション、及びこれらの類似物の個人、グループを表すと理解されるべきであり、ここで参照されるユーザー群は、クライアントデバイスを用いてグループベースコミュニケーション又はメッセージングシステムにアクセスしている。
【００３８】
「ユーザープロフィール」、「ユーザーアカウント」、及び「ユーザーアカウント詳細」という語は、ユーザーと関連付けられた情報を表し、これには、例えば、ユーザー識別子、そのユーザーがアクセスを認められているグループベースコミュニケーションチャンネルと関連付けられた１つ以上のグループベースコミュニケーションチャンネル識別子、そのユーザーが関連付けられているグループの１つ以上のグループ識別子、そのユーザーがいずれかのグループベースコミュニケーションチャンネルのオーナーであるかについての表示、ユーザーがいずれかのグループベースコミュニケーションチャンネルの制限を有するかについての表示、複数のメッセージ、複数の絵文字、複数の会話、複数の会話トピックス、グラフィック表現、電子メールアドレス、実名（例えばJohn Doe）、ユーザー名（例えばjdoe）、パスワード、実名、時間帯、ステータス等が含まれる。ユーザーアカウント詳細は、例えば、そのユーザーのユーザー名及びパスワードを含むそのユーザーのログイン情報のようなユーザー資格情報（user credentials）のサブセット指定を含み得る。
【００３９】
「グループベースコミュニケーションチャンネル識別子」又は「チャンネル識別子」という語は、グループベースコミュニケーションチャンネルが特定され得る、データの１つ以上のアイテムを表す。例えば、グループベースコミュニケーションチャンネル識別子は、米国規格協会情報交換標準コード（ＡＳＣＩＩ）テキスト、ポインタ、メモリアドレス、及びこれらの類似物を含み得る。
【００４０】
「グループ識別子」又は「チーム識別子」という語は、グループベースコミュニケーションシステム内のグループが特定され得る、データの１つ以上のアイテムを表す。例えば、グループ識別子は、ＡＳＣＩＩテキスト、ポインタ、メモリアドレス、及びこれらの類似物を含み得る。ある実施形態では、Slack Corporationのワークスペース（すなわちグループベースコミュニケーションインターフェイス）のメンバーユーザーに関連付けられたグループ識別子は、104356721である。
【００４１】
「リモートリソース」という語は、グループベースコミュニケーションインターフェイスを介してクライアントデバイスにサービスを提供するためにグループベースコミュニケーションシステムと通信するよう構成されたソフトウェアプログラム、アプリケーション、プラットフォーム、又はサービスを表す。リモートリソースは、グループベースコミュニケーションシステムをサポートするものとは別個で、異なる、コンパイルされたコードベース又はリポジトリ上で動作する。ある実施形態では、リモートリソースは、１つ以上のアプリケーションプログラムインターフェイス（ＡＰＩ）を通じてグループベースコミュニケーションシステムと通信し得て、グループベースコミュニケーションシステムも同様にリモートリソースと通信し得る。ある実施形態では、リモートリソースは、グループベースコミュニケーションシステムネットワークセキュリティレイヤ又はプロトコル（例えばネットワークファイヤーウォールプロトコル）を鑑みて、リモートリソースとグループベースコミュニケーションシステムとの間でのセキュアな通信を促進するために用いられるトークン又は他の認証資格情報を受け取る。
【００４２】
「リモートデータオブジェクト」又は「リモートで記憶されたデータオブジェクト」という語は、リモートリソースに関連付けられているが、グループベースコミュニケーションシステムの１つ以上のグループベースインターフェイスと共有され得る、メモリ又はデータベースに記憶されているファイル（群）、コールオブジェクト（群）、タスク（群）、イベントオブジェクト（群）、メッセージ又はメッセージオブジェクト（群）、通知又は通知オブジェクト（群）、又はカレンダーオブジェクト（群）を表す。ある実施形態では、リモートデータオブジェクトは、リモートデータオブジェクトアドレスに記憶され、これは、統一資源位置指定子（ＵＲＬ）、インターネットアドレス、又はイントラネットドメインであり得る。
【００４３】
「ローカルに記憶されたデータオブジェクト」という語は、グループベースコミュニケーションシステムに関連付けられたメモリ又はデータベースに記憶されたファイル（群）、コールオブジェクト（群）、タスク（群）、イベントオブジェクト（群）、又はカレンダーオブジェクト（群）を表す。
【００４４】
「ローカル装置メモリ」という語は、ローカルに記憶されたデータオブジェクトを記憶するグループベースコミュニケーションシステムに関連付けられたメモリ又はデータベースを表す。
【００４５】
「リモートリソースメモリ」という語は、リモートで記憶されたデータオブジェクトを記憶するリモートリソースに関連付けられたメモリ又はデータベースを表す。
【００４６】
「共有アプリケーションプログラミングインターフェイス」（共有ＡＰＩ）という語は、グループベースコミュニケーションシステム及び１つ以上のリモートリソースの中で及びそれらの間でリモートデータオブジェクトの共有を促進する１セットのルーチン群、プロトコル群、及びソフトウェアシステムツール群を表す。さまざまな実施形態においては、共有ＡＰＩは、リモートリソースがそのリモートデータオブジェクトを、グループベースコミュニケーションシステムのグループベースコミュニケーションインターフェイス内のユーザーによる共有のために利用可能にさせ得るプロトコル及びプロシージャステップを定義する。共有ＡＰＩは、リモートリソースとグループベースコミュニケーションシステムとの間の通信を支配するセキュリティ及び認証プロトコルをさらに定義する。
【００４７】
「リモートデータオブジェクトグラフィック表現（remote date object graphical representation）」は、リモートデータオブジェクトを表現し、グループベースコミュニケーションインターフェイス内でレンダリングされるグラフィック表現（例えば画像ファイル）、アイコン、ロゴ、トゥームストーン（tombstone）、図、又はそれらの類似物を表す。さまざまな実施形態においては、リモートデータオブジェクトグラフィック表現は、ユーザーが、リモートリソースの関連付けられたリモートデータオブジェクトとインタラクトする又はアップデートすることを可能にするよう構成されたユーザーエンゲージ可能なリンクを実現する。さまざまな実施形態では、リモートデータオブジェクトグラフィック表現は、リモートリソースから受け取られたリモートデータオブジェクトメタデータに少なくとも部分的に基づいてレンダリングされる。
【００４８】
「データオブジェクトグラフィック表現」という語は、リモートデータオブジェクト又はローカルに記憶されたデータオブジェクトを表現し、グループベースコミュニケーションインターフェイスに対してユーザー共有データオブジェクトリスト又はコモンオブジェクトタイプリスト内でレンダリングされるグラフィック表現（例えば画像ファイル）、アイコン、ロゴ、トゥームストーン、図、又はそれらの類似物を表す。
【００４９】
「共有ロケーション識別子」という語は、グループベースコミュニケーションシステムによって読み取り可能であるグループベースコミュニケーションインターフェイス内のリモートデータオブジェクトの意図された位置についての指示又はアドレスである。さまざまな実施形態において、共有ロケーション識別子は、ＡＳＣＩＩテキスト、ポインタ、メモリアドレス、及びそれらの類似物を含む。ある実施形態では、共有ロケーション識別子は、グループベースコミュニケーションチャンネル識別子又はダイレクトメッセージ（ＤＭ）識別子を含む。
【００５０】
「リモートデータオブジェクトメタデータ」という語は、関連付けられたリモートデータオブジェクトを記載するデータセットを表す。リモートデータオブジェクトメタデータは、グループベースコミュニケーションシステムのグループベースコミュニケーションインターフェイス内でリモートデータオブジェクトの共有を可能にするために、リモートリソースによってグループベースコミュニケーションシステムへ送信される。例示的リモートデータオブジェクトメタデータは、リモートリソース識別子、リモートデータオブジェクトグラフィック表現、リモートデータオブジェクト識別子、リモートデータオブジェクトタイプ識別子、リモートデータオブジェクトアドレス、リモートデータオブジェクト作成者識別子、リモートデータオブジェクト受信者識別子、共有ロケーション識別子、リモートデータオブジェクト作成タイムスタンプ、リモートデータオブジェクトアクセスタイムスタンプ、及びそれらの類似物を含む。
【００５１】
「共有ロケーション」という語は、共有ロケーション識別子によって指定され、それによって共有されているリモートデータオブジェクトを受け取るように意図されるグループベースコミュニケーションインターフェイスの位置を表す。例示的共有ロケーションは、グループベースコミュニケーションチャンネル及びダイレクトメッセージインターフェイスである。
【００５２】
「リモートデータオブジェクト共有リクエスト」という語は、リモートデータオブジェクトをグループベースコミュニケーションインターフェイスと共有しろという命令を含む、クライアントデバイス（又はクライアントデバイス上で実行されているアプリケーション）によって生成され、及びグループベースコミュニケーションシステムに送信されるメッセージを表す。例示的リモートデータオブジェクト共有リクエストは、リモートデータオブジェクト識別子、リモートリソース識別子、グループ識別子、共有ロケーション識別子、共有ユーザー識別子、共有タイムスタンプ、及びそれらの類似物を含むデータセットを含み得る。
【００５３】
「リモートデータオブジェクト識別子」という語は、リモートデータオブジェクトの識別を可能にするデータの１つ以上のアイテムを表す。例示的実施形態では、リモートデータオブジェクト識別子は、ＡＳＣＩＩテキスト、ポインタ、メモリアドレス、及びこれらの類似物を含み得る。ある実施形態では、リモートデータオブジェクト識別子は、リモートデータオブジェクトバージョン情報を含む。
【００５４】
「リモートリソース識別子」という語は、そのリモートデータオブジェクトに関連付けられたリモートリソースによってリモートデータオブジェクトに割り当てられたリモートデータオブジェクト識別子である。例えば、ドキュメントリモートデータオブジェクトについてのリモートリソース識別子は、ドキュメントリモートデータオブジェクトを記憶するリモートリソースによってドキュメントリモートデータオブジェクトに割り当てられたドキュメント識別子であり得る。
【００５５】
「ローカル識別子」という語は、グループベースコミュニケーションシステムによってリモートデータオブジェクトに割り当てられたリモートデータオブジェクト識別子である。例えば、ドキュメントリモートデータオブジェクトについてのリモートリソース識別子は、グループベースコミュニケーションシステムによってドキュメントリモートデータオブジェクトに割り当てられたドキュメント識別子であり得る。
【００５６】
「リモート相関テーブル」という語は、リモートデータオブジェクトについてのリモートリソース識別子及びそのリモートデータオブジェクトについてのローカル識別子を同じリモート相関テーブルエントリの一部として記憶するデータの１つ以上のアイテムの構造化された集合体である。ある実施形態では、リモートデータオブジェクト識別子は、そのリモート相関テーブルについてのプライマリキーである。ある実施形態では、リモートデータオブジェクトについてのローカル識別子は、そのリモート相関テーブルについてのプライマリキーではない。リモート相関テーブルは、リレーショナルデータベース（例えばＳＱＬデータベース）中のテーブル及び／又は構造化ファイルベースのデータベース（structured-file-based database）（例えばＪＳＯＮデータベース）中のファイルであり得る。
【００５７】
「ローカル相関テーブル」という語は、リモートデータオブジェクトについてのローカル識別子及びそのリモートデータオブジェクトについての１つ以上のリモートデータオブジェクトメタデータエントリを同じローカル相関テーブルエントリの一部として記憶するデータの１つ以上のアイテムの構造化された集合体である。ある実施形態では、ローカル識別子は、そのローカル相関テーブルについてのプライマリキーである。ローカル相関テーブルは、リレーショナルデータベース（例えばＳＱＬデータベース）中のテーブル及び／又は構造化ファイルベースのデータベース（例えばＪＳＯＮデータベース）中のファイルであり得る。
【００５８】
「リモートデータオブジェクト共有通知」という語は、リモートリソースのリモートデータオブジェクトの、グループベースコミュニケーションシステムのグループベースコミュニケーションインターフェイスとの共有を可能にする、グループベースコミュニケーションシステムによって生成され、リモートリソース（群）に送信されたメッセージを表す。例示的リモートデータオブジェクト共有通知は、リモートデータオブジェクト識別子及び共有タイムスタンプを含む。ある実施形態では、リモートデータオブジェクト共有通知は、共有ユーザー識別子、共有ロケーション識別子、認証トークン、及びそれらの類似物を含み得る。
【００５９】
「共有ユーザー識別子」は、リモートデータオブジェクトのグループベースコミュニケーションインターフェイスとの共有を開始したグループベースコミュニケーションユーザーの識別を可能にする、データの１つ以上のアイテムを表す。さまざまな実施形態では、共有ユーザー識別子は、ＡＳＣＩＩテキスト、ポインタ、メモリアドレス、及びこれらの類似物を含み得る。
【００６０】
「ユーザー共有データオブジェクトリスト（user shared data object list）」という語は、ローカルに記憶されたデータオブジェクト及びリモートに記憶されたデータオブジェクトに関連付けられた、共有ユーザー識別子に関連付けられたグループベースコミュニケーションユーザーによって共有されるデータオブジェクトグラフィック表現のリストを表す。ユーザー共有データオブジェクトリストは、共有ユーザー識別子に関連付けられたグループベースコミュニケーションユーザーによって共有されるファイル、コールオブジェクト、タスク、イベントオブジェクト、及びカレンダーオブジェクトに関連付けられたデータオブジェクトグラフィック表現を含み得る。
【００６１】
「コモンオブジェクトタイプリスト」という語は、ローカルに記憶されたデータオブジェクト及びリモートに記憶されたデータオブジェクトに関連付けられた、リモートデータオブジェクトタイプ識別子（例えばファイルタイプ識別子、コールオブジェクトタイプ識別子、タスクタイプ識別子、イベントタイプ識別子、カレンダータイプ識別子）に関連付けられたデータオブジェクトグラフィック表現のリストを表す。ある例示的実施形態では、コモンオブジェクトタイプリストは、それぞれのリモートデータオブジェクトタイプ識別子に基づいて、ファイルだけに、コールオブジェクトだけに、タスクだけに、イベントオブジェクトだけに、又はカレンダーオブジェクトだけに関連付けられたデータオブジェクトグラフィック表現を含み得る。
【００６２】
「アクセスリーセンシー（access recency）」という語は、ローカルに記憶されたデータオブジェクト及びリモートに記憶されたデータオブジェクトが共有ユーザー識別子に関連付けられたグループベースコミュニケーションユーザーによって共有されたリーセンシー（すなわち最も最近の時間的近接性）、又はリモートデータオブジェクトタイプ識別子に関連付けられたローカルに記憶されたデータオブジェクトがグループベースコミュニケーションシステムでアクセスされ、リモートデータオブジェクトタイプ識別子に関連付けられたリモートに記憶されたデータオブジェクトがリモートリソースでアクセスされたリーセンシーを表す。
【００６３】
グループベースコミュニケーションシステムユーザーは、オーガナイゼーショングループに組織化され（organized）（例えばそれぞれの会社の従業員は、別々のオーガナイゼーショングループであり得る）、それぞれのオーガナイゼーショングループは、ユーザーが割当され得る又はユーザーが参加し得る（例えばグループベースコミュニケーションチャンネルは、部署、オフィスのような地理的位置、製品ライン、ユーザーの関心、トピック、問題、及び／又はこれらの類似物）１つ以上のグループベースコミュニケーションチャンネル（以下で説明される）を有し得る。グループ識別子は、メッセージのためのアクセス制御を促進するのに用いられ得る（例えば検索クエリに応答して検索結果の一部としてメッセージリターンを持つようなメッセージへのアクセスは、それらのユーザープロフィールに関連付けられたグループ識別子を有するそれらユーザーに制限され得る）。グループ識別子は、メッセージについてのコンテキストを決定するのに用いられ得る（例えばオーガナイゼーションの名称及び／又はオーガナイゼーションの簡単な説明のようなグループの記述がグループ識別子に関連付けられ得る）。
【００６４】
グループベースコミュニケーションシステムユーザーは、グループベースコミュニケーションチャンネルに参加し得る。一部のグループベースコミュニケーションチャンネルは、それらのユーザープロフィールに関連付けられた特定のオーガナイゼーションのグループ識別子を有するそれらユーザーにとってはグローバルにアクセス可能であり得る（すなわちそのオーガナイゼーションのメンバーであるユーザー）。一部のグループベースコミュニケーションチャンネルへのアクセスは、特定のグループのメンバーに制限され得て、それによってグループベースコミュニケーションチャンネルは、それらのユーザープロフィールに関連付けられた特定のグループ識別子を有するそれらユーザーにアクセス可能である。グループベースコミュニケーションチャンネル識別子は、メッセージについてのアクセス制御を促進するために用いられ得る（例えば、検索クエリに応答して検索結果の一部としてメッセージリターンを持つようなメッセージへのアクセスは、それらのユーザープロフィールに関連付けられたグループ識別子を有し、又はグループベースコミュニケーションチャンネルに参加する能力を有するそれらユーザーに制限され得る）。グループベースコミュニケーションチャンネル識別子は、メッセージのコンテキストを決定するのに用いられ得る（例えば、グループベースコミュニケーションチャンネルで議論されるプロジェクトの説明のような、グループベースコミュニケーションチャンネルの説明は、グループベースコミュニケーションチャンネル識別子に関連付けられ得る）。
【００６５】
「プライベートグループベースコミュニケーションチャンネル」という語は、制限されたアクセスを持つことによって、グループベースコミュニケーションシステムの他のメンバーによって一般にはアクセス可能ではなく及び／又は検索可能ではないグループベースコミュニケーションチャンネルを表す。例えば、プライベートグループベースコミュニケーションチャンネルへのアクセスについての知識及び許可を有する（例えば、ユーザーが許可／認証された後に、プライベートグループベースコミュニケーションチャンネルについてのグループベースコミュニケーションチャンネル識別子がそれらのユーザープロフィールに関連付けられる）ユーザー又は管理者だけが、プライベートグループベースコミュニケーションチャンネルのコンテンツを見ることができる。
【００６６】
リモートデータオブジェクトについての「リモートプレビュー」という語は、リモートデータオブジェクトは、そのリモートプレビューについてのリモートプレビューリクエストが生成されるユーザーインターフェイスからの完全な遷移を実行することなく、リモートデータオブジェクトについての情報を提供するユーザーインターフェイスエレメント群の組み合わせを表す。例えば、リモートデータオブジェクトについてのリモートプレビューは、そのリモートデータオブジェクトについての１つ以上のリモートデータオブジェクトメタデータ情報を含み得る。他の例として、リモートデータオブジェクトについてのリモートデータプレビューは、リモートデータオブジェクト（例えば画像の形態である）のコンテンツの一部を含み得る。ある実施形態では、同時に表示可能であるユーザーインターフェイスエレメントの２つ以上のセットを有するリモートデータオブジェクトは、同時に表示可能なユーザーインターフェイスエレメントのある１セットと、同時に表示可能なユーザーインターフェイスエレメントの他の１セットとの間での遷移を可能にするインタラクティブコンポーネンツを有し得る。
【００６７】
「リモートプレビューマークアップデータ」という語は、リモートプレビューのマークアップ言語コードの少なくとも１つの局面を記載するよう構成されたデータの１つ以上のアイテムを表す。例えば、リモートプレビューマークアップデータは、特定のリモートプレビューについてのハイパーテキストトランスファープロトコルを含み得る。他の例として、リモートプレビューマークアップデータは、特定のリモートプレビューについての画像データを含み得る。
【００６８】
「リモートプレビューリクエスト」という語は、リモートデータオブジェクトについてリモートプレビューを生成し及び表示するリクエストを示すよう構成されたデータの１つ以上のアイテムを表す。例えば、リモートデータオブジェクトについてのリモートプレビューリクエストは、リモートデータオブジェクトについてのリモートプレビューをリクエストするよう構成されたグループベースコミュニケーションシステムのエンドユーザープロフィールによる１つ以上のアクションに基づいて生成され得る。適切なアクションの例には、ポインタをそのリモートデータオブジェクトについてのリモートデータオブジェクトグラフィック表現の上でホバリングさせること、そのリモートデータオブジェクトについてのリモートプレビューをリクエストするよう構成されたキー組み合わせをタイプすること、リモートデータオブジェクトについてのリモートプレビューをリクエストするよう構成されたタッチパターンを実行すること（例えば２本の指の拡張タッチパターン及び／又は２本の指の最小化タッチパターン）、そのリモートデータオブジェクトについてのリモートデータオブジェクトグラフィック表現の上で右クリックを実行すること等が含まれる。
【００６９】
「リモートプレビューメタデータ」という語は、リモートデータオブジェクトについてのリモートプレビューを生成することに関連する情報を含むリモートデータオブジェクトに関連付けられたリモートサーバーに記憶されたデータの１つ以上のアイテムを表す。ある実施形態では、リモートプレビューメタデータは、そのリモートデータオブジェクトについての１つ以上のアクセスセキュリティポリシー、リモートデータオブジェクトのインタラクティブプレビュー、リモートデータオブジェクトのインデックス付きのバージョン等のうちの少なくとも１つを含み得る。例えば、リモートリソースは、リモートデータオブジェクトの特定の部分がアクセス制限されていることを特定し、リモートプレビューメタデータの少なくとも一部分として、そのような特定の部分を含まないリモートデータオブジェクトのインタラクティブプレビューを生成し得る。ある実施形態では、リモートプレビューメタデータは、そのリモートデータオブジェクトについてはプレビューに関連する情報が何も利用可能ではないことを示し得る。
【００７０】
「ローカルプレビューメタデータ」という語は、リモートデータオブジェクトについてのリモートプレビューを生成することに関連する情報を含むグループベースコミュニケーションシステムに記憶されたデータの１つ以上のアイテムを表す。ある実施形態では、リモートデータオブジェクトについてのリモートオブジェクトメタデータは、リモートデータオブジェクトのリモートプレビューを生成するのに用いられ得る情報（例えばリモートデータオブジェクトのインデックス付きバージョン）を含む。
【００７１】
「リモートメタデータリクエスト」という語は、リモートデータオブジェクトについてのリモートプレビューメタデータの、そのリモートデータオブジェクトに関連付けられたリモートリソースからの送信をリクエストするよう構成されたデータの１つ以上のアイテムを表す。例えば、リモートメタデータリクエストは、グループベースコミュニケーションサーバーから、リモートデータオブジェクトに関連付けられたリモートリソースへと送信され得る。
【００７２】
「リモートオブジェクトアクセスリクエスト」は、リモートデータオブジェクトに関連付けられたデータの１つ以上のアイテムを取得及び／又は変更するリクエストをするよう構成されたデータの１つ以上のアイテムを表す。ある実施形態では、リモートオブジェクトアクセスリクエストは、リモートデータオブジェクトに関連付けられた情報（例えばリモートオブジェクトメタデータ情報）を検索したいというリクエストである。ある実施形態では、リモートデータオブジェクトリクエストは、リモートデータオブジェクトのコンテンツを閲覧したいというリクエストである。ある実施形態では、リモートデータオブジェクトリクエストは、リモートデータオブジェクトのコンテンツを変更したいというリクエストである。ある実施形態では、リモートデータオブジェクトリクエストは、リモートデータオブジェクトを削除したいというリクエストである。ある実施形態では、リモートデータオブジェクトリクエストは、リモートデータオブジェクトのプロパティ（例えばアクセス制限パラメータ、アドレス等）を変更したいというリクエストである。
【００７３】
「アクセス制御パラメータ」という語は、リモートデータオブジェクトに対して特定のアクションを実行することを、どのユーザープロフィールが許可されるかを記述するよう構成されているデータの１つ以上のアイテムを表す。例えば、リモートデータオブジェクトについての特定のアクセス制御パラメータは、特定のカテゴリのユーザーだけが特定のリモートデータオブジェクトの特定のコンテンツを変更する権限を有することを示し得る。他の例として、リモートデータオブジェクトについての特定のアクセス制御パラメータは、特定のカテゴリのユーザーだけが特定のリモートデータオブジェクトの特定のコンテンツを閲覧する権限を有することを示し得る。さらなる例として、リモートデータオブジェクトについての特定のアクセス制御パラメータは、特定のカテゴリのユーザーだけが特定のリモートデータオブジェクトの特定のプロパティ（例えばアクセス制御パラメータ）を変更する権限を有することを示し得る。
【００７４】
「自動的にレンダリングすること」という語は、１つ以上のコンピューティングデバイス（例えば１つ以上のクライアントデバイス）に１つ以上のユーザーインターフェイスをレンダリングさせるよう構成された１つ以上の操作を表す。例えば、特定のユーザーインターフェイスを自動的にレンダリングするために、グループベースコミュニケーションサーバーは、対応するグループベースコミュニケーションシステムの１つ以上のクライアントデバイス群に、特定のユーザーインターフェイスをレンダリングさせ得る（例えばユーザーインターフェイスをクライアントデバイスにレンダリングするための命令を送信することによって）。
【００７５】
［例示的システムアーキテクチャ］
本開示の方法、装置、及びコンピュータプログラム製品は、さまざまなデバイスの任意のものによって実現され得る。例えば、例示的実施形態の方法、装置、及びコンピュータプログラム製品は、１つ以上のクライアントデバイスのような１つ以上のデバイスと通信するよう構成されるサーバー又は他のネットワークエンティティのようなネットワーク接続されたデバイス（例えばエンタープライズプラットフォーム）によって実現され得る。追加として又は代替として、計算デバイスは、パーソナルコンピュータ又はコンピュータワークステーションのような固定された計算デバイスを含み得る。さらに例示的実施形態は、携帯デジタルアシスタント（ＰＤＡ）、携帯電話、スマートフォン、ラップトップコンピュータ、タブレットコンピュータ、ウェアラブルデバイス、又は前述のデバイスの任意の組合せのような、さまざまなモバイルデバイスの任意のものによって実現され得る。
【００７６】
図１は、本開示の実施形態が動作し得る例示的システムアーキテクチャ１００を示す。ユーザーは、クライアントデバイス１０１Ａ−１０１Ｎを用いて通信ネットワーク１０３を介してグループベースコミュニケーションシステム１０５にアクセスし得る。
【００７７】
クライアントデバイス１０１Ａ−１０１Ｎは、上で定義されたような任意のコンピューティングデバイスであり得る。クライアントデバイス１０１Ａ−１０１Ｎからグループベースコミュニケーションシステム１０５によって受け取られた電子データは、さまざまな形態で、かつさまざまな方法を介して提供され得る。例えば、クライアントデバイス１０１Ａ−１０１Ｎは、デスクトップコンピュータ、ラップトップコンピュータ、スマートフォン、ネットブック、タブレットコンピュータ、ウェアラブルデバイス、及びこれらの類似物を含み得る。
【００７８】
クライアントデバイス１０１Ａ−１０１Ｎのうちのクライアントデバイスが、スマートフォン又はタブレットのようなモバイルデバイスである実施形態においては、クライアントデバイス１０１Ａ−１０１Ｎのうちのそのクライアントデバイスは、グループベースコミュニケーションシステム１０５と相互作用するために「アプリ」を実行し得る。そのようなアプリは、タブレット又はスマートフォンのようなモバイルデバイス上で動作するように典型的には設計される。例えば、アプリは、iOS（登録商標）、Android（登録商標）、又はWindows（登録商標）のようなモバイルデバイスオペレーティングシステム上で動作するよう提供され得る。これらプラットフォームは、アプリが互いに、及びモバイルデバイスの特定のハードウェア及びソフトウェア要素と通信することを可能にするフレームワークを典型的には提供する。例えば、上で挙げられたモバイルデバイスオペレーティングシステムは、それぞれ、位置サービス回路、有線及び無線ネットワークインターフェイス、ユーザコンタクト、及び他のアプリケーションと相互作用するためのフレームワークを提供する。
【００７９】
追加として又は代替として、クライアントデバイス１０１Ａ−１０１Ｎのうちのそのクライアントデバイスは、ウェブブラウザを介してグループベースコミュニケーションシステム１０５と相互作用し得る。さらに他の例として、クライアントデバイス１０１Ａ−１０１Ｎのうちのそのクライアントデバイスは、グループベースコミュニケーションシステム１０５とインターフェイスするよう設計されたさまざまなハードウェア又はファームウェアを含み得る。
【００８０】
通信ネットワーク１０３は、例えば、それを実現するのに要求される任意のハードウェア、ソフトウェア及び／又はファームウェア（例えばネットワークルータ等のような）と共に、有線又は無線ローカルエリアネットワーク（ＬＡＮ）、パーソナルエリアネットワーク（ＰＡＮ）、メトロポリタンエリアネットワーク（ＭＡＮ）、ワイドエリアネットワーク（ＷＡＮ）及びそれらの類似物を含む任意の有線又は無線通信ネットワークを含み得る。例えば、通信ネットワーク１０３は、セルラー式電話、８０２．１１、８０２．１６、８０２．２０、及び／又はＷｉＭａｘネットワークを含み得る。さらに、通信ネットワーク１０３は、インターネットのような公衆ネットワーク、イントラネットのようなプライベートネットワーク、又はそれらの組合せを含み得て、トランスポートコントロールプロトコル／インターネットプロトコル（ＴＣＰ／ＩＰ）ベースのネットワーキングプロトコルを含むがこれには限定されない、現在利用可能な又は将来開発されるさまざまなネットワーキングプロトコルを利用し得る。例えば、ネットワーキングプロトコルは、グループベースコミュニケーションシステムの要求に合うようにカスタマイズされ得る。ある実施形態では、プロトコルは、ウェブソケットチャンネルを介して送られるＪＳＯＮオブジェクトのカスタムプロトコルである。ある実施形態では、プロトコルは、ＪＳＯＮ−ＲＰＣ、ＪＳＯＮ−ＲＥＳＴ／ＨＴＴＰ、及びこれらの類似物である。
【００８１】
ある実施形態では、オンラインデータ管理システム１０７は、グループベースコミュニケーションサーバー１１３、１つ以上のデータベース１１５、及びアプリケーションプログラミングインターフェイス（ＡＰＩ）コンポーネント１１７を備える。
【００８２】
グループベースコミュニケーションサーバ１１３は、コンピュータ又はコンピュータ群として実現され得る。グループベースコミュニケーションサーバ１１３は、クライアントデバイス１０１Ａ−１０１Ｎには限定されないがこれらを含むさまざまなソースからの電子データの受信のために設けられ得る。例えば、グループベースコミュニケーションサーバ１１３は、クライアントデバイス１０１Ａ−１０１Ｎによって提供されたグループベースメッセージングコミュニケーションを通信ネットワーク１０３を介して受信及びポスト又は送信するよう動作可能であり得る。
【００８３】
ＡＰＩコンポーネント１１７は、サーバー又はサーバー群のような１つ以上のコンピュータ又はコンピューティングデバイスで実現され得る。ＡＰＩコンポーネント１１７は、グループベースコミュニケーションシステム１０５のさまざまなコンポーネントの間及び相互間のデータ伝送を促進するルーチン群、プロトコル群、及びソフトウェアシステムツール群のセットであり得る。例えば、ＡＰＩコンポーネント１１７は、通信ネットワーク１０３を介してクライアントデバイス１０１Ａ−１０１Ｎからクエリを受け取り得る。それは、グループベースコミュニケーションサーバー１１３からデータを受け取り、及びグループベースコミュニケーションサーバー１１３にデータを送ることもし得る。ＡＰＩコンポーネント１１７は、１つ以上のデータベース１１５にデータを送ることもし得る。
【００８４】
さらに、ＡＰＩコンポーネント１１７は、クライアントがメッセージ又はメッセージメタデータを探せるようにするルーチンを提供する。例えば、search.messagesＡＰＩコンポーネントは、「クエリ」フィールドを有し、そのクエリで与えられる検索を実行する。ＡＰＩコンポーネント１１７は、メッセージメタデータの検索も可能にする（例えばhas:reaction又はhas:star、from:john）。ＡＰＩコンポーネント１１７は、リモートデータオブジェクトに関連付けられた情報の通信／やりとりのために、リモートリソースをグループベースコミュニケーションシステム１０５と統合するためのインターフェイスも提供する。
【００８５】
ネットワークアプリケーションサーバー１０９は、リモートデータオブジェクトに関連付けられた情報の通信／やりとりのために、ＡＰＩコンポーネント１１７及び１つ以上の他のＡＰＩ群（例えば図２のＡＰＩ回路２１２）とインタラクトし得る。ある実施形態では、ネットワークアプリケーションサーバー１０９は、１つ以上のリモートリソースオブジェクトについてのリモートリソースプロバイダである。ネットワークアプリケーションサーバー１０９の例としては、クラウドファイルストレージプラットフォーム（例えばGoogle Drive、Dropbox、Box等）のようなファイルストレージプラットフォームがある。ネットワークアプリケーションサーバー１０９のさらなる例としては、カレンダープロバイダ、電子メールプロバイダ、又は他のリソースプラットフォームのようなアプリケーションリソースプラットフォーム（例えばWorkday、Asana、Jira、及びそれらの類似物）がある。図１に示された例示的システムアーキテクチャ１００は、単一のネットワークアプリケーションサーバー１０９を示すが、システムアーキテクチャ１００は、任意の個数のネットワークアプリケーションサーバー群１０９を含み得ることが理解されよう。
【００８６】
１つ以上のデータベース１１５は、ネットワーク接続型ストレージ（ＮＡＳ）デバイス又はデバイス群のようなデータストレージデバイス（群）として、又は別個のデータベースサーバー又はサーバー群として実現され得る。ある実施形態では、１つ以上のデータベース１１５は、MySQLデータベース（群）のようなリレーショナルデータベース（群）である。１つ以上のデータベース１１５は、グループベースコミュニケーションサーバー１１３によってアクセスされ及び記憶され、ＡＰＩコンポーネント１１７から送信された情報を含み、グループベースコミュニケーションサーバー１１３の動作を促進する。例えば、１つ以上のデータベース１１５は、複数のグループベースコミュニケーションチャンネル及び／又はそれらの類似物の間で組織化された複数のメッセージングコミュニケーションを限定ではなく含み得る。
【００８７】
この点において、１つ以上のデータベース１１５は、グループベースコミュニケーションシステム１０５の主データ記憶として機能し得る。以下に記載されるように、１つ以上のデータベース１１５は、データ記憶のバックアップ（スナップショット）を記憶し、インデックス生成プロセスのためにこれらバックアップが利用可能であるようにする。
【００８８】
インデックスコンパイラ１３３は、メッセージにインデックス付けするために、メタデータ及び／又はメッセージのコンテンツを処理し（例えば下に記載されるような従来のプリミティブを用いて）、及び検索のさまざまなファセット（すなわちグループベースコミュニケーションシステム１０５から結果を返す検索クエリ）を促進し得る。ある例示的実施形態では、会社の又はグループのメッセージは、別個にインデックス付けされるように（例えばそのグループ及び／又は会社に関連付けられた、他のグループ及び／又は会社とは共有されない別個のインデックスにおいて）、メッセージはインデックス付けされ得る。他の例示的実施形態では、メッセージは、別個の分散されたリポジトリにおいてインデックス付けされ得る（例えばセキュリティの目的で、データの分離を促進するために）。
【００８９】
１つ以上のクライアントデバイス１０１Ａ−１０１Ｎ及びグループベースコミュニケーションシステム１０５の間での電子情報のやりとりの例が以下に記載される。
【００９０】
例示的グループベースコミュニケーションシステムのある実施形態では、メッセージつまりメッセージングコミュニケーションは、クライアントデバイス１０１Ａ−１０１Ｎのうちのあるクライアントデバイスからグループベースコミュニケーションシステム１０５へ送られ得る。さまざまな実現例において、メッセージは、クライアントデバイス１０１Ａ−１０１Ｎのうちのあるクライアントデバイスによって直接に、通信ネットワーク１０３を通じてグループベースコミュニケーションシステム１０５に送られ得る。メッセージは、グループベースコミュニケーションサーバー１１３及び／又はその類似物のような１つ以上の媒介を介してグループベースコミュニケーションシステム１０５に送られてもよい。例えば、クライアントデバイス１０１Ａ−１０１Ｎは、デスクトップ、ラップトップ、タブレット、スマートフォン、及び／又はクライアントアプリケーションを実行しているそれらの類似物（例えばグループベースコミュニケーションアプリ）であり得る。
【００９１】
ある実現例では、メッセージは、メッセージ識別子、送信ユーザー識別子、グループ識別子、グループベースコミュニケーションチャンネル識別子、メッセージコンテンツ（例えばテキスト、絵文字、画像、リンク）、添付物（例えばファイル）、メッセージ階層データ（例えばそのメッセージは、他のメッセージの応答であり得る）、サードパーティメタデータ、及び／又はその他のようなデータを含み得る。ある実施形態では、クライアントデバイス１０１Ａ−１０１Ｎは、以下に示されるような、エクステンシブルマークアップランゲージ（「ＸＭＬ」）でフォーマットされたデータを含む、（セキュア）ハイパーテキストトランスファプロトコル（「ＨＴＴＰ（Ｓ）」）ＰＯＳＴメッセージの形態を実質的にとる、以下の例示的メッセージを提供し得る。
【００９２】
POST /authrequest.php HTTP/1.1
Host: www.server.com
Content-Type: Application/XML
Content-Length: 667
<?XML version = “1.0” encoding = “UTF-8”?>
<auth_request>
<timestamp>2020-12-31 23:59:59</timestamp>   
<user_accounts_details>
<user_account_credentials>
<user_name>ID_user_1</user_name>
<password>abc123</password>
//OPTIONAL <cookie>cookieID</cookie>
//OPTIONAL <digital_cert_link>www.mydigitalcertificate.com/ JohnDoeDaDoeDoe@gmail.com/mycertifcate.dc</digital_cert_link>
//OPTIONAL <digital_certificate>_DATA_</digital_certificate>
</user_account_credentials>
</user_accounts_details>
<client_details> //iOS Client with App and Webkit
//it should be noted that although several client details
//sections are provided to show example variants of client
//sources, further messages will include only on to save
//space
<client_IP>10.0.0.123</client_IP>
<user_agent_string>Mozilla/5.0 (iPhone; CPU iPhone OS 7_1_1 like Mac OS X) AppleWebKit/537.51.2 (KHTML, like Gecko) Version/7.0 Mobile/11D201 Safari/9537.53</user_agent_string>
<client_product_type>iPhone6,1</client_product_type>
<client_serial_number>DNXXX1X1XXXX</client_serial_number>
<client_UDID>3XXXXXXXXXXXXXXXXXXXXXXXXD</client_UDID>
<client_OS>iOS</client_OS>
<client_OS_version>7.1.1</client_OS_version>
<client_app_type>app with webkit</client_app_type>
<app_installed_flag>true</app_installed_flag>
<app_name>MSM.app</app_name>
<app_version>1.0 </app_version>
<app_webkit_name>Mobile Safari</client_webkit_name>
<client_version>537.51.2</client_version>
</client_details>
<client_details> //iOS Client with Webbrowser
<client_IP>10.0.0.123</client_IP>
<user_agent_string>Mozilla/5.0 (iPhone; CPU iPhone OS 7_1_1 like Mac OS X) AppleWebKit/537.51.2 (KHTML, like Gecko) Version/7.0 Mobile/11D201 Safari/9537.53</user_agent_string>
<client_product_type>iPhone6,1</client_product_type>
<client_serial_number>DNXXX1X1XXXX</client_serial_number>
<client_UDID>3XXXXXXXXXXXXXXXXXXXXXXXXD</client_UDID>
<client_OS>iOS</client_OS>
<client_OS_version>7.1.1</client_OS_version>
<client_app_type>web browser</client_app_type>
<client_name>Mobile Safari</client_name>
<client_version>9537.53</client_version>
</client_details>
<client_details> //Android Client with Webbrowser
<client_IP>10.0.0.123</client_IP>
<user_agent_string>Mozilla/5.0 (Linux; U; Android 4.0.4; en-us; Nexus S Build/IMM76D) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30</user_agent_string>
<client_product_type>Nexus S</client_product_type>
<client_serial_number>YXXXXXXXXZ</client_serial_number>
<client_UDID>FXXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXXX</client_UDID>
<client_OS>Android</client_OS>
<client_OS_version>4.0.4</client_OS_version>
<client_app_type>web browser</client_app_type>
<client_name>Mobile Safari</client_name>
<client_version>534.30</client_version>
</client_details>
<client_details> //Mac Desktop with Webbrowser
<client_IP>10.0.0.123</client_IP>
<user_agent_string>Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.75.14 (KHTML, like Gecko) Version/7.0.3 Safari/537.75.14</user_agent_string>
<client_product_type>MacPro5,1</client_product_type>
<client_serial_number>YXXXXXXXXZ</client_serial_number>
<client_UDID>FXXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXXX</client_UDID>
<client_OS>Mac OS X</client_OS>
<client_OS_version>10.9.3</client_OS_version>
<client_app_type>web browser</client_app_type>
<client_name>Mobile Safari</client_name>
<client_version>537.75.14</client_version>
</client_details>
<message>
<message_identifier>ID_message_10</message_identifier>
<team_identifier>ID_team_1</team_identifier>
<channel_identifier>ID_channel_1</channel_identifier>
<contents>That is an interesting invention. I have attached a copy our patent policy.</contents>
<attachments>patent_policy.pdf</attachments>
</message>
</auth_request>
グループベースコミュニケーションシステム１０５は、１つ以上のデータベース１１５におけるメッセージの記憶を促進するために、受信されたメッセージに基づいて記憶メッセージを作成し得る少なくとも１つのグループベースコミュニケーションサーバ１１３を備える。ある実現例では、記憶メッセージは、メッセージ識別子、グループ識別子、グループベースコミュニケーションチャンネル識別子、送信ユーザー識別子、トピックス、レスポンス、メッセージコンテンツ、添付物、メッセージ階層データ、サードパーティメタデータ、会話プリミティブデータ及び／又はその他のようなデータを含み得る。例えば、グループベースコミュニケーションサーバ１１３は、以下に示すような、ＸＭＬでフォーマットされたデータを含む、ＨＴＴＰ（Ｓ）  ＰＯＳＴメッセージの形態を実質的にとる、以下の例示的記憶メッセージを提供し得る。
【００９３】
POST /storage_message.php HTTP/1.1
Host: www.server.com
Content-Type: Application/XML
Content-Length: 667
<?XML version = “1.0” encoding = “UTF-8”?>
<storage_message>
<message_identifier>ID_message_10</message_identifier>
<team_identifier>ID_team_1</team_identifier>
<channel_identifier>ID_channel_1</channel_identifier>
<sending_user_identifier>ID_user_1</sending_user_identifier>
<topics>
<topic>inventions</topic>
<topic>patents</topic>
<topic>policies</topic>
</topics>
<responses>
<response>liked by ID_user_2</response>
<response>starred by ID_user_3</response>
</responses>
<contents>That is an interesting invention. I have attached a copy our patent policy.</contents>
<attachments>patent_policy.pdf</attachments>
<conversation_primitive>
conversation includes messages: ID_message_8, ID_message_9, ID_message_10, 
ID_message_11, ID_message_12
</conversation_primitive>
</storage_message>
ある実施形態において、上で定義されたグループ識別子は、メッセージと関連付けられ得る。実施形態において、上で定義されたグループベースコミュニケーションチャンネル識別子は、メッセージと関連付けられ得る。ある実施形態において、上で定義された送信ユーザー識別子は、メッセージと関連付けられ得る。ある実現例では、このメッセージは、そのメッセージを送ったユーザーの送信ユーザー識別子を決定するためにパースされ（parsed）得る（例えばプリハイパーテキストプロセッサ（ＰＨＰ）コマンドを用いて）。
【００９４】
ある実施形態において、トピック群は、メッセージと関連付けられ得る。ある実現例では、メッセージコンテンツは、そのメッセージで議論されているトピックを決定するためにパースされ得る（例えばＰＨＰコマンドを用いて）。例えば、メッセージ中のハッシュタグは、そのメッセージに関連付けられたチャンネルを示し得る。他の例では、メッセージは、メッセージに関連付けられたトピック群を決定するために、分析され（例えば、それ自身で、会話プリミティブ中の他のメッセージと共に）、又はトピックモデリングのような機械学習技術を用いてパースされ得る。
【００９５】
ある実施形態では、応答を示すデータは、そのメッセージと関連付けられ得る。例えば、他のユーザーによるメッセージへの応答は、反応（例えばメッセージに関連付けられた絵文字の選択、メッセージに関連付けられた「いいね」ボタンの選択）、メッセージに埋め込まれたハイパーリンクをクリックすること、メッセージへ応答すること（例えばメッセージに応答してグループベースコミュニケーションチャンネルにメッセージをポストすること）、メッセージに関連付けられたファイルをダウンロードすること、あるグループベースコミュニケーションチャンネルから他のグループベースコミュニケーションチャンネルへメッセージをシェアすること、メッセージをピン留めすること、メッセージに星を付けること、及び／又はその他を含み得る。ある実施形態では、他のユーザーによるメッセージへの応答に関するデータは、メッセージに含まれ得て、そのメッセージは、応答を決定するためにパースされ得る（例えばＰＨＰコマンドを用いて）。他の実現例では、メッセージへの応答に関するデータは、データベースから取り出され得る。例えば、メッセージに対する応答に関するデータは、以下のようなMySQLデータベースコマンドを介して取得され得る。
【００９６】
SELECT messageResponses
FROM MSM_Message
WHERE messageID = ID_message_10.
以後でさらに説明されるように、上記MySQLデータベースコマンドは、ライブの又は計算されたインデキシングのためにドキュメントを生成するように変更及び使用され得る（ＡＰＩコンポーネント１１７におけるライブインデキシングのためにMySQLクエリを介して）。
【００９７】
例えば、メッセージへの応答に関するデータは、メッセージについてのコンテキスト（例えばメッセージについての、あるユーザーの視点からのソーシャルスコア）を決定するのに用いられ得る。他の例では、メッセージへの応答に関連するデータは、ユーザーに関するコンテキストを決定するために分析され得る（例えばあるトピックにおけるユーザーの経験は、そのトピックに関するユーザーのメッセージに対する応答に基づいて決定され得る）。
【００９８】
ある実施形態において、添付物は、メッセージに含まれ得る。もし添付物が存在するなら、ファイルは、メッセージと関連付けられ得る。ある実現例では、メッセージは、添付物のファイル名を決定するためにパースされ得る（例えばＰＨＰコマンドを用いて）。例えば、ファイルコンテンツは、メッセージについてのコンテキストを決定するために分析され得る（例えば特許ポリシーの文書は、そのメッセージが「特許」というトピックに関連付けられていると表示し得る）。
【００９９】
ある実施形態において、サードパーティメタデータは、メッセージに関連付けられ得る。例えば、サードパーティメタデータは、会社、グループ、サードパーティアプリケーション（群）、サービス（群）、グループベースコミュニケーションチャンネル、及び／又はその他に特有である、メッセージ又はユーザーについての追加のコンテキストを提供し得る。ある実現例では、メッセージは、サードパーティメタデータを決定するためにパースされ得る（例えばＰＨＰコマンドを用いて）。例えば、サードパーティメタデータは、メッセージを送ったユーザーがグループベースコミュニケーションチャンネルの許可された代表者であるかを示し得る（例えば、許可された代表者は、グループベースコミュニケーションチャンネルにおける質問に応答するために会社によって許可され得る）。
【０１００】
ある実施形態において、会話プリミティブ（conversation primitive）は、メッセージと関連付けられ得る。ある実施形態では、会話プリミティブは、メッセージを分析し、インデックス付けし、記憶し、及び／又はその他をするのに用いられる要素である。例えば、メッセージは、それ自身で分析され得て、それ自身の会話プリミティブを形成し得る。他の例では、メッセージは、会話を構成する他のメッセージと共に分析され得て、会話を構成するメッセージは、会話プリミティブを形成し得る。ある実現例では、会話プリミティブは、当該メッセージ、特定の個数（例えば２）の先行するメッセージ及び特定の個数（例えば２）の後続するメッセージとして決定され得る。他の実現例では、会話プリミティブ群は、当該メッセージ及び他のメッセージ（例えばそのチャンネルにおける）で議論されているトピック及び／又はこれらメッセージの近接性（例えばメッセージ送信順序の近接性、メッセージ送信時刻の近接性）の分析に基づいて決定され得る。会話プリミティブ群は、会話（メッセージ及びそれらをとりまくメッセージ）に対するシングリング（shingling）及び検索のためにも用いられる。
【０１０１】
ある実施形態では、さまざまなメタデータ（上に記載されたように決定される）及びメッセージのコンテンツは、クライアントデバイス１０１Ａ−１０１Ｎからグループベースコミュニケーションシステム１０５へ通信ネットワーク１０３を介して送信される。
【０１０２】
電子メッセージデータをクライアントデバイス１０１Ａ−１０１Ｎから通信ネットワーク１０３を介して受け取ると、グループベースコミュニケーションサーバー１１３は、電子メッセージデータを処理し及び優先順位を付ける。グループベースコミュニケーションサーバー１１３は、通信ネットワーク１０３を介してグループベースコミュニケーションシステム１０５に接続されているクライアントデバイス１０１Ａ−１０１Ｎに、電子メッセージの永続型ブロードキャストを提供する。例えば、ユーザーJohnがクライアントデバイスを用いてグループベースコミュニケーションチャンネルにおいて電子メッセージを送るとき、グループベースコミュニケーションサーバー１１３は、この電子メッセージを、同じグループベースコミュニケーションチャンネルに関連付けられた他のクライアントデバイスにブロードキャストする。この点で、グループベースコミュニケーションサーバー１１３は、メッセージアンプリファイアとして働く。
【０１０３】
グループベースコミュニケーションサーバー１１３は、電子メッセージデータを１つ以上のデータベース１１５にライトするプロセスを開始するためにＡＰＩコンポーネント１１７と通信もする。
【０１０４】
［さまざまな実施形態で利用される例示的装置］
グループベースコミュニケーションサーバー１１３は、図２に示される装置２００のような１つ以上のコンピューティングシステムによって実現され得る。装置２００は、プロセッサ２０２、メモリ２０４、入力／出力回路２０６、通信回路２０８、ディスプレイ２１０、及びＡＰＩ回路２１２を含み得る。装置２００は、ここで説明される動作を実行するよう構成され得る。これら要素２０２−２１２は、機能的な限定について記載されているが、具体的な実現例は、特定のハードウェアの使用を必然的に含むことを理解されたい。これら要素２０２−２１２のいくつかは、同様の又は共通のハードウェアも含み得ることも理解されたい。例えば、回路のうちの２つのセットが同じプロセッサ、ネットワークインターフェイス、記憶媒体、及びそれらの類似物の使用を活用することで、それらの関連付けられた機能を実行し、重複するハードウェアが回路群のそれぞれのセットごとには必要がないようにしてもよい。
【０１０５】
ある実施形態においては、プロセッサ２０２（及び／又はコプロセッサ又はプロセッサを補助する又はそうでなければプロセッサに関連付けられた任意の他の処理回路）は、装置の要素の間で情報を受け渡しするためにバスを介してメモリ２０４と通信し得る。メモリ２０４は、非一時的であり、例えば１つ以上の揮発性及び／又は不揮発性メモリを含み得る。換言すれば、例えばメモリ２０４は、電子記憶装置（例えばコンピュータで読み取り可能な記憶媒体）であり得る。メモリ２０４は、この装置が、本開示の例示的実施形態に従ってさまざまな機能を実行できるようにするために、情報、データ、コンテンツ、アプリケーション、命令等を記憶するよう構成され得る。
【０１０６】
プロセッサ２０２は、いくつかの異なるやり方で実現され得て、例えば独立して実行するよう構成された１つ以上の処理装置を含み得る。ある好ましい、非限定的な実施形態においては、プロセッサ２０２は、命令の独立した実行、パイプライン処理、及び／又はマルチスレッディングを可能にするようにバスを介して並列に構成された１つ以上のプロセッサを含み得る。「処理回路」という語の使用は、装置の内部にあるシングルコアプロセッサ、マルチコアプロセッサ、マルチプロセッサ、及び／又はリモートつまり「クラウド」プロセッサを含むと理解されよう。
【０１０７】
ある好ましい、非限定的な実施形態においては、プロセッサ２０２は、メモリ２０４に記憶された又はそうでなければプロセッサ２０２にアクセス可能である命令を実行するよう構成され得る。ある好ましい、非限定的な実施形態においては、プロセッサ２０２は、ハードコードされた機能群を実行するよう構成され得る。よってハードウェア又はソフトウェアのいずれの方法によって構成されようとも、又はそれらの組み合わせによって構成されようとも、プロセッサ２０２は、そのように構成されている間は、本開示の実施形態による操作を実行することができるエンティティ（例えば回路として物理的に実現される）を表し得る。代替として、他の例として、プロセッサ２０２がソフトウェア命令の実行者として実現される時、これら命令は、命令が実行される時に、プロセッサ２０２がここに記載されたアルゴリズム及び／又は操作を実行するようにプロセッサを具体的に構成し得る。
【０１０８】
ある実施形態においては、装置２００は、入力／出力回路２０６を含み得て、これが今度は、出力をユーザーに提供するために、またある実施形態では、ユーザー入力の表示を受け取るためにプロセッサ２０２と通信し得る。入力／出力回路２０６は、ユーザーインターフェイスを備え得て、ディスプレイを含み得て、ウェブユーザーインターフェイス、モバイルアプリケーション、クライアントデバイス、キオスク等を備え得る。ある実施形態では、入力／出力回路２０６は、キーボード、マウス、ジョイスティック、タッチスクリーン、タッチエリア、ソフトキー、マイクロホン、スピーカ、又は他の入力／出力機構を含み得る。プロセッサ及び／又はプロセッサを備えるユーザーインターフェイス回路は、プロセッサにアクセス可能であるメモリ（例えばメモリ２０４、及び／又はこの類似物）上に記憶されたコンピュータプログラム命令（例えばソフトウェア及び／又はファームウェア）を通して１つ以上のユーザーインターフェイス要素の１つ以上の機能を制御するよう構成され得る。
【０１０９】
通信回路２０８は、装置２００と通信するネットワーク及び／又は任意の他のデバイス、回路、又はモジュールから／へデータを受信及び／又は送信するよう構成される、ハードウェアか、ハードウェア及びソフトウェアの組み合わせかのいずれかで実現されるデバイス又は回路のような任意の手段であり得る。この点で、通信回路２０８は、例えば、有線又は無線の通信ネットワークとの通信を可能にするネットワークインターフェイスを含み得る。例えば、通信回路２０８は、１つ以上のネットワークインターフェイスカード、アンテナ、バス、スイッチ、ルータ、モデム、及びサポートするハードウェア及び／又はソフトウェア、又はネットワークを介した通信を可能にするのに適切な任意の他のデバイスを含み得る。追加として又は代替として、通信回路２０８は、アンテナ／アンテナ群を介した信号の送信を行うために、又はアンテナ／アンテナ群を介して受け取られた信号の受信を扱うために、アンテナ／アンテナ群と相互作用する回路を含み得る。
【０１１０】
ＡＰＩ回路２１２（ここでは共有ＡＰＩ回路２１２とも呼ばれる）は、以下により完全に記載されるように、他のリモートリソースと共に、グループベースコミュニケーションシステム１０５のさまざまなコンポーネントの間での及び相互でのデータ伝送を促進するルーチン、プロトコル、及びソフトウェアシステムツールのセットを含むハードウェア及び／又はソフトウェアを含み得る。ＡＰＩ回路２１２は、情報を交換／伝送するためにグループベースコミュニケーションシステム１０５を他のリモートリソースと統合するためのインターフェイスを含み得る。ＡＰＩ回路２１２は、これらアクションを実行するためにプロセッサ２０２のような処理回路を利用し得る。しかし、ある実施形態では、ＡＰＩ回路２１２は、ここで説明される機能を実行するために別個のプロセッサ、特別に構成されたフィールドプログラマブルゲートアレイ（ＦＰＧＡ）、又は特定用途向け集積回路（ＡＳＩＣ）を含み得ることも理解されたい。ＡＰＩ回路２１２は、これら設計された機能を実現するためのハードウェア又はソフトウェアのいずれかによって構成されたこの装置のハードウェアコンポーネントを用いて実現され得る。
【０１１１】
ここで説明されている情報の全て又は一部は、装置２００の１つ以上の要素によって受け取られ、生成され、及び／又は維持されているデータに基づき得ることにも注意されたい。ある実施形態では、ここで説明されている機能の少なくとも一部を提供するために１つ以上の外部システム（リモートクラウドコンピューティング及び／又はデータ記憶システムのような）も活用され得る。
【０１１２】
ここで図３を参照すれば、クライアントデバイス（群）１０１（例えばクライアントデバイス１０１Ａ−１０１Ｎ）は、図３に示される装置３００のような１つ以上のコンピューティングシステムによって実現され得る。装置３００は、プロセッサ３０２、メモリ３０４、入力／出力回路３０６、通信回路３０８、ディスプレイ３１０、及び共有回路３１２を含み得る。これら要素３０２−３１２は、機能的限定について説明されているが、具体的な実現例は、特定のハードウェアの使用も必然的に含むことを理解されたい。これら要素３０２−３１２のいくつかは、同様の又は共通のハードウェアも含み得ることも理解されたい。例えば、回路のうちの２つのセットが同じプロセッサ、ネットワークインターフェイス、記憶媒体、及びそれらの類似物の使用を活用することで、それらの関連付けられた機能を実行し、重複するハードウェアが回路群のそれぞれのセットごとには必要がないようにしてもよい。
【０１１３】
ある実施形態においては、プロセッサ３０２（及び／又はコプロセッサ又はプロセッサを補助する又はそうでなければプロセッサに関連付けられた任意の他の処理回路）は、装置の要素の間で情報を受け渡しするためにバスを介してメモリ３０４と通信し得る。メモリ３０４は、非一時的であり、例えば１つ以上の揮発性及び／又は不揮発性メモリを含み得る。換言すれば、例えばメモリ３０４は、電子記憶装置（例えばコンピュータで読み取り可能な記憶媒体）であり得る。メモリ３０４は、１つ以上のデータベースを含み得る。さらに、メモリ３０４は、この装置が、本開示の例示的実施形態に従ってさまざまな機能を実行できるようにするために、情報、データ、コンテンツ、アプリケーション、命令等を記憶するよう構成され得る。
【０１１４】
プロセッサ３０２は、いくつかの異なるやり方で実現され得て、例えば独立して実行するよう構成された１つ以上の処理装置を含み得る。ある好ましい、非限定的な実施形態においては、プロセッサ３０２は、命令の独立した実行、パイプライン処理、及び／又はマルチスレッディングを可能にするようにバスを介して並列に構成された１つ以上のプロセッサを含み得る。「処理回路」という語の使用は、装置の内部にあるシングルコアプロセッサ、マルチコアプロセッサ、マルチプロセッサ、及び／又はリモートつまり「クラウド」プロセッサを含むと理解されよう。
【０１１５】
ある好ましい、非限定的な実施形態においては、プロセッサ３０２は、メモリ３０４に記憶された又はそうでなければプロセッサ３０２にアクセス可能である命令を実行するよう構成され得る。ある好ましい、非限定的な実施形態においては、プロセッサ３０２は、ハードコードされた機能群を実行するよう構成され得る。よってハードウェア又はソフトウェアのいずれの方法によって構成されようとも、又はそれらの組み合わせによって構成されようとも、プロセッサ３０２は、そのように構成されている間は、本開示の実施形態による操作を実行することができるエンティティ（例えば回路として物理的に実現される）を表し得る。代替として、他の例として、プロセッサ３０２がソフトウェア命令（例えばコンピュータプログラム命令）の実行者として実現される時、これら命令は、命令が実行される時に、プロセッサ３０２がここに記載されたアルゴリズム及び／又は操作を実行するようにプロセッサ３０２を具体的に構成し得る。
【０１１６】
ある実施形態においては、装置３００は、入力／出力回路３０６を含み得て、これが今度は、出力をユーザーに提供するために、またある実施形態では、ユーザー入力の表示を受け取るためにプロセッサ３０２と通信し得る。入力／出力回路３０６は、ユーザーインターフェイスを備え得て、ディスプレイを含み得て、ウェブユーザーインターフェイス、モバイルアプリケーション、クライアントデバイス、キオスク等を備え得る。ある実施形態では、入力／出力回路３０６は、キーボード、マウス、ジョイスティック、タッチスクリーン、タッチエリア、ソフトキー、マイクロホン、スピーカ、又は他の入力／出力機構を含み得る。プロセッサ及び／又はプロセッサを備えるユーザーインターフェイス回路は、プロセッサにアクセス可能であるメモリ（例えばメモリ３０４、及び／又はこの類似物）上に記憶されたコンピュータプログラム命令（例えばソフトウェア及び／又はファームウェア）を通して１つ以上のユーザーインターフェイス要素の１つ以上の機能を制御するよう構成され得る。
【０１１７】
通信回路３０８は、装置３００と通信するネットワーク及び／又は任意の他のデバイス、回路、又はモジュールから／へデータを受信及び／又は送信するよう構成される、ハードウェアか、ハードウェア及びソフトウェアの組み合わせかのいずれかで実現されるデバイス又は回路のような任意の手段であり得る。この点で、通信回路３０８は、例えば、有線又は無線の通信ネットワークとの通信を可能にするネットワークインターフェイスを含み得る。例えば、通信回路３０８は、１つ以上のネットワークインターフェイスカード、アンテナ、バス、スイッチ、ルータ、モデム、及びサポートするハードウェア及び／又はソフトウェア、又はネットワークを介した通信を可能にするのに適切な任意の他のデバイスを含み得る。追加として又は代替として、通信回路３０８は、アンテナ／アンテナ群を介した信号の送信を行うために、又はアンテナ／アンテナ群を介して受け取られた信号の受信を扱うために、アンテナ／アンテナ群と相互作用する回路を含み得る。
【０１１８】
共有回路３１２は、以下により完全に記載されるように、１つ以上のリモートリソースから、リモートデータオブジェクト（例えばファイル、タスク、コール、イベントデータ、カレンダーデータ等）に関連付けられた情報を受け取るよう構成されたハードウェアを含む。
【０１１９】
共有回路３１２は、これらアクションを実行するためにプロセッサ３０２のような処理回路を利用し得る。しかし、ある実施形態では、共有回路３１２は、ここで説明される機能を実行するために別個のプロセッサ、特別に構成されたフィールドプログラマブルゲートアレイ（ＦＰＧＡ）、又は特定用途向け集積回路（ＡＳＩＣ）を含み得ることも理解されたい。共有回路３１２は、これら設計された機能を実現するためのハードウェア又はソフトウェアのいずれかによって構成されたこの装置のハードウェアコンポーネントを用いて実現され得る。
【０１２０】
ここで説明されている情報の全て又は一部は、装置３００の１つ以上の要素によって受け取られ、生成され、及び／又は維持されているデータに基づき得ることにも注意されたい。ある実施形態では、ここで説明されている機能の少なくとも一部を提供するために１つ以上の外部システム（リモートクラウドコンピューティング及び／又はデータ記憶システムのような）も活用され得る。
【０１２１】
ネットワークアプリケーションサーバー１０９は、図４に示される装置４００のような１つ以上のコンピューティングシステムによって実現され得る。装置４００は、プロセッサ４０１、メモリ４０３、入力／出力回路４０５、通信回路４０７、及びインターフェイス生成回路４０９を含み得る。これら要素４０１−４０９は、機能的な限定について記載されているが、具体的な実現例は、特定のハードウェアの使用を必然的に含むことを理解されたい。これら要素４０１−４０９のいくつかは、同様の又は共通のハードウェアも含み得ることも理解されたい。例えば、回路のうちの２つのセットが同じプロセッサ、ネットワークインターフェイス、記憶媒体、及びそれらの類似物の使用を活用することで、それらの関連付けられた機能を実行し、重複するハードウェアが回路群のそれぞれのセットごとには必要がないようにしてもよい。
【０１２２】
ある実施形態においては、プロセッサ４０１（及び／又はコプロセッサ又はプロセッサを補助する又はそうでなければプロセッサに関連付けられた任意の他の処理回路）は、装置の要素の間で情報を受け渡しするためにバスを介してメモリ４０３と通信し得る。メモリ４０３は、非一時的であり、例えば１つ以上の揮発性及び／又は不揮発性メモリを含み得る。換言すれば、例えばメモリ４０３は、電子記憶装置（例えばコンピュータで読み取り可能な記憶媒体）であり得る。メモリ４０３は、装置４００が、本開示の例示的実施形態に従ってさまざまな機能を実行できるようにするために、情報、データ、コンテンツ、アプリケーション、命令等を記憶するよう構成され得る。
【０１２３】
プロセッサ４０１は、いくつかの異なるやり方で実現され得て、例えば独立して実行するよう構成された１つ以上の処理装置を含み得る。ある好ましい、非限定的な実施形態においては、プロセッサ４０１は、命令の独立した実行、パイプライン処理、及び／又はマルチスレッディングを可能にするようにバスを介して並列に構成された１つ以上のプロセッサを含み得る。
【０１２４】
ある好ましい、非限定的な実施形態においては、プロセッサ４０１は、メモリ４０３に記憶された又はそうでなければプロセッサ４０１にアクセス可能である命令を実行するよう構成され得る。ある好ましい、非限定的な実施形態においては、プロセッサ４０１は、ハードコードされた機能群を実行するよう構成され得る。よってハードウェア又はソフトウェアのいずれの方法によって構成されようとも、又はそれらの組み合わせによって構成されようとも、プロセッサ４０１は、そのように構成されている間は、本開示の実施形態による操作を実行することができるエンティティ（例えば回路として物理的に実現される）を表し得る。代替として、他の例として、プロセッサ４０１がソフトウェア命令の実行者として実現される時、これら命令は、命令が実行される時に、プロセッサ４０１がここに記載されたアルゴリズム及び／又は操作を実行するようにプロセッサ４０１を具体的に構成し得る。
【０１２５】
ある実施形態においては、装置４００は、入力／出力回路４０５を含み得て、これが今度は、出力をユーザーに提供するために、またある実施形態では、ユーザー入力の表示を受け取るためにプロセッサ４０１と通信し得る。入力／出力回路４０５は、ユーザーインターフェイスを備え得て、ディスプレイを含み得て、ウェブユーザーインターフェイス、モバイルアプリケーション、クライアントデバイス、キオスク等を備え得る。ある実施形態では、入力／出力回路４０５は、キーボード、マウス、ジョイスティック、タッチスクリーン、タッチエリア、ソフトキー、マイクロホン、スピーカ、又は他の入力／出力機構を含み得る。
【０１２６】
通信回路４０７は、装置４００と通信するネットワーク及び／又は任意の他のデバイス、回路、又はモジュールから／へデータを受信及び／又は送信するよう構成される、ハードウェアか、ハードウェア及びソフトウェアの組み合わせかのいずれかで実現されるデバイス又は回路のような任意の手段であり得る。この点で、通信回路４０７は、例えば、有線又は無線の通信ネットワークとの通信を可能にするネットワークインターフェイスを含み得る。例えば、通信回路４０７は、１つ以上のネットワークインターフェイスカード、アンテナ、バス、スイッチ、ルータ、モデム、及びサポートするハードウェア及び／又はソフトウェア、又はネットワークを介した通信を可能にするのに適切な任意の他のデバイスを含み得る。追加として又は代替として、通信回路４０７は、アンテナ／アンテナ群を介した信号の送信を行うために、又はアンテナ／アンテナ群を介して受け取られた信号の受信を扱うために、アンテナ／アンテナ群と相互作用する回路を含み得る。
【０１２７】
インターフェイス生成回路４０９は、ＡＰＩコンポーネント１１７及び／又は共有ＡＰＩ２１２とインタラクトするためのコミュニケーションチャンネルインターフェイスを生成するよう構成されたハードウェアを含む。インターフェイス生成回路４０９は、これらアクションを実行するためにプロセッサ４０１のような処理回路を利用し得る。しかし、ある実施形態では、インターフェイス生成回路４０９は、ここで説明される機能を実行するために別個のプロセッサ、特別に構成されたフィールドプログラマブルゲートアレイ（ＦＰＧＡ）、又は特定用途向け集積回路（ＡＳＩＣ）を含み得ることも理解されたい。インターフェイス生成回路４０９は、これら設計された機能を実現するためのハードウェア又はソフトウェアのいずれかによって構成されたこの装置のハードウェアコンポーネントを用いて実現され得る。
【０１２８】
ここで説明されている情報の全て又は一部は、装置４００の１つ以上の要素によって受け取られ、生成され、及び／又は維持されているデータに基づき得ることにも注意されたい。ある実施形態では、ここで説明されている機能の少なくとも一部を提供するために１つ以上の外部システム（リモートクラウドコンピューティング及び／又はデータ記憶システムのような）も活用され得る。
【０１２９】
「回路」という語は、ハードウェア及び実施形態によってはハードウェアを構成するソフトウェアを含むように広く理解されたい。したがってこの装置の要素について、ここで用いられる「回路」という語は、ここで説明されている特定の回路に関連付けられた機能を実行するよう構成された特定のハードウェアを含むように理解されるべきである。例えば、ある実施形態では、「回路」は、処理回路、記憶媒体、ネットワークインターフェイス、入力／出力デバイス、及びそれらの類似物を含み得る。ある実施形態では、装置２００の他の要素は、特定の回路の機能を提供又は補充し得る。例えば、プロセッサ２０２は、処理機能を提供し得て、メモリ２０４は、記憶機能を提供し得て、通信回路２０８は、ネットワークインターフェイス機能を提供し得る等である。同様に、装置３００の他の要素は、特定の回路の機能を提供又は補充し得る。例えば、プロセッサ３０２は、処理機能を提供し得て、メモリ３０４は、記憶機能を提供し得て、通信回路３０８は、ネットワークインターフェイス機能を提供し得る等である。さらに、装置４００の他の要素は、特定の回路の機能を提供又は補充し得る。例えば、プロセッサ４０１は、処理機能を提供し得て、メモリ４０３は、記憶機能を提供し得て、通信回路４０７は、ネットワークインターフェイス機能を提供し得る等である。
【０１３０】
理解されるように、任意のそのようなコンピュータプログラム命令（例えばプログラムコード命令）及び／又は他のタイプのコードは、コンピュータ、プロセッサ、又は他のプログラマブルな装置の回路にロードされて、機械上でコードを実行するそのコンピュータ、プロセッサ、又は他のプログラマブルな回路が、ここで記載されたものを含むさまざまな機能を実現するための手段を作り出すような機械を作り得る。
【０１３１】
上に説明されたように、及び本開示に基づいて理解されるように、本開示の実施形態は、方法、モバイルデバイス、バックエンドネットワークデバイス等として構成され得る。したがって実施形態は、ハードウェアだけを含む、又はソフトウェア及びハードウェアの任意の組み合わせを含むさまざまな手段を備え得る。さらに、実施形態は、記憶媒体内に実現されたコンピュータ読み取り可能なプログラム命令（例えばコンピュータソフトウェア）を有する、少なくとも１つの非一時的コンピュータ読み取り可能な記憶媒体上のコンピュータプログラム製品の形態をとり得る。任意の適切なコンピュータ読み取り可能な記憶媒体は、非一時的ハードディスク、ＣＤ−ＲＯＭ、フラッシュメモリ、光学記憶デバイス、又は磁気記憶デバイスを含むようにして利用され得る。
【０１３２】
［例示的データフロー］
既に述べたように、さまざまな例示的実施形態は、情報（例えばリモートデータオブジェクトに関連付けられた情報）の交換／伝送のために１つ以上のリモートリソースをグループベースコミュニケーションシステムと統合することを促進する。
【０１３３】
ある例示的実施形態では、共有ＡＰＩ２１２は、例えば、リモートリソースのファイル、タスク、コール、カレンダー、及び／又はイベントのようなリモートデータオブジェクトに関連付けられたデータのための、グループベースコミュニケーションシステム１０５と１つ以上のリモートリソースとの間の通信を促進し得る。リモートデータオブジェクトは、リモートリソースのリモートリソースメモリ（例えばメモリ４０３）に記憶され得る。限定ではなく説明のために、例えばファイルのようなリモートデータオブジェクトに関連付けられたデータについて、共有ＡＰＩ２１２がグループベースコミュニケーションシステム１０５とリモートリソースとの間の通信を促進する例を考えてみる。
【０１３４】
この例では、グループベースコミュニケーションチャンネルのユーザーのクライアントデバイス（例えばクライアントデバイス１０１）が、リモートリソース（例えばGoogle Drive（商標））のリンク（例えばファイル（例えばGoogle Drive（商標）のファイル）のためのＵＲＬ）を含むメッセージを、グループベースコミュニケーションチャンネルの他のユーザーに対してポストすると想定する。この点で、グループベースコミュニケーションサーバー１１３は、リンクを自動的に分析し、そのリンクに関連付けられたリモートリソース（例えばGoogle Drive（商標））を特定し得る。グループベースコミュニケーションサーバー１１３は、メッセージのリンク中のサーバードメイン名（例えばgoogle.com）に基づいてリモートリソースを特定し得る。また、このファイルがリモートで記憶されている（例えばリモートリソースのリモートリソースメモリ（例えばメモリ４０３））と想定する。グループベースコミュニケーションサーバー１１３は、そのファイルに関連付けられたデータについてのリクエストをリモートリソースに送り得る。ファイルを要求するリクエストの受領に応答して、リモートリソースのコミュニケーションデバイス（例えば装置４００）は、共有ＡＰＩ２１２とインタラクトし（例えばインターフェイス生成回路４０９を介して）、ファイルに関連付けられたデータを取得するために共有ＡＰＩ２１２のresource.remote.add機能ＡＰＩを呼び出し得る。
【０１３５】
resource.remote.add機能ＡＰＩを実行したことに応答して、リモートリソースのコミュニケーションデバイス（例えば装置４００）は、ファイルの名前（例えばファイル名「THISWILLWORK2」）を特定し、これらには限定されないが、そのファイルに関連付けられたそのファイルのサイズ、ファイルタイプ識別子、及びファイルタイプを含むそのファイルについてのリモートデータオブジェクトメタデータを生成すると共に、そのファイルのリモートデータオブジェクトグラフィック表現も生成し得る。リモートリソースのコミュニケーションデバイス（例えば装置４００）は、例えば、ファイルの名前と共に、リモートデータオブジェクトグラフィック表現、及びファイルに関連付けられたリモートデータオブジェクトメタデータをグループベースコミュニケーションサーバー１１３に送信すること又はアップロードすることによって、リモートデータオブジェクトグラフィック表現をグループベースコミュニケーションシステム１０５に追加することもし得る。グループベースコミュニケーションサーバー１１３は、ファイル名に部分的に基づいて、メモリデバイス（例えばメモリ２０４）内で、リモートデータオブジェクトメタデータ及びリモートデータオブジェクトグラフィック表現に関連付けられたデータを記憶及びインデックス付けし得る。
【０１３６】
リモートデータオブジェクトグラフィック表現をグループベースコミュニケーションシステム１０５に追加したことに応答して、リモートリソースのコミュニケーションデバイス（例えば装置４００）は、共有ＡＰＩ２１２と通信して（例えばインターフェイス生成回路４０９を介して）、共有ＡＰＩ２１２のchat.unfurl機能ＡＰＩを呼び出し実行し得る。chat.unfurl機能ＡＰＩを実行したことに応答して、リモートリソースのコミュニケーションデバイス（例えば装置４００）は、図６のユーザーインターフェイス６００に示されるように、リモートデータオブジェクトグラフィック表現を、レンダリングされたBlock Kit（Block Kitメッセージともここでは呼ばれる）ユーザーインターフェイスに自動的に展開（unfurl）し得る。リモートリソースのコミュニケーションデバイス（例えば装置４００）は、リモートデータオブジェクトグラフィック表現とのユーザーインタラクション、及びそのファイルに関連付けられたリンク（例えばGoogle Drive（商標）のファイル）を含むメッセージを最初にポストした、グループベースコミュニケーションチャンネルのユーザーのユーザー識別子を検出したことに応答して、リモートデータオブジェクトグラフィック表現を展開し得る。そのメッセージをポストしたグループベースコミュニケーションチャンネルのユーザーに関連付けられたユーザー識別子に部分的に基づいて、グループベースコミュニケーションチャンネル（例えばチャンネル# test_remote_files）を特定したことに応答して、リモートリソースのコミュニケーションデバイス（例えば装置４００）は、レンダリングされたBlock Kitユーザーインターフェイスをグループベースコミュニケーションサーバー１１３がグループベースコミュニケーションチャンネル（例えばchannel # test_remote_files）に提供できる（例えばポストできる）ようにするために、グループベースコミュニケーションサーバー１１３と通信し得る。この点で、グループベースコミュニケーションチャンネルのユーザーのクライアントデバイス（例えばクライアントデバイス１０１）は、そのレンダリングされたBlock Kitユーザーインターフェイスを表示（例えばディスプレイ３１０を介して）し得る。
【０１３７】
ここで図７を参照すれば、例示的ユーザーインターフェイスが例示的実施形態によって提供される。図７の例では、Block Kitユーザーインターフェイス７０１からの共有ファイルタブ７０３（共有フィーチャー７０３ともここでは呼ばれる）の選択の検出に応答して、グループベースコミュニケーションサーバー１１３は、リモートリソース（例えばGoogle Drive（商標））から受け取られたファイル（例えば「THISWILLWORK2」と名付けられたファイル）へのポインタ、メモリアドレス、及びそれらの類似物を、グループベースコミュニケーションシステム１０５の他のグループベースコミュニケーションチャンネル及び／又はユーザー（群）（例えばグループベースコミュニケーションチャンネル及び／又はそのファイルにアクセスする権限を持つユーザー）に対して、図８に示されるユーザーインターフェイス８００を生成しレンダリングし得る。このようにして、グループベースコミュニケーションサーバー１１３は、あるグループベースコミュニケーションチャンネル（例えばチャンネル# test_remote_files）からのファイルへのポインタ又はメモリアドレスを、他のグループベースコミュニケーションチャンネル（例えばチャンネル# feat-tech-files）及び／又はユーザー（群）と再共有し得る。
【０１３８】
他の例示的実施形態では、グループベースコミュニケーションサーバー１１３がさらなるフィーチャーのタブ７０５の選択の指示を検出したことに応答して、グループベースコミュニケーションサーバー１１３は、リモートリソース（例えばGoogle Drive（商標））から受け取られたそのファイル（例えば「THISWILLWORK2」と名付けられたファイル）へのポインタ又はメモリアドレスを削除し得て、そのファイルへのポインタ又はメモリアドレスが削除されたことを表す可視的表示を含む図９に示されるユーザーインターフェイス９００を生成及びレンダリングし得る。
【０１３９】
例示的実施形態では、グループベースコミュニケーションサーバー１１３は、共有ＡＰＩ２１２のresource.remote.list機能ＡＰＩを呼び出し、及びresource.remote.list機能ＡＰＩを起動／実行して、共有ユーザー識別子に関連付けられたグループベースコミュニケーションサーバー１１３のローカルメモリ（例えばメモリ２０４）に記憶された全てのローカルに記憶されたデータオブジェクト（例えばファイル、呼び出しオブジェクト、タスクオブジェクト、イベントオブジェクト及び／又はカレンダーオブジェクト）をクエリ及び取得し得る。グループベースコミュニケーションサーバー１１３は、共有ＡＰＩ２１２のresource.remote.list機能ＡＰＩを呼び出し、及びresource.remote.list機能ＡＰＩを起動／実行して、共有ユーザー識別子に関連付けられたリモートリソース（例えばGoogle Drive（商標）、Dropbox（商標）等）のリモートリソースメモリ（例えばメモリ４０３）に記憶された、リモートで記憶されたデータオブジェクト（例えばファイル、呼び出しオブジェクト、タスクオブジェクト、イベントオブジェクト及び／又はカレンダーオブジェクト）をクエリ及び取得することもし得る。共有ユーザー識別子は、ローカルに記憶されたデータオブジェクト及びリモートで記憶されたデータオブジェクトをグループベースコミュニケーションインターフェイスと共有したいという共有リクエストを開始したグループベースコミュニケーションユーザーと関連付けられている。グループベースコミュニケーションサーバー１１３は、ユーザー共有データオブジェクトリスト（例えば共有ユーザーインターフェイスに関連付けられたファイル、呼び出しオブジェクト、タスクオブジェクト、イベントオブジェクト及び／又はカレンダーオブジェクト）を、グループベースコミュニケーションインターフェイスにレンダリングし得て、ここでユーザー共有データオブジェクトリストは、ローカルに記憶されたデータオブジェクト及びリモートで記憶されたデータオブジェクトに関連付けられたデータオブジェクトグラフィック表現を含む。
【０１４０】
例示的実施形態では、グループベースコミュニケーションサーバー１１３は、ローカルに記憶されたデータオブジェクト及びリモートで記憶されたデータオブジェクトの、共有ユーザー識別子に関連付けられたグループベースコミュニケーションユーザーによるアクセスリーセンシー（例えばそれぞれの共有タイムスタンプに関連付けられた時刻に基づいて）に基づいてユーザー共有オブジェクトリストを順番付けし得る。より最近にアクセスされたデータアイテムは、ユーザー共有オブジェクトリストにおいて、より古いアクセスされたデータアイテムよりも、より高く順番付けされ得る。ある他の例示的実施形態では、グループベースコミュニケーションサーバー１１３は、ローカルに記憶されたデータオブジェクト及びリモートで記憶されたデータオブジェクトに関連付けられた共有ロケーション識別子に基づいて、ユーザー共有オブジェクトリストを順番付けし得る。共有ロケーション識別子は、その共有ユーザー識別子に関連付けられたグループベースコミュニケーションユーザーが、ローカルに記憶されたデータオブジェクト及びリモートで記憶されたデータオブジェクトを最も最近に共有したグループベースコミュニケーションチャンネル又はダイレクトメッセージを特定し得る。この点で、ユーザー共有オブジェクトリストは、グループベースコミュニケーションチャンネル又はダイレクトメッセージに共有された最も最近のローカルに記憶されたデータオブジェクト及びリモートで記憶されたデータオブジェクトが、順番付けされたユーザー共有オブジェクトリストにおいて、より古い共有されたローカルに記憶されたデータオブジェクト及びリモートで記憶されたデータオブジェクトに対して、より高くなるように順番付けされ得る。
【０１４１】
他の例示的実施形態では、グループベースコミュニケーションサーバー１１３は、共有ＡＰＩ２１２のresource.remote.list機能ＡＰＩを呼び出し、及びresource.remote.list機能ＡＰＩを起動／実行することによって、リモートデータオブジェクトタイプ識別子に関連付けられた、グループベースコミュニケーションサーバー１１３のローカルメモリ（例えばメモリ２０４）に記憶された全てのローカルに記憶されたデータオブジェクト（例えばファイル、又は呼び出しオブジェクト、又はタスクオブジェクト、又はイベントオブジェクト、又はカレンダーオブジェクト）をクエリ及び取得し得る。グループベースコミュニケーションサーバー１１３は、リモートリソースＡＰＩ２１２のresource.remote.list機能ＡＰＩを呼び出し、及びresource.remote.list機能ＡＰＩを起動／実行することによって、リモートデータオブジェクトタイプ識別子に関連付けられたリモートリソース（例えばGoogle Drive（商標）、Dropbox（商標）等）のリモートリソースメモリ（例えばメモリ４０３）に記憶されているリモートで記憶されているデータオブジェクト（例えばファイル、又は呼び出しオブジェクト、又はタスクオブジェクト、又はイベントオブジェクト、又はカレンダーオブジェクト）をクエリ及び取得することもし得る。リモートデータオブジェクトタイプ識別子は、データオブジェクトのタイプ（例えばファイルタイプ、コールオブジェクトタイプ、タスクオブジェクトタイプ、イベントオブジェクトタイプ、又はカレンダーオブジェクトタイプ）に関連付けられている。グループベースコミュニケーションサーバー１１３は、コモンオブジェクトタイプリスト（例えばファイルオブジェクトタイプリスト（ローカルに及びリモートで記憶されたデータアイテムがファイルに関連付けられている例において））をグループベースコミュニケーションインターフェイスにレンダリングし得て、ここでコモンオブジェクトタイプリストは、ローカルに記憶されたデータオブジェクト及びリモートで記憶されたデータオブジェクトに関連付けられたデータオブジェクトグラフィック表現を含む。例示的実施形態では、グループベースコミュニケーションサーバー１１３は、コモンオブジェクトタイプリストを、ローカルに記憶されたデータオブジェクト及びリモートで記憶されたデータオブジェクトのアクセスリーセンシーに基づいて（例えばそれぞれのリモートデータオブジェクトアクセスタイムスタンプに基づいて）順番付けし得る。より最近にアクセスされたデータアイテムは、コモンオブジェクトタイプリストの中で、より古くアクセスされたデータアイテムに対してより高く順番付けされ得る。ある他の例示的実施形態では、グループベースコミュニケーションサーバー１１３は、コモンオブジェクトタイプリストを、ローカルに記憶されたデータオブジェクト及びリモートで記憶されたデータオブジェクトに関連付けられた共有ロケーション識別子に基づいて順番付けし得る。共有ロケーション識別子は、グループベースコミュニケーションユーザーが、リモートデータオブジェクトタイプ識別子に関連付けられたローカルに記憶されたデータオブジェクト及びリモートで記憶されたデータオブジェクトを最も最近に共有したグループベースコミュニケーションチャンネル又はダイレクトメッセージを特定し得る。この点で、コモンオブジェクトタイプリストは、グループベースコミュニケーションチャンネル又はダイレクトメッセージに共有された最も最近にローカルに記憶されたデータオブジェクト及びリモートで記憶されたデータオブジェクトが、順番付けされたコモンオブジェクトタイプリストにおいて、より古い共有されたローカルに記憶されたデータオブジェクト及びリモートで記憶されたデータオブジェクトに対して、より高くなるように順番付けされ得る。
【０１４２】
ここで図１０を参照すれば、リモートデータオブジェクトをホストするリモートリソースとグループベースコミュニケーションシステムのグループベースコミュニケーションインターフェイスとの間のコミュニケーションを管理するためのフローチャートの例示的実施形態が提供される。操作１０００において、装置（例えばグループベースコミュニケーションサーバー１１３）は、リモートリソース（例えばGoogle Drive（商標））によるエンゲージメント（engagement）のために構成された共有アプリケーションプログラミングインターフェイス（例えば共有ＡＰＩ２１２、ＡＰＩコンポーネント１１７）を生成し得る。
【０１４３】
操作１００５において、装置（例えばグループベースコミュニケーションサーバー１１３）は、リモートデータオブジェクトに関連付けられたリモートデータオブジェクト識別子、グループベースコミュニケーションインターフェイス（例えばユーザーインターフェイス６００）に関連付けられたグループ識別子、及び共有ロケーション識別子（例えばグループベースコミュニケーションチャンネル識別子又はＤＭ識別子）を含むリモートデータオブジェクト共有リクエスト（例えば共有ファイルタブ７０３の選択に応答して生成されたリクエスト）を受け取り得る。ある例示的実施形態では、リモートデータオブジェクト共有リクエストは、その共有リクエストを開始したグループベースコミュニケーションユーザーに関連付けられた共有ユーザー識別子も含み得る。例示的実施形態では、リモートデータオブジェクトは、ファイル（群）、コールオブジェクト（群）、タスク（群）、イベントオブジェクト（群）、又はカレンダーオブジェクト（群）であり得る。操作１０１０において、装置（例えばグループベースコミュニケーションサーバー１１３）は、共有アプリケーションプログラミングインターフェイスを介してリモートデータオブジェクト共有通知をリモートリソースに送り得て、ここでリモートデータオブジェクト共有通知は、リモートデータオブジェクト識別子を含む。
【０１４４】
操作１０１５において、装置（例えばグループベースコミュニケーションサーバー１１３）は、リモートデータオブジェクト共有通知を送信したことに応答して、リモートリソースから共有アプリケーションプログラミングインターフェイスを介して、そのリモートデータオブジェクトに関連付けられたリモートデータオブジェクトメタデータを受け取り得る。ある例示的実施形態では、リモートデータオブジェクトメタデータは、リモートデータオブジェクトグラフィック表現（例えばその中でリモートリソースは後で展開し得る）、リモートデータオブジェクトの名前、リモートデータオブジェクトのサイズ、リモートデータオブジェクトタイプ識別子、及び任意の他の適切なリモートデータオブジェクトメタデータを含み得る。操作１０２０において、装置（例えばグループベースコミュニケーションサーバー１１３）は、リモートデータオブジェクトに関連付けられたリモートデータオブジェクトグラフィック表現を、グループベースコミュニケーションインターフェイスの共有ロケーション（例えばグループベースコミュニケーションチャンネル識別子に関連付けられたグループベースコミュニケーションチャンネル又はＤＭ識別子に関連付けられたＤＭ）に自動的にレンダリングし得て、ここで共有ロケーションは、共有ロケーション識別子に基づいて決定され、リモートデータオブジェクトグラフィック表現は、そのリモートデータオブジェクトのユーザーエンゲージメントを促進するよう構成されている。
【０１４５】
ここで図１１を参照すれば、リモートデータオブジェクトをホストするリモートリソースと、グループベースコミュニケーションシステムのグループベースコミュニケーションインターフェイスとの間の認証されたコミュニケーションを管理するための信号図の例示的実施形態が提供されている。操作１１００において、装置（例えばグループベースコミュニケーションサーバー１１３）は、グループベースコミュニケーションインターフェイス（例えばユーザーインターフェイス６００）を介して、リモートデータオブジェクト共有リクエストを受け取り得る。リモートデータオブジェクト共有リクエストは、認証トークン（例えばOAuthトークン）、リモートデータオブジェクトに関連付けられたリモートデータオブジェクト識別子、グループベースコミュニケーションインターフェイスに関連付けられたグループ識別子、及び共有ロケーション識別子を含み得る。リモートデータオブジェクトは、ファイル（群）、コールオブジェクト（群）、タスク（群）、イベントオブジェクト（群）、又はカレンダーオブジェクト（群）であり得る。
【０１４６】
例示的実施形態において、認証トークンは、リモートデータオブジェクトをホスト／記憶しているリモートリソースが、グループベースコミュニケーションシステム１０５と通信する（例えば、リモートデータオブジェクト共有リクエストを開始しているユーザーのクライアントデバイスがアクセスすることを承認された１つ以上のグループベースコミュニケーションチャンネル又は１つ以上のＤＭユーザーへのポインタ及び／又はメモリアドレス又はそれら類似物にアクセスする）ことを承認し得る。
【０１４７】
操作１１０５において、装置（例えばグループベースコミュニケーションサーバー１１３）は、共有アプリケーションプログラミングインターフェイスを介して、リモートデータ共有通知をリモートリソースに送信し得る（例えばリモートリソースのネットワークアプリケーションサーバー１０９を介して）。リモートデータオブジェクト共有通知は、認証トークン及びリモートデータオブジェクト識別子を含む。操作１１１０において、装置（例えばグループベースコミュニケーションサーバー１１３）は、リモートリソースがその認証トークンを検証したことに応答して、リモートリソースから（例えばリモートリソースのネットワークアプリケーションサーバー１０９を介して）共有アプリケーションプログラミングインターフェイスを介して、リモートデータオブジェクトに関連付けられたリモートデータオブジェクトメタデータを受け取り得る。
【０１４８】
操作１１１５において、装置（例えばグループベースコミュニケーションサーバー１１３）は、リモートデータオブジェクトに関連付けられたリモートデータオブジェクトグラフィック表現をグループベースコミュニケーションインターフェイスの共有ロケーションに自動的にレンダリングし得る。共有ロケーションは、共有ロケーション識別子に基づいて、及びリモートリソースが認証トークンを検証したことに応答して決定される。リモートデータオブジェクトグラフィック表現は、リモートデータオブジェクトのユーザーエンゲージメントを促進するよう構成される。
【０１４９】
ここで図１２を参照すれば、リモートデータオブジェクトをホストするリモートリソースと、グループベースコミュニケーションシステムのグループベースコミュニケーションインターフェイスとの間の認証されたコミュニケーションを管理するための信号図の他の例示的実施形態が提供されている。操作１２００において、ユーザーのクライアントデバイス（例えばクライアントデバイス１０１）は、メッセージ（例えばリンク（例えばＵＲＬ）を含んでいる）を、そのメッセージがリモートリソースによって記憶されたリモートデータオブジェクトに関連付けられている、グループベースコミュニケーションチャンネル又は他のユーザーとのダイレクトメッセージにポストする。
【０１５０】
操作１２０５において、装置（例えばグループベースコミュニケーションサーバー１１３）は、メッセージを分析し、リモートリソースのアイデンティティを決定する（例えばＵＲＬのドメインに基づいて）。操作１２１０において、装置（例えばグループベースコミュニケーションサーバー１１３）は、ポストされたメッセージを分析することに応答して、リモートデータオブジェクトについてのリモートデータオブジェクトアップデートリクエストを生成し得る。例示的実施形態において、リモートデータアップデートリクエストは、認証トークン（例えばOAuthトークン）、リモートデータオブジェクトに関連付けられたリモートデータオブジェクト識別子、グループベースコミュニケーションインターフェイスに関連付けられたグループ識別子、及びアップデートロケーション識別子を含み得る。認証トークンは、リモートデータオブジェクトをホスト／記憶しているリモートリソースが、グループベースコミュニケーションシステム１０５と通信する（例えば、ユーザーのクライアントデバイスがアクセスすることを承認された１つ以上のグループベースコミュニケーションチャンネル又は１つ以上のＤＭユーザーへのポインタ及び／又はメモリアドレス又はそれら類似物にアクセスする）ことを承認し得る。
【０１５１】
操作１２１５において、装置（例えばグループベースコミュニケーションサーバー１１３）は、アプリケーションプログラミングインターフェイス（例えば共有ＡＰＩ２１２、ＡＰＩコンポーネント１１７）を介して、リモートデータオブジェクトアップデートリクエストをリモートリソースに送信し得る。操作１２２０において、装置（例えばグループベースコミュニケーションサーバー１１３）は、リモートデータオブジェクトアップデートリクエストを送信したことに応答して及びリモートリソースがその認証トークンを検証したことに応答して、リモートリソースから、アプリケーションプログラミングインターフェイスを介して、リモートデータオブジェクトに関連付けられたリモートデータオブジェクトメタデータを受け取り得る。
【０１５２】
操作１２２５において、装置（例えばグループベースコミュニケーションサーバー１１３）は、リモートデータオブジェクトに関連付けられたリモートデータオブジェクトグラフィック表現を、グループベースコミュニケーションインターフェイスのアップデートロケーション（例えばグループベースコミュニケーションチャンネル、他のユーザーとのＤＭ）に、リモートデータオブジェクトメタデータに部分的に基づいてレンダリングし得る。アップデートロケーションは、アップデートロケーション識別子に基づいて決定され得る。リモートデータオブジェクトグラフィック表現は、ユーザーのクライアントデバイス（例えばクライアントデバイス１０１）によってアクセス可能である。
【０１５３】
操作１２３０において、ユーザーのクライアントデバイス（例えばクライアントデバイス１０１）は、リモートデータオブジェクトグラフィック表現とエンゲージつまりインタラクトするよう構成される。操作１２３５において、装置（例えばグループベースコミュニケーションサーバー１１３）は、クライアントデバイスによるリモートデータオブジェクトグラフィック表現とのエンゲージメント／インタラクションに応答して、リモートデータオブジェクトのプレビュー画像（例えばプレビュー画像オブジェクト）のためにリモートリソースへリクエストを生成及び送信し得る。操作１２４０において、装置（例えばグループベースコミュニケーションサーバー１１３）は、リモートリソースがリクエストを装置から受け取り認証トークンを検証したことに応答して、クライアントデバイスによるインタラクション又はアクセスのためのリモートデータオブジェクトのプレビュー画像を持つグループベースコミュニケーションインターフェイスをレンダリングし得る。
【０１５４】
ここで図１３を参照すれば、リモートデータオブジェクトのためのリモートプレビューを生成するための例示的方法のフローチャート図が呈示される。この例示的方法は、リモートデータオブジェクトの異なるプロパティ及び／又はプレビューをリクエストしているユーザープロフィールの異なるプロパティに従って、リモートデータオブジェクトのためのリモートプレビューを生成するために利用され得る。例えば、グループベースコミュニケーションチャンネルのメンバーは、リモートデータオブジェクトへの異なるアクセス権を有し得るので、装置（例えばグループベースコミュニケーションサーバー１１３）は、リモートデータオブジェクトの特定のアクセス権パラメータに従って、特定のアクセス権調整済み（access-rights-adjusted）のリモートプレビュー（例えば、そのリモートデータオブジェクトについての作成者のユーザープロフィールによって定義される予め選択されたプレビュー、リモートデータオブジェクトに関連付けられたリモートリソースによって生成されたプレビュー、プレビューをリクエストしているユーザーのプロフィールのアクセス権に基づいて生成されたプレビュー等）を生成し得る。この例示的方法で説明されている提案される技術の局面は、グループベースコミュニケーションシステムのセキュリティ及びプライバシーフィーチャーと共に、グループベースコミュニケーションシステムにおけるリモートデータオブジェクトについてのアクセス制御管理の効率及び信頼性を向上し得る。
【０１５５】
操作１３００において、装置（例えばグループベースコミュニケーションサーバー１１３）は、リモートデータオブジェクトについてのリモートデータプレビューリクエストを特定する。例えば、装置は、グループベースコミュニケーションシステム１０５のエンドユーザープロフィールが、リモートデータオブジェクトについてのリモートプレビューをリクエストするよう構成されたアクションを実行したことを特定し得る。適切なアクションの例には、ポインタをリモートデータオブジェクトについてのリモートデータオブジェクトグラフィック表現の上でホバリングさせること、リモートデータオブジェクトについてのリモートプレビューをリクエストするよう構成されたキー組み合わせを押すこと、リモートデータオブジェクトについてのリモートプレビューをリクエストするよう構成されたタッチパターン（例えば２本指の拡張タッチパターン及び／又は２本指の最小化タッチパターン）を実行すること、リモートデータオブジェクトについてのリモートデータオブジェクトグラフィック表現の上で右クリックを実行すること等が含まれる。
【０１５６】
操作１３０５において、装置（例えばグループベースコミュニケーションサーバー１１３）は、リモートメタデータリクエストを、リモートデータオブジェクトについてのリモートリソースへ送信し得て、これによってリモートデータオブジェクトについてリモートプレビューメタデータを受け取り得る。リモートプレビューメタデータは、そのリモートデータオブジェクトについての１つ以上のアクセスセキュリティポリシー、リモートデータオブジェクトのインタラクティブプレビュー、リモートデータオブジェクトのインデックス付きバージョン等のうちの少なくとも１つを含み得る。例えば、リモートリソースは、リモートデータオブジェクトの特定の部分がアクセス制限されていることを特定し、そのような特定の部分を含まないリモートデータオブジェクトのインタラクティブプレビューを、リモートプレビューメタデータの少なくとも一部として、生成し得る。ある実施形態では、リモートプレビューメタデータは、プレビューに関連したいかなる情報もそのリモートデータオブジェクトについては利用可能ではないことを示し得る。
【０１５７】
操作１３１０において、装置（例えばグループベースコミュニケーションサーバー１１３）は、リモートデータオブジェクトのためのローカルプレビューメタデータを、リモートデータオブジェクトのためのリモートオブジェクトメタデータから取得する。ある実施形態では、リモートデータオブジェクトのためのリモートオブジェクトメタデータは、リモートデータオブジェクトのリモートプレビューを生成するのに用いられ得る情報（例えばリモートデータオブジェクトのインデックス付きバージョン）を含む。ある実施形態では、操作１３１０でローカルプレビューメタデータとして取得された情報のうちの少なくとも一部は、操作１３０５でリモートプレビューメタデータとして受け取られた情報のうちの一部に少なくとも部分的に依存する。例えば、もしリモートプレビューメタデータがリモートデータオブジェクトについてのアクセス制御制限が存在しないことを示すなら、装置は、そのリモートデータオブジェクトについてのリモートオブジェクトメタデータの全てを用いて、リモートデータオブジェクトのためのリモートプレビューを生成し得る。逆に、もしリモートプレビューメタデータがリモートデータオブジェクトについてのアクセス制御制限が存在することを示すなら、装置は、非機密とみなされるリモートデータオブジェクトについてのリモートデータオブジェクトメタデータの一部（例えばリモートデータオブジェクトのインデックス付きのバージョン）だけを用いて、そのリモートデータオブジェクトについてのリモートプレビューを生成し得る。ある実施形態では、もしリモートプレビューメタデータがリモートデータオブジェクトのインタラクティブプレビューを含むなら、装置は、ローカルプレビューメタデータを取得せずに、その代わりそのインタラクティブプレビューを用いてリモートデータオブジェクトのリモートプレビューを生成する。
【０１５８】
操作１３１５において、装置（例えばグループベースコミュニケーションサーバー１１３）は、そのリモートデータオブジェクトについてのリモートプレビューメタデータ及びそのリモートデータオブジェクトについてのローカルプレビューメタデータに基づいて、リモートデータオブジェクトのためのリモートプレビューを生成する。ある実施形態では、リモートデータオブジェクトのためのリモートプレビューメタデータが、リモートデータオブジェクトのインタラクティブプレビューを含むと判定されたことに応答して、装置は、リモートプレビューをそのインタラクティブプレビューに基づいて決定する。ある実施形態では、リモートデータオブジェクトのためのリモートプレビューメタデータが、そのリモートデータオブジェクトについてのアクセス制御が存在することを示すと判定されたことに応答して、装置は、非機密であるとみなされるリモートデータオブジェクト（例えばリモートデータオブジェクトのインデックス付きのバージョン）についてのリモートデータオブジェクトメタデータの一部に基づいて、リモートプレビューを決定する。ある実施形態では、リモートデータオブジェクトについてのリモートプレビューメタデータが、そのリモートデータオブジェクトについてのアクセス制御が存在しないことを示すと判定したことに応答して、装置は、リモートデータオブジェクトについてのリモートオブジェクトメタデータオブジェクトの全ての部分に基づいてリモートプレビューを決定する。ある実施形態では、リモートデータオブジェクトについてのリモートプレビューメタデータが、そのリモートデータオブジェクトについての特定のアクセス制御制限を示すと判定したことに応答して、装置は、リモートデータオブジェクトについてのリモートデータオブジェクトメタデータの中の情報をフィルタリングし、リモートデータオブジェクトのリモートプレビューを生成するのに適切な情報を決定する。
【０１５９】
ここで図１５を参照すれば、リモートデータオブジェクトについてのリモートプレビューを生成及びレンダリングするための例示的方法の信号図が呈示される。操作１５００において、クライアントデバイス（例えばクライアントデバイス１０１）は、リモートデータオブジェクトについてのリモートプレビューリクエストをサーバーデバイス（例えばグループベースコミュニケーションサーバー１１３）に送る。操作１５０５において、サーバーデバイスは、リモートプレビューリクエストを分析して、リモートデータオブジェクトを特定する。操作１５１０において、サーバーデバイスは、そのリモートデータオブジェクトについてのリモートメタデータリクエストを生成する。操作１５１５において、サーバーデバイスは、リモートデータオブジェクトについてのリモートメタデータリクエストをリモートデータオブジェクトに関連付けられたリモートリソースに送る。操作１５２０において、リモートリソースは、リモートデータオブジェクトについてのリモートプレビューメタデータをサーバーデバイスに送信する。操作１５２５において、サーバーデバイスは、リモートデータオブジェクトについてのローカルプレビューメタデータを取得する。操作１５２５において、サーバーデバイスは、そのリモートデータオブジェクトについてのリモートプレビューメタデータ及びリモートデータオブジェクトについてのローカルプレビューメタデータに基づいて、リモートデータオブジェクトについてのリモートプレビューを生成する。操作１５３０において、サーバーデバイスは、リモートプレビューをクライアントデバイスに送信する。操作１５３５において、クライアントデバイスは、リモートプレビューをレンダリングする。
【０１６０】
ここで図１４を参照すれば、リモートデータオブジェクトについてのリモートデータオブジェクト識別子に基づいて、リモートデータオブジェクトアクセスリクエストを処理するための例示的方法のフローチャートダイヤグラムが呈示される。この例示的方法は、リモートデータオブジェクトについてのリモートオブジェクトメタデータが、利用可能な主キーフィールドの個数を制限する構造化されたフォーマットで記憶される時に、同じリモートデータオブジェクトについての２つ以上のデータオブジェクト識別子を維持する（例えばリモートデータオブジェクトについてのリモートソース側識別子と、リモートデータオブジェクトについてのグループベースシステム側識別子との関連性を記憶する）のに特に適し得る。そのような文脈では、例示的方法の局面によって開示されている間接的なルックアップ技術を利用すれば、メタデータデータベース記憶に関連付けられた記憶コストを低減し、メタデータデータベース取得の計算コスト、及びスケーラビリティ及びメタデータデータベースの再利用性を増加し得る。
【０１６１】
操作１４００において、装置（例えばグループベースコミュニケーションサーバー１１３）は、リモート相関テーブル中のリモートデータオブジェクトについてのリモートリソース識別子、及びリモートデータオブジェクトについてのローカル識別子を記憶し、ここでリモートデータオブジェクト識別子は、リモート相関テーブルのための主キーである。ある実施形態では、リモートデータオブジェクトについてのローカル識別子は、リモート相関テーブルについて主キーではない。リモート相関テーブルは、リレーショナルデータベース（例えばSQLデータベース）中のテーブル及び／又は構造化されたファイルベースのデータベース（例えばJSONデータベース）であり得る。
【０１６２】
操作１４０５において、装置（例えばグループベースコミュニケーションサーバー１１３）は、リモートデータオブジェクトについてのローカル識別子及びリモートデータオブジェクトについてのリモートデータオブジェクトメタデータをローカル相関テーブル内に記憶し、ここでこのローカル識別子は、ローカル相関テーブルについての主キーである。ローカル相関テーブルは、リレーショナルデータベース（例えばSQLデータベース）中のテーブル及び／又は構造化されたファイルベースのデータベース（例えばJSONデータベース）であり得る。
【０１６３】
操作１４１０において、装置（例えばグループベースコミュニケーションサーバー１１３）は、リモートデータオブジェクトについてのリモートデータオブジェクト識別子に関連付けられたリモートオブジェクトアクセスリクエストを受け取る。ある実施形態では、リモートオブジェクトアクセスリクエストは、リモートデータオブジェクトに関連付けられた情報（例えばリモートオブジェクトメタデータ情報）を検索するためのリクエストである。ある実施形態では、リモートデータオブジェクトリクエストは、リモートデータオブジェクトのコンテンツを閲覧するためのリクエストである。ある実施形態では、リモートデータオブジェクトリクエストは、リモートデータオブジェクトのコンテンツを変更するためのリクエストである。ある実施形態では、リモートデータオブジェクトリクエストは、リモートデータオブジェクトを削除するためのリクエストである。ある実施形態では、リモートデータオブジェクトリクエストは、そのリモートデータオブジェクトのプロパティ（例えばアクセス制限パラメータ、アドレス等）を変更するためのリクエストである。ある実施形態では、リモートオブジェクトアクセスリクエストは、リモートデータオブジェクトについてのリモートリソース識別子を含む。
【０１６４】
操作１４１５において、装置（例えばグループベースコミュニケーションサーバー１１３）は、リモート相関テーブル及びリモートデータオブジェクトについてリモートデータオブジェクト識別子に基づいて、リモートデータオブジェクトについてのローカル識別子を求める。ある実施形態では、装置は、主キーとしてリモートリソース識別子を用いてリモート相関テーブルの逆引き（reverse lookup）を実行することによって、リモートリソース識別子に関連付けられたリモート相関テーブルエントリを特定し、特定のリモート相関テーブルエントリに関連付けられたローカル識別子をそれから取得する。
【０１６５】
操作１４２０において、装置（例えばグループベースコミュニケーションサーバー１１３）は、リモートデータオブジェクトについてのリモートデータオブジェクトメタデータを、ローカル相関テーブル及びリモートデータオブジェクトについてのローカル識別子に基づいて求める。ある実施形態では、この装置は、主キーとしてリモートデータオブジェクトについてのローカル識別子を用いてローカル相関テーブルの逆引きを実行することによって、ローカル識別子に関連付けられたローカル相関テーブルエントリを特定し、特定のリモート相関テーブルエントリに関連付けられたリモートデータオブジェクトメタデータをそれから取得する。
【０１６６】
操作１４２５において、装置（例えばグループベースコミュニケーションサーバー１１３）は、リモートオブジェクトについてのリモートオブジェクトアクセスリクエストを、そのリモートデータオブジェクトについてのリモートデータオブジェクトメタデータに基づいて処理する。ある実施形態では、この装置は、リモートオブジェクトアクセスリクエストによって示された所望のアクションを、リモートデータオブジェクトメタデータに基づいて実行する。例えば、もし所望のアクションが、特定のリモートデータオブジェクト識別子を有するリモートデータオブジェクトを取得することであるなら、この装置は、リモートデータオブジェクトを取得し、検索結果インターフェイスを用いてそれを検索結果として提示し得る。他の例では、もし所望のアクションが、特定のリモートデータオブジェクト識別子を有するリモートデータオブジェクトを変更することであるなら、この装置は、リクエストされたようにリモートデータオブジェクトを変更し、及び／又はリモートデータオブジェクトの変更のためのリクエストを、特定のデータオブジェクトに関連付けられたリモートリソースに送り得る。さらなる例として、もし所望のアクションが、特定のリモートデータオブジェクト識別子を有するリモートデータオブジェクトを削除することであるなら、この装置は、リクエストされたようにリモートデータオブジェクトを削除し、及び／又はリモートデータオブジェクトの削除のためのリクエストを、特定のデータオブジェクトに関連付けられたリモートリソースに送り得る。
【０１６７】
［追加の実装の詳細］
例示的処理システムはここで図において記載されてきたが、ここで記載されている本主題及び機能的動作の実装は、本明細書において開示された構造及びそれらの構造的等価物を含む、他のタイプのデジタル電子回路において、又はコンピュータソフトウェア、ファームウェア、又はハードウェアにおいて、又はそれらの１つ以上の組合せにおいて、実現化され得る。
【０１６８】
ここで記載された主題の実施形態及び動作は、本明細書において開示された構造及びそれらの構造的等価物を含む、デジタル電子回路において、又はコンピュータソフトウェア、ファームウェア、又はハードウェアにおいて、又はそれらの１つ以上の組合せにおいて、実現化され得る。ここで記載された主題の実施形態は、情報／データ処理装置による実行のために、又は情報／データ処理装置の動作を制御するために、コンピュータ読み取り可能な記憶媒体上にエンコードされた、１つ以上のコンピュータプログラム、すなわちコンピュータプログラム命令の１つ以上のモジュールとして実現化され得る。代替として、又は追加として、プログラム命令は、人工的に生成され搬送される信号、例えば機械生成された電気的、光学的、又は電磁的信号の上にエンコードされ得て、そのような信号は、情報／データ処理装置による実行のために適切な受信機装置への送信のために情報／データをエンコードするために生成されている。コンピュータ読み取り可能な記憶媒体は、コンピュータで読み取り可能な記憶装置、コンピュータで読み取り可能な記憶基板、ランダム又はシリアルアクセスメモリアレイ又はデバイス、又はそれらの１つ以上の組合せであり得るか、又はそれらに含まれ得る。さらに、コンピュータ読み取り可能な記憶媒体は、搬送される信号ではない一方で、コンピュータ読み取り可能な記憶媒体は、人工的に生成された搬送される信号中にエンコードされたコンピュータプログラム命令のソース又は宛先であり得る。コンピュータ読み取り可能な記憶媒体は、１つ以上の別個の物理的要素又は媒体（例えば複数のＣＤ、ディスク、又は他の記憶装置）であり得て、又はそれに含まれ得る。
【０１６９】
ここで記載された動作は、１つ以上のコンピュータ読み取り可能な記憶装置上に記憶された、又は他のソースから受信された情報／データに対して、情報／データ処理装置によって実行される動作として実現化され得る。
【０１７０】
「データ処理装置」という語は、例示として、プログラム可能なプロセッサ、コンピュータ、システムオンチップ、又は複数のプロセッサ、又は前記の組合せを含む、データを処理する全ての種類の装置、デバイス、及び機械を包含する。装置は、例えば、ＦＰＧＡ（フィールドプログラマブルゲートアレイ）又はＡＳＩＣ（特定用途向け集積回路）のような専用の論理回路を含み得る。この装置は、ハードウェアに加えて、対象となるコンピュータプログラムのための実行環境を作るコード、例えば、プロセッサのファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、クロスプラットフォームランタイム環境、仮想機械、又はこれらの１つ以上の組合せも含み得る。この装置及び実行環境は、ウェブサービス、分散化コンピューティング、及びグリッドコンピューティングインフラストラクチャのような、さまざまな異なるコンピューティングモデルインフラストラクチャを実現し得る。
【０１７１】
コンピュータプログラム（プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、又はコードとしても知られている）は、コンパイラ型言語又はインタープリタ型言語、宣言型言語又は手続き型言語、を含む任意の形態のプログラミング言語で記述され得て、それは、スタンドアローンプログラムとして、又はモジュール、要素、サブルーチン、オブジェクト、又はコンピューティング環境における使用に適した他のユニットとしてのものを含む任意の形態に展開され得る。コンピュータプログラムは、そうである必要はないが、ファイルシステム中のファイルに対応してもよい。プログラムは、他のプログラム又は情報／データを保持するファイルの一部の中に（例えば、マークアップ言語文書内に記憶された１つ以上のスクリプト）、当該プログラムの専用の単一のファイルの中に、又は複数の連携されたファイルの中に（例えば、１つ以上のモジュール、サブプログラム、又はコードの一部を記憶するファイル群）記憶され得る。コンピュータプログラムは、１つのコンピュータ上で、又は１つのサイトに位置する又は複数のサイトにわたって分散化され通信ネットワークによって相互接続されている複数のコンピュータ群上で、実行されるように展開され得る。
【０１７２】
ここで記載されている処理及びロジックフローは、入力情報／データに対して操作を行い、出力を生成することによって、アクションを実行するために、１つ以上のコンピュータプログラムを実行する１つ以上のプログラム可能なプロセッサによって実行され得る。コンピュータプログラムの実行に適したプロセッサは、例として、汎用及び特定用途向けの両方のマイクロプロセッサ、及び任意の種類のデジタルコンピュータの任意の１つ以上のプロセッサを含む。一般に、プロセッサは、リードオンリーメモリ、ランダムアクセスメモリ、又はそれら両方から、命令及び情報／データを受け取る。コンピュータの本質的な要素は、命令に従ってアクションを実行するプロセッサ、及び命令及びデータを記憶する１つ以上のメモリデバイスである。一般に、コンピュータは、情報／データをそれから受け取る、又は情報／データをそれに転送する、又はそれら両方を行う、データを記憶する１つ以上のマスストレージデバイス、例えば、磁気的、磁気光学的ディスク、又は光学ディスクも含むか、又はそれに動作可能に結合される。しかし、コンピュータは、そのようなデバイスを有する必要はない。コンピュータプログラム命令及び情報／データを記憶するのに適するデバイスは、例として、半導体メモリデバイス、例えば、ＥＰＲＯＭ、ＥＥＰＲＯＭ、及びフラッシュメモリデバイス、磁気ディスク、例えば、内部ハードディスク又は取り外し可能なディスク、磁気光学ディスク、及びＣＤ  ＲＯＭ及びＤＶＤ−ＲＯＭディスクを含む、全ての形態の不揮発性メモリ、媒体及びメモリデバイスを含む。プロセッサ及びメモリは、特定用途向け論理回路によって補足され得て、又は、特定用途向け論理回路の中に組み込まれ得る。
【０１７３】
ユーザーとの相互作用を提供するために、ここで記載された主題の実施形態は、情報／データをユーザーに表示するディスプレイデバイス、例えばＣＲＴ（陰極線管）又はＬＣＤ（液晶ディスプレイ）モニタ及びキーボード及びポインティングデバイス、例えばマウス又はトラックボールを有するコンピュータ上で実現化され得て、キーボード及びポインティングデバイスは、ユーザーがコンピュータに入力を提供し得る。ユーザーとの相互作用を提供するために他の種類のデバイスも用いられ得て、例えば、ユーザーに提供されるフィードバックは、任意の形態の感覚的フィードバック、例えば、視覚的フィードバック、聴覚的フィードバック、又は触覚的フィードバックであり得て、ユーザーからの入力は、音響、音声、又は触覚の入力を含む任意の形態で受け取られ得る。加えて、コンピュータは、ユーザーによって用いられるデバイスへ文書を送り、及びそのようなデバイスから文書を受け取ることによって、ユーザーと相互作用をし得る。例えば、ウェブブラウザから受け取られた要求に応答して、ウェブページをユーザーのクライアントデバイス上のウェブブラウザに送信することによって、ユーザーと相互作用をし得る。
【０１７４】
ここで記載された主題の実施形態は、バックエンドのコンポーネントを、例えば情報／データサーバとして含む、又はミドルウェアコンポーネントを含むサーバー、例えばアプリケーションサーバー、又はフロントエンドコンポーネント、例えばそれによってここで開示された主題の実現化によってユーザーが相互作用できるグラフィカルユーザインターフェイス又はウェブブラウザを有するクライアントデバイスを含む、又は１つ以上のそのようなバックエンド、ミドルウェア、又はフロントエンドコンポーネントの任意の組合せを含む、コンピューティングシステムにおいて実現され得る。システムのコンポーネントは、デジタル情報／データ通信の任意の形態又は媒体、例えば通信ネットワークによって相互接続され得る。通信ネットワークの例としては、ローカルエリアネットワーク（「ＬＡＮ」）及びワイドエリアネットワーク（「ＷＡＮ」）、インターネットワーク（例えばインターネット）、及びピアツーピアネットワーク（例えばアドホックピアツーピアネットワーク）が含まれる。
【０１７５】
コンピューティングシステムは、クライアント及びサーバーを含み得る。クライアント及びサーバーは、一般に互いに離れており、典型的には通信ネットワークを通して相互作用する。クライアント及びサーバーの関係は、それぞれのコンピュータ上で走るコンピュータプログラムによって、及び互いにクライアント・サーバ関係を有することによって、生じる。ある実施形態では、サーバーは、情報／データ（例えばハイパーテキストマークアップ言語（ＨＴＭＬ）ページ及び／又はリモートプレビューのための画像データ）をクライアントデバイスに送信する（例えばクライアントデバイスで情報／データを表示し、かつユーザーの相互作用からユーザー入力を受け取るために）。クライアントデバイスにおいて生成された情報／データ（例えばユーザの相互作用の結果）は、クライアントデバイスからサーバーにおいて受け取られ得る。
【０１７６】
本明細書は、多くの具体的な実現例についての詳細を含むが、これらは、任意の発明の、又はクレームされ得る内容の範囲に対する限定として解釈されるべきではなく、むしろ特定の発明の特定の実施形態に特有の特徴についての記載として解釈されるべきである。別個の実施形態群の文脈においてここで記載されているある特徴群は、単一の実施形態において組み合わせられて実現され得る。逆に、単一の実施形態の文脈で記載されているさまざまな特徴は、複数の実施形態において別個に、又は任意の適切なサブコンビネーションにおいて実現されてもよい。さらに、特徴は、ある組合せで機能するとして上では記載され、出願当初においてはそのようにクレームされてさえいるが、クレームされた組合せからの１つ以上の特徴は、場合によっては、その組合せから削除され得て、クレームされた組合せは、サブコンビネーション又はサブコンビネーションの変化形に関するものであり得る。
【０１７７】
同様に、操作は、特定の順序で図面において示されているが、これは、そうではないと記載されていない限り、所望の結果を達成するために、そのような操作が示された特定の順序で、又は順次的なやり方で実行されること、又は全ての図示された操作が実行されることを要求するものとしては理解されるべきではない。ある状況においては、マルチタスキング及びパラレル処理が優位性を持ち得る。さらに上で記載された実施形態におけるさまざまなシステムコンポーネントの分離は、そのような分離を全ての実施形態において要求するものとしては理解されるべきではなく、記載されたプログラムコンポーネント及びシステムは、一般に、単一のソフトウェアプロダクトに互いに統合され、又は複数のソフトウェアプロダクトにパッケージングされ得ることが理解されるべきである。
【０１７８】
よって、本主題の特定の実施形態が記載されてきた。他の実施形態も以下の請求項の範囲内である。場合によっては、請求項中で記載されたアクションは、異なる順序で実行され得るが、依然として、所望の結果を達成し得る。加えて、添付の図で示されたプロセスは、そうではないと記載されていない限り、所望の結果を得るためには、示された特定の順序、又は順次的なやり方であることを必ずしも要求しない。ある実施形態では、マルチタスキング及びパラレル処理が優位性を用い得る。
【０１７９】
［結論］
本発明が関連する技術における当業者なら、前述の記載及び関連する図面において提示された教示を利用すれば、ここで述べられた本発明の多くの改変及び他の実施形態に想到することができよう。したがって、本発明は、開示された特定の実施形態に限定されるべきではなく、改変及び他の実施形態は、添付の特許請求の範囲の範囲内に含まれるよう意図されていると理解されるべきである。ここでは特定の語が採用されているが、それらは一般的な叙述的な意味で用いられているのに過ぎず、限定を目的としたものではない。
【図１】
2021533508.tif 000003
【図２】
2021533508.tif 000004
【図３】
2021533508.tif 000005
【図４】
2021533508.tif 000006
【図５】
2021533508.tif 000007
【図６】
2021533508.tif 000008
【図７】
2021533508.tif 000009
【図８】
2021533508.tif 000010
【図９】
2021533508.tif 000011
【図１０】
2021533508.tif 000012
【図１１】
2021533508.tif 000013
【図１２】
2021533508.tif 000014
【図１３】
2021533508.tif 000015
【図１４】
2021533508.tif 000016
【図１５】
2021533508.tif 000017
【手続補正書】
【提出日】令和3年2月16日(2021.2.16)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
リモートリソースによってホストされるリモートデータオブジェクトと、グループベースコミュニケーションシステムのグループベースコミュニケーションインターフェイスとの間のコミュニケーションを管理するための装置であって、前記装置は、少なくとも１つのプロセッサ、及びプログラムコードを含む少なくとも１つの非一時的メモリを備え、前記少なくとも１つの非一時的メモリ及び前記プログラムコードは、前記プロセッサと共に、前記装置に少なくとも
前記リモートリソースによるエンゲージメントのために構成されている共有アプリケーションプログラミングインターフェイスを生成すること、
前記リモートデータオブジェクトに関連付けられたリモートデータオブジェクト識別子、前記グループベースコミュニケーションインターフェイスに関連付けられたグループ識別子、及び共有ロケーション識別子を含むリモートデータオブジェクト共有リクエストを受け取ること、
前記共有アプリケーションプログラミングインターフェイスを介して、リモートデータオブジェクト共有通知を前記リモートリソースに送ることであって、前記リモートデータオブジェクト共有通知は、前記リモートデータオブジェクト識別子を含む、リモートデータオブジェクト共有通知を送ること、及び
前記リモートデータオブジェクト共有通知を送ることに応答して、
前記リモートリソースから、前記共有アプリケーションプログラミングインターフェイスを介して、前記リモートデータオブジェクトに関連付けられたリモートデータオブジェクトメタデータを受け取ること、及び
前記リモートデータオブジェクトに関連付けられたリモートデータオブジェクトグラフィック表現を前記グループベースコミュニケーションインターフェイスの共有ロケーションに自動的にレンダリングすることであって、前記共有ロケーションは、前記共有ロケーション識別子に基づいて求められ、前記リモートデータオブジェクトグラフィック表現は、前記リモートデータオブジェクトのユーザーエンゲージメントを促進させるように構成されている、自動的にレンダリングすること
をさせるように構成されている装置。
【請求項２】
前記共有ロケーション識別子は、グループベースコミュニケーションチャンネル識別子又はダイレクトメッセージ識別子のうちの少なくとも１つを含む
請求項１に記載の装置。
【請求項３】
前記共有ロケーションは、グループベースコミュニケーションチャンネル識別子に関連付けられたグループベースコミュニケーションチャンネル又はダイレクトメッセージ識別子に関連付けられたダイレクトメッセージインターフェイスのうちの少なくとも１つを含む
請求項１に記載の装置。
【請求項４】
前記リモートデータオブジェクトは、ファイル、コールオブジェクト、タスクオブジェクト、イベントオブジェクト、又はカレンダーオブジェクトのうちの少なくとも１つを含む
請求項１に記載の装置。
【請求項５】
前記リモートデータオブジェクト共有リクエストは、共有ユーザー識別子をさらに含む
請求項１に記載の装置。
【請求項６】
前記非一時的メモリ及び前記プログラムコードは、前記プロセッサと共に、前記装置に
ローカル装置メモリにクエリして、前記共有ユーザー識別子に関連付けられた、ローカルに記憶されたデータオブジェクトを特定すること、
リモートリソースメモリにクエリして、前記共有ユーザー識別子に関連付けられた、リモートで記憶されたデータオブジェクトを特定すること、及び
前記グループベースコミュニケーションインターフェイスにユーザー共有データオブジェクトリストをレンダリングすることであって、前記ユーザー共有データオブジェクトリストは、前記ローカルに記憶されたデータオブジェクト及び前記リモートで記憶されたデータオブジェクトに関連付けられたデータオブジェクトグラフィック表現を含む、レンダリングすること
をさせるようにさらに構成されている
請求項５に記載の装置。
【請求項７】
前記ユーザー共有データオブジェクトリストは、アクセスリーセンシーに基づいて順番付けされる
請求項６に記載の装置。
【請求項８】
前記ユーザー共有データオブジェクトリストは、前記共有ロケーション識別子に基づいて順番付けされる
請求項６に記載の装置。
【請求項９】
前記リモートデータオブジェクトメタデータは、リモートデータオブジェクトタイプ識別子を含む
請求項１に記載の装置。
【請求項１０】
前記非一時的メモリ及び前記プログラムコードは、前記プロセッサと共に、前記装置に
ローカル装置メモリにクエリして、前記リモートデータオブジェクトタイプ識別子に関連付けられた、ローカルに記憶されたデータオブジェクトを特定すること、
リモートリソースメモリにクエリして、前記リモートデータオブジェクトタイプ識別子に関連付けられた、リモートで記憶されたデータオブジェクトを特定すること、及び
前記グループベースコミュニケーションインターフェイスにコモンオブジェクトタイプリストをレンダリングすることであって、前記コモンオブジェクトタイプリストは、前記ローカルに記憶されたデータオブジェクト及び前記リモートで記憶されたデータオブジェクトに関連付けられたデータオブジェクトグラフィック表現を含む、レンダリングすること
をさせるようにさらに構成されている
請求項９に記載の装置。
【請求項１１】
前記コモンオブジェクトタイプリストは、アクセスリーセンシーに基づいて順番付けされる
請求項１０に記載の装置。
【請求項１２】
前記コモンオブジェクトタイプリストは、前記共有ロケーション識別子に基づいて順番付けされる
請求項１０に記載の装置。
【請求項１３】
前記リモートリソースに送られる前記リモートデータオブジェクト共有通知は、前記リモートリソースが前記グループベースコミュニケーションシステムと通信することを承認するための認証トークンを含む
請求項１に記載の装置。
【請求項１４】
前記非一時的メモリ及び前記プログラムコードは、前記プロセッサと共に、前記装置に
前記リモートリソースが前記認証トークンを検証することに応答して、前記リモートデータオブジェクトの前記ユーザーエンゲージメントを促進すること
をさせるようにさらに構成されている
請求項１３に記載の装置。
【請求項１５】
前記非一時的メモリ及び前記プログラムコードは、前記プロセッサと共に、前記装置に
前記リモートデータオブジェクトについてのリモートプレビューリクエストを受け取ったことに応答して、前記リモートデータオブジェクトについてのリモートメタデータリクエストを前記リモートリソースに送ること、
前記リモートリソースから、前記リモートデータオブジェクトについてのリモートプレビューメタデータを受け取ること、
前記リモートプレビューメタデータに基づいて、リモートプレビューを生成すること、及び
前記リモートプレビューリクエストに応答して、前記リモートプレビューを自動的にレンダリングすること
をさせるようにさらに構成されている
請求項１に記載の装置。
【請求項１６】
前記リモートデータオブジェクトについての前記リモートプレビューメタデータは、前記リモートプレビューについてのリモートプレビューマークアップデータを含む
請求項１５に記載の装置。
【請求項１７】
前記リモートデータオブジェクトについての前記リモートプレビューメタデータは、前記リモートプレビューについての１つ以上のアクセス制御パラメータを含む
請求項１５に記載の装置。
【請求項１８】
前記リモートデータオブジェクト識別子を決定することは、
前記リモートデータオブジェクトについてのリモートリソース識別子を特定すること、
前記リモートリソース識別子及びリモート相関テーブルに基づいて、リモートオブジェクトについてのローカル識別子を決定すること、及び
前記ローカル識別子に基づいて、前記リモートデータオブジェクト識別子を決定すること
を含む
請求項１に記載の装置。
【請求項１９】
リモートリソースによってホストされるリモートデータオブジェクトと、グループベースコミュニケーションシステムのグループベースコミュニケーションインターフェイスとの間のコミュニケーションを管理するためのシステムであって、前記システムは、少なくとも１つのリポジトリ、及び少なくとも１つのプロセッサ及びプログラムコードを含む少なくとも１つの非一時的メモリを有する少なくとも１つのサーバーを備え、前記少なくとも１つの非一時的メモリ及び前記プログラムコードは、前記プロセッサと共に、前記システムに少なくとも
前記リモートリソースによるエンゲージメントのために構成されている共有アプリケーションプログラミングインターフェイスを生成すること、
前記リモートデータオブジェクトに関連付けられたリモートデータオブジェクト識別子、前記グループベースコミュニケーションインターフェイスに関連付けられたグループ識別子、及び共有ロケーション識別子を含むリモートデータオブジェクト共有リクエストを受け取ること、
前記共有アプリケーションプログラミングインターフェイスを介して、リモートデータオブジェクト共有通知を前記リモートリソースに送ることであって、前記リモートデータオブジェクト共有通知は、前記リモートデータオブジェクト識別子を含む、リモートデータオブジェクト共有通知を送ること、及び
前記リモートデータオブジェクト共有通知を送ることに応答して、
前記リモートリソースから、前記共有アプリケーションプログラミングインターフェイスを介して、前記リモートデータオブジェクトに関連付けられたリモートデータオブジェクトメタデータを受け取ること、及び
前記リモートデータオブジェクトに関連付けられたリモートデータオブジェクトグラフィック表現を前記グループベースコミュニケーションインターフェイスの共有ロケーションに自動的にレンダリングすることであって、前記共有ロケーションは、前記共有ロケーション識別子に基づいて求められ、前記リモートデータオブジェクトグラフィック表現は、前記リモートデータオブジェクトのユーザーエンゲージメントを促進させるように構成されている、自動的にレンダリングすること
をさせるように構成されているシステム。
【請求項２０】
リモートリソースによってホストされるリモートデータオブジェクトと、グループベースコミュニケーションシステムのグループベースコミュニケーションインターフェイスとの間のコミュニケーションを管理するためのコンピュータで実現される方法であって、前記コンピュータで実現される方法は、
前記リモートリソースによるエンゲージメントのために構成されている共有アプリケーションプログラミングインターフェイスを生成すること、
前記リモートデータオブジェクトに関連付けられたリモートデータオブジェクト識別子、前記グループベースコミュニケーションインターフェイスに関連付けられたグループ識別子、及び共有ロケーション識別子を含むリモートデータオブジェクト共有リクエストを受け取ること、
前記共有アプリケーションプログラミングインターフェイスを介して、リモートデータオブジェクト共有通知を前記リモートリソースに送ることであって、前記リモートデータオブジェクト共有通知は、前記リモートデータオブジェクト識別子を含む、リモートデータオブジェクト共有通知を送ること、及び
前記リモートデータオブジェクト共有通知を送ることに応答して、
前記リモートリソースから、前記共有アプリケーションプログラミングインターフェイスを介して、前記リモートデータオブジェクトに関連付けられたリモートデータオブジェクトメタデータを受け取ること、及び
前記リモートデータオブジェクトに関連付けられたリモートデータオブジェクトグラフィック表現を前記グループベースコミュニケーションインターフェイスの共有ロケーションに自動的にレンダリングすることであって、前記共有ロケーションは、前記共有ロケーション識別子に基づいて求められ、前記リモートデータオブジェクトグラフィック表現は、前記リモートデータオブジェクトのユーザーエンゲージメントを促進させるように構成されている、自動的にレンダリングすること
を含むコンピュータで実現される方法。
【国際調査報告】
2021533508.tif 000018
2021533508.tif 000019