JP7478898B2 - Messaging Services - Google Patents
Messaging Services Download PDFInfo
- Publication number
- JP7478898B2 JP7478898B2 JP2023504037A JP2023504037A JP7478898B2 JP 7478898 B2 JP7478898 B2 JP 7478898B2 JP 2023504037 A JP2023504037 A JP 2023504037A JP 2023504037 A JP2023504037 A JP 2023504037A JP 7478898 B2 JP7478898 B2 JP 7478898B2
- Authority
- JP
- Japan
- Prior art keywords
- conversation
- topic
- user
- message
- database
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 claims description 118
- 230000004044 response Effects 0.000 claims description 52
- 238000004891 communication Methods 0.000 claims description 21
- 230000008569 process Effects 0.000 description 22
- 230000008859 change Effects 0.000 description 18
- 238000013499 data model Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 230000001413 cellular effect Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 239000003086 colorant Substances 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 230000010354 integration Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000008521 reorganization Effects 0.000 description 1
- 230000003997 social interaction Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/21—Monitoring or handling of messages
- H04L51/216—Handling conversation history, e.g. grouping of messages in sessions or threads
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Digital Computer Display Output (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
仕事場や社交の場での交流は、インターネットに基づくツールを使って行われることが増えている。インターネットに基づくツールは、任意のソフトウェアまたはプラットフォームとすることができる。電子メールのような従来の通信ツールは、内部通信及び外部通信を容易にすることができる。しかし、従来の通信ツールでは、さまざまな制約から、ユーザのニーズに応えられないことがある。通信機器の高性能化につれ、通信の効率と通信の効果を改善するために、新たなツールが次々と発見されている。 Workplace and social interactions are increasingly conducted using Internet-based tools. Internet-based tools can be any software or platform. Traditional communication tools such as email can facilitate internal and external communication. However, traditional communication tools may not meet the needs of users due to various limitations. As communication devices become more sophisticated, new tools are constantly being discovered to improve communication efficiency and effectiveness.
以下の詳細な説明は、添付図面と合わせて読むとよりよく理解できる。説明のために、本開示の様々な態様の例示的な実施形態が添付図面に示されているが、本発明は、開示されている特定の方法および手段に限定されない。 The following detailed description can be better understood when read in conjunction with the accompanying drawings. For purposes of illustration, there are shown in the drawings exemplary embodiments of various aspects of the present disclosure; however, the invention is not limited to the specific methods and instrumentalities disclosed.
図1はクラウドコンピューティングシステム100の例示的なコンポーネントを示す図である。限定ではなく、一例として、クラウドコンピューティングシステム100を使用して、開示された発明対象の態様を実行することができる。クラウドベースのコンピューティングとは、一般的に、アプリケーション実行、サービス提供、及びデータ格納を、クライアントとクラウドコンピューティング装置との間で、ある程度分割することができるネットワークコンピュータアーキテクチャを指す。「クラウド」とは、ネットワーク(例えば、インターネット)を介して、例えばクライアント、サーバ装置、及びその他のクラウドコンピューティングシステムによって、アクセス可能なサービスまたはサービスグループを指すことができる。
FIG. 1 illustrates exemplary components of a
一例において、クラウドに接続された複数のコンピューティング装置は、コンピューティングパワー、サービス、アプリケーション、記憶装置、及びファイルの共有プールにアクセスして、使用することができる。したがって、クラウドコンピューティングにより、最小限の管理努力又はインタラクションでクラウドサービスプロバイダによって提供および解放することができる、ネットワーク、サーバ、記憶装置、アプリケーション、及びサービスなどの、構成可能なコンピューティングリソースの共有プールを可能にする。 In one example, multiple computing devices connected to the cloud can access and use a shared pool of computing power, services, applications, storage, and files. Thus, cloud computing enables a shared pool of configurable computing resources, such as networks, servers, storage, applications, and services, that can be provided and released by a cloud service provider with minimal administrative effort or interaction.
一例として、クラウドベースのアプリケーションは、データおよび/または実行可能なプログラムコードのコピーをクラウドコンピューティングシステムに格納するとともに、クライアント装置での実行のために必要な場合、クライアント装置によるこのデータおよびプログラムコードの少なくとも一部のダウンロードを許可することができる。いくつかの例において、ダウンロードされたデータおよびプログラムコードは、クラウドベースのアプリケーションにアクセスする特定のクライアント装置(例えば、パーソナルコンピュータ、タブレットコンピュータ、携帯電話および/またはスマートフォン)の機能に応じて調整することが可能である。追加として、クライアント装置とクラウドコンピューティングシステムとの間でアプリケーション実行と格納を分割することにより、クラウドコンピューティングシステムがより多くの処理を実行することが可能となるため、クラウドコンピューティングシステムのプロセッシング能力や機能をうまく利用することができる。 As one example, a cloud-based application may store copies of data and/or executable program code on a cloud computing system and permit download of at least a portion of this data and program code by a client device as necessary for execution on the client device. In some examples, the downloaded data and program code may be tailored according to the capabilities of the particular client device (e.g., a personal computer, a tablet computer, a mobile phone, and/or a smartphone) accessing the cloud-based application. Additionally, splitting application execution and storage between the client device and the cloud computing system may allow the cloud computing system to perform more processing, thereby taking advantage of the processing power and capabilities of the cloud computing system.
クラウドベースのコンピューティングはまた、クラウドベースのアプリケーションのためのデータおよびプログラムコードが、1つ又は複数のクライアント装置および/またはクラウドコンピューティング装置の間でほぼリアルタイムに共有される分散型のコンピューティングアーキテクチャを指すことができる。このデータおよびプログラムコードの一部は、必要に応じて、またはその他の状況に応じて、クラウドベースのアプリケーションにアクセス中のさまざまなクライアントに動的に配布することが可能である。クラウドベースのコンピューティングアーキテクチャの詳細は、クライアント装置のユーザにはほとんど透過的であってもよい。限定ではなく、一例として、クラウドベースのアプリケーションにアクセスするPCユーザ装置は、PCがクラウドコンピューティングシステムからプログラムロジックおよび/またはデータをダウンロードすること、またはPCが処理機能または記憶機能をクラウドコンピューティングシステムにオフロードしていることを知らなくてもよい。 Cloud-based computing can also refer to a distributed computing architecture in which data and program code for a cloud-based application is shared in near real-time among one or more client devices and/or cloud computing devices. Portions of this data and program code can be dynamically distributed to various clients accessing the cloud-based application as needed or as otherwise required. The details of the cloud-based computing architecture may be largely transparent to users of the client devices. By way of example and not limitation, a PC user device accessing a cloud-based application may not be aware that the PC is downloading program logic and/or data from a cloud computing system or that the PC is offloading processing or storage functions to the cloud computing system.
図1において、クラウドコンピューティングシステム100は、1つ又は複数のクラウドサービス104と、1つ又は複数のクラウドプラットフォーム106と、クラウドインフラストラクチャコンポーネント108と、クラウド知識ベース110とを備える。クラウドコンピューティングシステム100は、より多いまたは少ないコンポーネントを含むことができ、クラウドサービス104、クラウドプラットフォーム106、クラウドインフラストラクチャコンポーネント108、およびクラウド知識ベース110のそれぞれは、さらに、複数のコンピューティング要素および記憶要素を含むことができる。したがって、クラウドコンピューティングシステム100の前述機能のうちの1つまたは複数を、追加の機能コンポーネントまたは物理コンポーネントに分割するか、またはより少ない機能コンポーネントまたは物理コンポーネントに結合することができる。いくつかの別の例において、図1に示された例に追加の機能および/または物理的コンポーネントを追加することができる。クラウドコンピューティングベースのサービスの配布には、ウェブサービスや多層アーキテクチャなどのアプリケーションプログラミングインターフェースを介して相互に通信する複数のクラウドコンポーネントが関与する場合がある。
In FIG. 1, the
図1に示す例示的なクラウドコンピューティングシステム100は、ネットワークコンピューティングアーキテクチャである。クラウドサービス104は、クライアント装置からの要求を処理するためのキューを表すことができる。クラウドプラットフォーム106は、クラウドコンピューティングシステム100のためのクライアントインターフェースフロントエンド、例えばメッセージングサービスのクライアントインターフェースフロントエンドを含むことができる。クラウドプラットフォーム106は、クライアント装置とインタラクションするための機能を実行するために、クラウドサービス104に結合することができる。クラウドインフラストラクチャ108は、クラウドコンピューティングシステム100のサービス、支払、および他の動作コンポーネントおよびインフラストラクチャコンポーネントを含むことができる。クラウド知識ベース110がクラウドコンピューティングシステム100に使用されるデータを格納するように構成されているため、クラウド知識ベース110は、クラウドサービス104、クラウドプラットフォーム106、および/またはクラウドインフラストラクチャコンポーネント108のいずれかによってアクセス可能である。
The exemplary
多くの異なるタイプのクライアント装置、例えばメッセージングサービスのユーザの装置は、データにアクセスし、クラウドコンピューティングシステム100によって提供されるアプリケーションを実行するために、クラウドコンピューティングシステム100のコンポーネントと通信するように構成されることが可能である。例えば、コンピュータ112、モバイル装置114、およびホスト116は、クラウドコンピューティングシステム100と通信するように構成可能なタイプのクライアント装置の例として示されている。もちろん、より多いまたは少ないクライアント装置がクラウドコンピューティングシステム100と通信してもよい。さらに、他のタイプのクライアント装置がクラウドコンピューティングシステム100と通信するように構成されてもよい。
Many different types of client devices, e.g., devices of users of messaging services, can be configured to communicate with components of
図1に示すコンピュータ112は、任意のタイプのコンピューティング装置、例えば、PC、ラップトップコンピュータ、タブレットコンピュータなどとすることができ、モバイル装置114は、クラウドコンピューティングシステム100へデータを送信し、且つ/又はクラウドコンピューティングシステム100からデータを受信するように構成された、任意のタイプのモバイルコンピューティング装置、例えば、ラップトップコンピュータ、スマートフォン、携帯電話、セルラーホン、タブレットコンピュータなどとすることができる。同様に、ホスト116は、クラウドコンピューティングシステム100へデータを送信し、且つ/又はクラウドコンピューティングシステム100からデータを受信するように構成された、ラップトップコンピュータ、携帯電話、スマートフォン、タブレットコンピュータなどを含む、送信機/受信機を有する任意のタイプのコンピューティング装置とすることができる。
1 can be any type of computing device, e.g., a PC, a laptop computer, a tablet computer, etc., and the
図1において、クライアント装置とクラウド100との間の通信リンクは有線接続、例えば、シリアルバスまたはパラレルバス、イーサネット、光接続、または他のタイプの有線接続を備えることができる。通信リンクはまた、無線リンク、例えば、ブルートゥース(登録商標)、IEEE802.11(IEEE802.11は、IEEE802.11-2007、IEEE802.11n-2009、または任意の他のIEEE802.11リビジョンを指すことができる)、CDMA、3G、GSM、WiMAX、または他の無線ベースのデータ通信リンクとすることができる。
1, the communication link between the client device and the
他の例において、クライアント装置は、無線アクセスポイントを介してクラウドコンピューティングシステム100と通信するように構成されてもよい。アクセスポイントは様々な形態をとることができる。例えば、アクセスポイントは、無線アクセスポイント(WAP)または無線ルータの形態をとることができる。別の例として、クライアント装置がCDMA、GSM、3G、または4Gなどのセルラーエアインターフェースプロトコルを使用して接続する場合、アクセスポイントは、セルラーネットワークを介してインターネット接続を提供するセルラーネットワーク内の基地局とすることができる。
In another example, the client device may be configured to communicate with the
したがって、クライアント装置は、有線ネットワークインターフェースまたは無線ネットワークインターフェースを含むことができるが、該有線ネットワークインターフェースまたは無線ネットワークインターフェースを通して、クライアント装置は、直接またはアクセスポイントを介してクラウドコンピューティングシステム100に接続することができる。一例として、クライアント装置は、802.11、802.16(WiMAX)、LTE、GSM、GPRS、CDMA、EV-DO、および/またはHSPDAなどの1つまたは複数のプロトコルを使用するように構成されることが可能である。さらに、クライアント装置は、セルラー通信プロトコル(例えば、CDMA、GSM、またはWiMAX)を使用する「3G」または「4G」データ接続、および802.11を使用する「WiFi」接続など、複数の有線プロトコルおよび/または無線プロトコルを使用するように構成することが可能である。他のタイプの通信インターフェースおよびプロトコルを使用することも可能である。
Thus, the client device may include a wired or wireless network interface through which the client device may connect to the
図2は、開示された技術を実行するための例示的なメッセージングサービス220を示す。限定ではなく、一例として、メッセージングサービス220は、図1のクラウドネットワーク100上で動作することができる。メッセージングサービス220は、クラウドネットワーク装置とローカル装置との組み合わせを含むことができる。メッセージングサービス220は、チャットサービス222を含むことができる。チャットサービス222は、メッセージングサービス220の装置上で動作する装置および/またはプログラムとすることができる。
FIG. 2 illustrates an
チャットサービス222は、ユーザ210から入力を受け取るように構成されてもよい。ユーザ210は、メッセージングサービス220内で互いにメッセージを交換するために、メッセージングサービス220のユーザとして登録することができる。ユーザ210は、ユーザ装置242上で動作するメッセージングアプリケーション240のユーザであってもよい。ユーザ入力は、会話を開始する要求を含むことができる。会話は、任意のユーザ装置242上で動作するメッセージングアプリケーション240のユーザインターフェース(UI)内の「Start Conversation」アイコンを選択することによって開始することができる。会話は、会話の任意の他の参加者が識別されていない状態で、作成者ユーザによって開始することができる。会話の参加者には、任意の方法で会話に参加することが許可されている任意のエンティティが含まれる。例えば、会話の参加者は、作成者ユーザ、会話に加入するように招待されたグループ、タスクを別の参加者(被割当者ユーザ)に割り当てることができる割当者ユーザ、被割当者ユーザ、会話に招待された電子メール参加者などであってもよい。
The
チャットサービス222は、会話を生成および/または管理することができる。例えば、チャットサービス222は、会話を分類することができる。チャットサービス222は、会話データベース230、トピックデータベース236、グループデータベース232、ユーザデータベース234、検索インデックスデータベース252、タスクデータベース256、電子メールユーザデータベース237、電子メールメッセージデータベース238などの1つまたは複数のデータベース260に、会話、会話との任意の関連付け、および/または会話メタデータを格納することができる。入力は、既存の会話や新規会話に追加するメッセージなどのメッセージを含むことができる。チャットサービス222は、メッセージを会話に追加することができる。チャットサービス222は、メッセージおよび/またはメッセージの関連付けを、データベース、例えば会話データベース230に格納することができる。
The
メッセージングサービス220は、メッセージが、ユーザ名、ハンドル(すなわち、@で始まるユーザ名)、アカウントなど、ユーザを識別する情報を含むと判定することができる。メッセージングサービス220は、識別されたユーザを会話に追加することができる。メッセージングサービス220は、例えば、会話データベース230、グループデータベース232、ユーザデータベース234、および/または検索インデックスデータベース252に、ユーザと会話との関連付けを格納することができる。例えば会話内で以前に通信されたメッセージのフィードを表示するために、ユーザに会話へのアクセス許可を付与することができる。
The
メッセージングサービス220は、メッセージがトピックを示す情報を含むと判定することができる。トピックは、対応する会話に関連付けられることが可能である。メッセージングサービス220は、1つまたは複数のデータベース、例えばトピックデータベース236にトピックを追加することができる。メッセージングサービス220は、例えば、会話データベース230および/またはトピックデータベース236にトピックと会話との関連付けを格納することができる。
The
メッセージングサービス220は、メッセージがグループを識別する情報を含むと判定することができる。グループはユーザグループであってもよい。メッセージングサービス220は、グループを会話に追加することができる。メッセージングサービス220は、例えば、会話データベース230、グループデータベース232、ユーザデータベース234、および/または検索インデックスデータベース252に、グループと会話との関連付けを格納することができる。
The
メッセージングサービス220は、メッセージがユーザに割り当てられたタスクを示す情報を含むと判定することができる。メッセージングサービス220はまた、タスクの期限日を示す情報を受信することができる。タスクと期限日をユーザと会話に関連付けることができる。メッセージングサービス220は、タスクおよび期限日をデータベース260、例えばタスクデータベース256に追加することができる。メッセージングサービス220はタスク、期限日、ユーザおよび会話の関連付けを、例えば会話データベース230、ユーザデータベース234、およびタスクデータベース256に、格納することができる。
The
メッセージングサービス220は、メッセージが電子メールアドレスを含むことができると決定することができる。電子メールアドレスは、会話に関連付けることができる。電子メールアドレスは、会話中のメッセージの対象とする受信者であってもよい。メッセージングサービス220は、電子メールアドレスを会話に追加することができる。メッセージングサービス220は、電子メールアドレスと会話との関連付けを、例えば、会話データベース230、電子メールユーザデータベース237、および/または電子メールメッセージデータベース238に、格納することができる。
The
メッセージングサービス220は、プッシュサービス224を含むことができる。プッシュサービス224は、メッセージングサービス220の装置上で動作する装置および/またはプログラムとすることができる。プッシュサービス224は、ユーザ入力の指示などのデータをチャットサービス222から受信することができる。プッシュサービス224は、データベース260にデータを格納し、且つ/またはデータベース260内のデータにアクセスすることができる。プッシュサービス224は、例えばメッセージングアプリケーション240を介して、ユーザ入力の指示などのデータをユーザ装置にプッシュ(例えば、送信、表示など)することができる。プッシュサービス224は、メッセージングサービス220の外部の電子メールアドレスにデータをプッシュすることができる。
The
メッセージングサービス220は、他のサービスを含むことができる。他のサービスは、グループサービス251を含むことができる。グループサービス251は、ユーザグループを管理することができる。グループサービス251は、格納されたグループの関連付けを管理することができる。グループサービス251は、検索インデックスデータベース252を検索することにより、グループに含まれるメンバを識別することができる。他のサービスは、リマインダ/スケジューラサービス253を含むことができる。リマインダ/スケジューラサービス253は、期限日とタスクとの関連付けを決定することができる。リマインダ/スケジューラサービス253は、期限日および/またはタスクに関連付けられるリマインダを送信することができる。リマインダ/スケジューラサービス253は、格納された期限日および/またはタスクを管理することができる。
The
他のサービスは、電子メールサービス254を含むことができる。電子メールサービス254は、電子メールメッセージを生成し、電子メールメッセージをメッセージングサービス220の外部の電子メールアドレスに送信することができる。電子メールサービス254は、メッセージングサービス220の外部の電子メールアドレスからデータを受信することができる。電子メールサービス254は、電子メールアドレスから受信したデータに関連付けられる会話を判定し、会話内のユーザに送信される対応のメッセージを生成することができる。他のサービスは、認証サービス226をさらに含むことができる。認証サービス226は、様々な会話へのアクセスを許可および検証することができる。認証サービス226は、会話の参加者に階層化権限を付与することができる。たとえば、あるレベルの権限を持つ参加者にのみ、他の参加者の追加やタスクの割り当てなどが許可される。
The other services may include an email service 254. The email service 254 may generate email messages and send email messages to email addresses external to the
図2のメッセージングサービス220は単に例示的なものであり、他の実施態様を使用することができることを理解すべきである。本明細書で開示される機能は、1つまたは複数のサーバまたはコンピューティング装置によって実装することが可能であることも理解すべきである。さらに、本明細書で開示される機能は、ソフトウェア、ハードウェア、またはソフトウェアとハードウェアとの組み合わせで実装することが可能であることを理解すべきである。
It should be understood that the
図3は、メッセージングサービス220の一例を示す。メッセージングサービス220は、ネットワーク301と通信することができる。ネットワーク301は、インターネットを含むことができる。ネットワーク301は、1つまたは複数のクラウドネットワークコンポーネントを含むことができる。ネットワーク301は、ネットワークを介して1つまたは複数のデータベース260と通信することができる。データベース260は、図2のデータベース230~238と同じであってもよいし、類似していてもよい。例として、データベース260は、トピックデータベース、会話データベース、ユーザデータベース、および/またはタグデータベースを含むことができる。メッセージングサービス220は、属性および/または関連付けをデータベース260に格納することができる。メッセージングサービス220は、属性、関連付け、または他のデータについて、データベース260にアクセス(例えば、クエリ)することができる。
FIG. 3 illustrates an example of a
メッセージングサービス220は、ネットワーク301を介して1つまたは複数のユーザ装置242と通信することができる。メッセージングサービス220は、ユーザ装置242上で動作するメッセージングアプリケーション240を介して装置302と通信することができる。メッセージングアプリケーション240は、データおよび権限、例えば会話、会話トピックタグ、ユーザ、グループ、プライバシなどを管理するように構成されてもよい。
The
メッセージングサービス220は、ネットワーク301を介して接続されたユーザ210と通信することができる。接続されたユーザ210は、メッセージングサービス220および/またはメッセージングアプリケーション240の会話の参加者であるユーザとすることができる。例えば、接続されたユーザ210は、外部電子メールアドレスを介して会話に関連付けられるメッセージを受信することができる。接続されたユーザ210は、外部電子メールアドレスから、メッセージングサービス220、メッセージングアプリケーション240、会話、および/または他のユーザにメッセージを送信することができる。
The
図4は、メッセージング技術400を示す。技術400は、メッセージングサービス(例えば、図2および図3のメッセージングサービス220)、メッセージングアプリケーション(例えば、図2および図3のメッセージングアプリケーション240)、1つまたは複数のユーザ210、および/または1つまたは複数のユーザ装置242によって実行することができる。401において、会話を開始することができる。会話は、メッセージングアプリケーションを介して会話の開始を要求する入力を入れることによって、作成者ユーザ(すなわち、会話の作成を引き起こすユーザ)によって開始することができる。例えば、ユーザは、ユーザ装置上に表示されたメッセージングアプリケーションのUI内の「Start a conversation」アイコンを選択することができる。チャットサービス(例えば、図2のチャットサービス222)は、入力を受け取り、会話を生成することができる。会話は、会話の任意の他の参加者が識別されていない状態で開始することができる。
FIG. 4 illustrates a
402において、メッセージを入れることができる。メッセージは、メッセージングアプリケーションを介してユーザによって入れることができる。メッセージは、例えばメッセージングアプリケーションのUIに表示される入力フィールドを介して、会話中に入れることができる。このメッセージは、会話への任意の他の参加者が識別される前に入れることができる。メッセージはテキストを含むことができる。チャットサービスは、メッセージを受信することができる。このメッセージは、会話に追加することができる。メッセージは、会話に関連付けられる1つまたは複数のユーザに送信することができる。このメッセージは、1つ又は複数の外部ユーザ、例えば会話に追加済みの外部電子メールアドレスに送信することができる。メッセージと会話との関連付けは、データベース(例えば、図2~3のデータベース260)に格納することができる。
At 402, a message can be entered. The message can be entered by a user via a messaging application. The message can be entered into a conversation, for example, via an input field displayed in the UI of the messaging application. The message can be entered before any other participants to the conversation are identified. The message can include text. The chat service can receive the message. The message can be added to the conversation. The message can be sent to one or more users associated with the conversation. The message can be sent to one or more external users, for example, external email addresses that have been added to the conversation. The association of the message with the conversation can be stored in a database (e.g.,
403において、メッセージを解析して、内容および/または属性を決定することができる。メッセージは、メッセージングアプリケーション(例えば、図2~3のメッセージングアプリケーション240)および/またはメッセージングサービス(例えば、図2~3のメッセージングサービス220)によって解析することができる。例えば、メッセージングアプリケーションは、メッセージの属性、例えばメッセージ内の特殊文字によって識別される属性を決定し、その属性の指示をメッセージングサービスに送信することができる。
At 403, the message may be parsed to determine content and/or attributes. The message may be parsed by a messaging application (e.g., messaging application 240 of FIGS. 2-3) and/or a messaging service (e.g.,
404において、メッセージの内容は、内容データベース(例えば、図2~3のデータベース260)に格納することができる。内容と1つ又は複数のユーザ(例えばメッセージ内のタグ付きユーザ)との関連付けは、ユーザデータベース234、グループデータベース232、検索インデックスデータベース252などのデータベースに格納することができる。内容および/または関連付けは、メッセージングサービス(例えば、図2~3のメッセージングサービス220)によってデータベースに格納することができる。
At 404, the content of the message may be stored in a content database (e.g.,
405において、メッセージの属性は、トピックデータベース236、ユーザデータベース234、グループデータベース232、検索インデックスデータベース252、電子メールユーザデータベース237、およびタスクデータベース256などの属性データベースに格納することができる。属性とメッセージ内容の関連付けも、属性データベースおよび任意の他のデータベースに格納することができる。例えば、図2~3に示すように、属性および/または関連付けは、メッセージングサービス220によってデータベース260に格納することができる。
At 405, message attributes may be stored in attribute databases, such as
406において、メッセージの属性を処理することができる。例えば、メッセージの内容は、会話に関連付けられるトピックによってタグ付けされることが可能である。別の例として、検索は、内容に関連付けられるすべてのユーザについて実行することができる。メッセージの属性は、メッセージングサービスによって処理することができる。 At 406, attributes of the message can be processed. For example, the content of the message can be tagged with topics associated with the conversation. As another example, a search can be performed for all users associated with the content. The attributes of the message can be processed by the messaging service.
ユーザ間の直接交換に基づくほとんどのメッセージングシステムとは対照的に、いくつかの実施形態において、本開示にかかるメッセージングシステム(例えば、メッセージングサービスおよびメッセージングアプリケーション)は、よりメッセージ中心であり、メッセージが内容であり、ユーザがその内容の属性である。例えば、本開示の技術は、会話の受信者または購読者を識別する必要はない。代わりに、本メッセージングシステムは、任意の他の参加者が識別されていない状態で、作成者ユーザ(例えば、会話の作成を引き起こすユーザ)によって、会話、例えば一連のメッセージを作成することを可能にする。会話の参加者は単なる受信者ではなく、作成者ユーザである。作成者ユーザは、メッセージの投稿、会話のトピックへのラベル付け、会話へ他の参加者の追加、他の参加者へのタスクの割り当てなどを行うことができる。 In contrast to most messaging systems based on direct exchanges between users, in some embodiments, messaging systems (e.g., messaging services and messaging applications) according to the present disclosure are more message-centric, where messages are the content and users are the attributes of that content. For example, the techniques of the present disclosure do not require identifying recipients or subscribers of a conversation. Instead, the present messaging system allows a conversation, e.g., a series of messages, to be created by a creator user (e.g., a user who triggers the creation of a conversation) without any other participants being identified. Participants in a conversation are creator users, not just recipients. Creator users can post messages, label conversation topics, add other participants to a conversation, assign tasks to other participants, etc.
会話作成後、他の参加者を会話に追加することができる。会話の参加者が会話の開始時に定義されるほとんどのメッセージングシステムとは異なり、本メッセージングシステムはいつでも参加者を会話に参加させることができる。会話内で本メッセージングサービスのユーザのユーザ名、グループ名、または電子メールアドレスを入れることにより、参加者を既存の会話に参加させることができる。そうすると、参加者は、会話に追加され、会話内で伝達される過去と未来のメッセージ、例えばフィードまたは通知で受信することができる。追加された参加者は、例えば、会話内でメッセージを投稿すること、会話のトピックにラベルを付けること、タスクを割り当てること、および/または会話に他の参加者を追加することによって、会話に参加することができる。 After a conversation is created, other participants can be added to the conversation. Unlike most messaging systems where the participants of a conversation are defined at the beginning of the conversation, the messaging system allows participants to join a conversation at any time. A participant can join an existing conversation by including a username, group name, or email address of a user of the messaging service in the conversation. The participant can then be added to the conversation and receive past and future messages conveyed within the conversation, e.g., in a feed or notifications. The added participant can participate in the conversation, e.g., by posting a message in the conversation, labeling the conversation topic, assigning a task, and/or adding other participants to the conversation.
図5は本開示にかかるデータモデルの例示的な実施形態を示す図である。図5の例示的なデータモデルは単に例示的なものであり、他の構成を使用することができることを理解すべきである。図に示すように、データモデルは会話中心である。言い換えれば、会話はデータベース内の1次データ(primary data)である。ユーザデータ、トピックデータ、タスクデータなどの他のデータは、会話の属性である。図に示すように、メッセージングサービスの会話データベース230は、複数の会話を含む。会話データベース230は、複数のテーブルを含む。例えば、スレッドテーブル502、メッセージテーブル504、および内容テーブル506は、すべて会話データベース230に格納される。
5 illustrates an exemplary embodiment of a data model according to the present disclosure. It should be understood that the exemplary data model of FIG. 5 is merely exemplary and other configurations may be used. As shown, the data model is conversation-centric. In other words, conversations are the primary data in the database. Other data, such as user data, topic data, task data, etc., are attributes of conversations. As shown, a
スレッドテーブル502は、Thread_ID、User_ID、およびCreated_Timeなどの項目を含む。Thread_IDは、他のデータと属性を参照する主キーである。例えば、Thread_IDは、特定のThread_IDに関連付けられるメッセージをルックアップするために使用される。Thread_IDは、以下でより全面的に説明されるように、Thread_IDで識別されるスレッドに関連する属性データベース内の属性をルックアップするためにも使用される。属性データベースを説明する前に、会話データベース230に格納されるレコードをより詳細に説明する。
The thread table 502 includes fields such as Thread_ID, User_ID, and Created_Time. The Thread_ID is a primary key that references other data and attributes. For example, the Thread_ID is used to look up messages associated with a particular Thread_ID. The Thread_ID is also used to look up attributes in an attribute database that is associated with the thread identified by the Thread_ID, as described more fully below. Before describing the attribute database, the records stored in the
会話データベース230について、ユーザによって新しいスレッド(例えば、新しい会話)が作成されるたびに、メッセージサービスは、新しいThread_IDを生成して割り当て、スレッドを作成したユーザのUser_ID及びスレッドが作成された時刻(Created_Time)と共にスレッドテーブルに新しいレコードを作成する。さらに、特定のスレッド(例えば、特定の会話)内の各メッセージに関連付けられる情報は、Thread_ID、User_ID(メッセージを作成したユーザの場合)、各メッセージを識別するMessage_ID、メッセージが作成された時刻(Created_Time)、および会話中にメンション(言及)され追加された可能性のある他のユーザまたはグループを識別するエントリ(Is_Mentioned)と共にメッセージテーブル504に格納される。会話中にメンションされた(例えば、@記号で始まる)ユーザまたはグループは、以下では「メンション」と称される。各メッセージの内容は、内容テーブル506に個別に格納され、対応するメッセージIDによって参照されることが可能である。これは、メッセージが短い文字列か、JPEGやビデオなどの何らかの形式のメディアを含むかによって、メッセージの格納サイズ大きく異なる可能性があるからである。
For the
前述したように、各スレッド(会話)は、関連付けられる属性を有することができる。これらの属性は、会話のThread_IDによって参照される。たとえば、Thread_IDは各属性データベースに含まれるキーであり、特定の会話に関連付けられるすべての属性をルックアップするために使用できる。図5に示すように、ユーザは会話の属性である。特定の会話に関連付けられるユーザは、ユーザデータベース234において、特定の会話に対応する特定のThread_IDに関連付けられるすべてのユーザを検索することによって決定することができる。検索によって、一致するすべてのUser_IDが返される。
As mentioned above, each thread (conversation) can have attributes associated with it. These attributes are referenced by the conversation's Thread_ID. For example, the Thread_ID is a key contained in each attribute database and can be used to look up all attributes associated with a particular conversation. As shown in FIG. 5, user is an attribute of a conversation. The user associated with a particular conversation can be determined by searching the
同様に、電子メールメッセージデータベース238の検索により、電子メールを介して、スレッドに関連付けられるユーザのすべてのUser_IDが返される。すなわち、電子メールアドレスが会話に追加されるたびに、電子メールメッセージデータベース238に新しいレコードが作成される。各レコードには、会話で電子メールアドレスを追加したユーザのUser_IDが格納される。さらに、会話に対応するReturn_Emailアドレスは、メッセージングサービス(例えば、メッセージングサービス220)によって割り当てられ、電子メールメッセージデータベース238に格納される。各電子メール参加者(電子メールアドレスで追加された参加者)には、関連付けられるEmail_Addressをルックアップするために使用できるMail_Box_User_IDが割り当てられる。電子メールアドレスは、この電子メールアドレスを含むメッセージのMessage_IDとともに格納される。また、各電子メールメッセージのメッセージ内容等も電子メールメッセージデータベース238(例えば、電子メール属性テーブル522、520)に格納される。 Similarly, a search of the email message database 238 returns all User_IDs of users associated with the thread via email. That is, each time an email address is added to a conversation, a new record is created in the email message database 238. Each record stores the User_ID of the user who added the email address in the conversation. Additionally, a Return_Email address corresponding to the conversation is assigned by a messaging service (e.g., messaging service 220) and stored in the email message database 238. Each email participant (a participant added by email address) is assigned a Mail_Box_User_ID that can be used to look up the associated Email_Address. The email address is stored along with the Message_ID of the message that contains this email address. Additionally, the message content, etc. of each email message is also stored in the email message database 238 (e.g., email attribute tables 522, 520).
属性データベースは、例えば、グループデータベース(例えば、グループデータベース232)をさらに含む。グループデータベース232は、会話に関連付けられるグループに関する情報(例えば、グループ属性)を格納する。グループデータベース232に格納されるデータは、Thread_ID、Group_ID、Created_Time(グループが作成された時刻)のうちの1つ又は複数を含む。Group_IDは、Group_Name(グループ名)、Owner_User_ID(グループ所有者、例えばグループの作成者のUser_ID)、グループタイプ(プライベートまたはパブリックグループなど)、加入時刻(メンバがグループに加入した時刻)、およびグループに関連付けられる状態を含むレコードを示すためにも使用される。
The attribute database further includes, for example, a group database (e.g., group database 232). The
一実施形態において、属性データベースは、会話に関連付けられるタスク割り当てを示す情報(例えば、タスク属性)を格納するタスクデータベース(例えば、タスクデータベース256)を含む。タスクデータベース256に格納されたタスク属性も、各会話のThread_IDによって参照される。タスクデータベース256に格納されるデータおよび情報の一部には、期限(実質的には期限日)、割当者および被割当者のユーザID(Assignor_User_IDおよびAssignee_User_ID)、および状態(例えば、ステータス)が含まれる。作成された時刻、検証された時刻、および最後に更新された時刻を、タスクのために格納されたレコードに関連付けることもできる。 In one embodiment, the attribute database includes a task database (e.g., task database 256) that stores information (e.g., task attributes) indicative of task assignments associated with a conversation. The task attributes stored in task database 256 are also referenced by the Thread_ID of each conversation. Some of the data and information stored in task database 256 includes the deadline (effectively the due date), the assigner and assignee user IDs (Assignor_User_ID and Assignee_User_ID), and the state (e.g., status). The time created, validated, and last updated can also be associated with the record stored for the task.
一実施形態によれば、属性データベースは、会話に関連付けられるトピックを示す情報(例えば、トピック属性)を格納するトピックデータベース(例えば、トピックデータベース236)をさらに含む。トピックデータベースは、各会話のThread_IDによって参照され、会話に関連付けられ、一般に、各トピックに関連付けられるユーザID、Topic_IDおよび作成された時刻を含む。Topic_IDは、トピック名(Topic_Name)を参照するために使用される。例えば会話内にハッシュタグで始まるメッセージへのエントリによって、新しいトピックが会話に追加されるたびに、メッセージングサービス(例えば、メッセージングサービス220)は、会話のThread_IDによって参照されるトピックデータベース236にエントリを格納する。
According to one embodiment, the attribute database further includes a topic database (e.g., topic database 236) that stores information (e.g., topic attributes) indicative of topics associated with a conversation. The topic database is referenced by the Thread_ID of each conversation and is associated with a conversation, and typically includes the user ID, Topic_ID, and time of creation associated with each topic. The Topic_ID is used to reference the topic name (Topic_Name). Each time a new topic is added to a conversation, for example by an entry in a message beginning with a hashtag in the conversation, the messaging service (e.g., messaging service 220) stores an entry in the
上述したように、これらの様々な属性はすべて、メッセージングサービス(例えば、メッセージングサービス220)において新しいスレッド(例えば、新しい会話)が作成されたときに生成されるThread_IDに関連付けられる。したがって、メッセージングサービス220は、会話に関連付けられる様々な属性を検索し、取り戻すことができる。本明細書では、会話とスレッドはある程度交換可能に使用される。一例において、メッセージスレッドデータベース230および複数の属性データベース(例えば、トピックデータベース236、タスクデータベース256、グループデータベース232、電子メールメッセージデータベース238、およびユーザデータベース234)は、同じサーバまたは装置に格納することが可能である。別の例において、メッセージスレッドデータベース230および複数の属性データベースは、それぞれ異なるサーバまたは装置に格納されてもよい。メッセージスレッドデータベース230および複数の属性データベースは、1つまたは複数の物理サーバまたは1つまたは複数の仮想サーバ上でホストされることができる。
As mentioned above, all of these various attributes are associated with a Thread_ID that is generated when a new thread (e.g., a new conversation) is created in a messaging service (e.g., messaging service 220). Thus,
図6は、図5に示されるデータモデルに関連して、メッセージングサービス(例えば、メッセージングサービス220)によって実行される例示的なプロセス600を示す。図6では一連の動作として説明されているが、当業者であれば、様々な実施形態において、説明された動作を追加、除去、並べ替え、または修正することができることを理解するはずである。
FIG. 6 illustrates an
602において、メッセージングサービス220は、メッセージングアプリケーション、例えば、ユーザ装置242上で動作するメッセージングアプリケーション240から、会話のうちの少なくとも1つを示す要求を受信する。例えば、ユーザは、メッセージングアプリケーション240によって、ユーザが参加している1つまたは複数の会話に関連付けられる属性を示す情報を要求している場合がある。例えば、ユーザ装置242上で動作するメッセージングアプリケーション240は、ユーザのための会話に関連付けられる属性(例えば、トピック、ユーザ、グループ、タスク)を示す情報を要求することができる。この要求に応じて、604において、メッセージングサービス220は、該ユーザのUser_IDに関連付けられるすべてのThread_IDをユーザデータベース234内でルックアップし、さらに他の属性データベースにクエリし、これらのThread_IDに基づいて識別された会話に関連付けられる様々な属性を決定する。一例において、メッセージングサービス220は、Thread_IDに関連付けられるトピックデータベース内のすべてのトピックをルックアップすることができる。606において、メッセージングサービス220は、クエリ結果を処理して、少なくとも1つの属性(例えば、トピック属性)が会話のうちの少なくともいくつかに関連付けられると判定する。
At 602, the
608において、メッセージングサービス220は、ユーザ装置242上に属性のインジケータを表示するために、会話に関連付けられる属性情報をメッセージングアプリケーション240に送信する。例えば、図12に示すように、会話に関連付けられる複数のトピックは、ユーザインターフェース(UI)1200の一番左の列1205に表示されている。いくつかの実施形態において、複数の属性が存在してもよく、メッセージングサービス220またはメッセージングアプリケーション240によって、それらに異なる優先度を割り当てることができる。メッセージングサービス220またはメッセージングアプリケーション240は、複数の属性を、それらの優先度に基づいて編成することができる。一例において、メンション(つまり、会話に追加されたユーザまたはグループ)属性は、トピック属性より高い優先度を有してもよい。例えば、図25のメンション属性(例えば、UserE2501およびGroup1 2504)には、トピック属性より高い優先度を割り当てることができる。図25の属性のインジケータは、メンション属性に基づいて表示され、メンション属性の下に1つまたは複数のトピック(もしあれば)を表示することができる。一例において、特定のメンション属性を持つ会話に、複数のトピックが関連付けられる場合がある。図25に示すように、メンション属性UserE2501を有する会話には複数のトピック(「patent」というトピック2502を含む)が関連付けられており、この例では、メンション属性の方がトピック属性よりも優先度が高いので、複数のトピックはメンション属性UserE2501の下に表示されている。
At 608, the
いくつかの実施形態において、メッセージングアプリケーション240からの要求の受信に応じて、メッセージングサービス220は、データベース260(例えば、ユーザデータベース234、タスクデータベース256など)にクエリして、任意の特定のユーザに関連付けられるタスクを決定することができる。例えば、メッセージングサービス220は、特定のユーザ(例えば、ユーザID)の識別情報を含む要求をメッセージングアプリケーション240から受信する。これに応じて、メッセージングサービス220は、ユーザIDに基づいてユーザデータベース234を検索し、ユーザが関わっている会話に対応するThread_IDを識別する。メッセージングサービス220は次に、Thread_IDに基づいてタスクデータベース256にクエリして、会話に関連付けられるタスクをルックアップすることができる。メッセージングサービス220は、タスクデータベース256の検索に基づいて、各タスクのAssignor_User_IDおよびAssignee_User_IDを識別することができる。メッセージングサービス220は次に、識別されたAssignor_User_IDまたはAssignee_User_IDが特定のユーザのユーザIDと同じであるか否かを判定することに基づいて、タスクのうちのいずれかが特定のユーザに関連付けられているか否かを判定することができる。いずれかのタスクが特定のユーザに関連付けられていると判定すると、メッセージングサービス220は、特定のユーザに関連付けられるタスクを表示するために、決定されたタスクを示す情報をメッセージングアプリケーション240に送信する。一例において、メッセージングアプリケーション240は、タスクに関連付けられる期限日に基づいてタスクを分類または順序付けすることができる。別の例において、メッセージングアプリケーション240は、タスクの割当者または被割当者に関連付けられる情報に基づいて、タスクを分類または順序付けすることができる。メッセージングアプリケーション240は、分類されたまたは順序付けられたタスクを、UIの所定領域内に、またはUI上に重ねられたウィンドウに表示させることができる。
In some embodiments, in response to receiving a request from messaging application 240,
一実施形態において、メッセージングアプリケーション240とメッセージングサービス220との間で追加的なインタラクションが行われてもよい。例えば、610において、メッセージングサービス220は、メッセージングアプリケーション240から、メッセージングアプリケーション240が属性(例えば図12の一番左の列に示される表示されたトピックリストのうちのトピック)を既に選択したことを示す入力を受け取る。これに応じて、612において、メッセージングサービス220は、選択された属性(例えば、トピック)に関連付けられるメッセージをメッセージスレッドデータベース230にクエリする。その後、メッセージングサービス220は、メッセージをユーザ装置242上に表示させるために、メッセージをメッセージングアプリケーション240に送信する。例えば、図12に示すように、UI1200の一番右の列1204上には、選択されたトピックに関連付けられるメッセージが表示される。
In one embodiment, additional interactions may occur between the messaging application 240 and the
図7は、メッセージングアプリケーション(例えば、メッセージングアプリケーション240)とメッセージングサービス220において維持されるデータモデルとの間のインタラクションを示す別の例示的なプロセス700を示す。図6では一連の動作として説明されているが、当業者であれば、様々な実施形態において、説明された動作を追加、除去、並べ替え、または修正することができることを理解するはずである。別の実施形態において、メッセージングサービス220は、702において、会話のうちの少なくとも1つを示すユーザに関連付けられるメッセージングアプリケーション(例えば、ユーザ装置242上で動作するメッセージングアプリケーション240)から要求を受信する。これに応じて、メッセージングサービス220は、704において、メッセージスレッドデータベース230にクエリする。例えば、メッセージングサービス220は、ユーザが既に参加した対応会話をルックアップする。その後、706において、メッセージングサービス220は、クエリ結果を処理して、各会話内のメッセージのサブセットを決定する。一実施形態において、各会話のメッセージのサブセットは、会話内の最初のメッセージと最後のメッセージであってもよい。メッセージングサービス220は、メッセージのサブセットに基づいて、各会話の要約を作成することができる。708において、メッセージングサービス220は、各会話の要約を表示するために、メッセージのサブセットをメッセージングアプリケーション240に送信する。例えば、図12に示すように、UI1200の中間エリア1216に会話の要約が表示される。
FIG. 7 illustrates another
いくつかの実施形態において、710において、メッセージングサービス220は、メッセージングアプリケーション240が要約のうちの1つを選択したことを示す要求を受信することができる。この場合、また、これに応じて、712において、メッセージングサービス220は、対応する会話内の全部または複数のメッセージを取り戻すために、会話データベース230に再度クエリすることができる。実施形態において、メッセージングサービス220は、対応する会話内のすべてのメッセージを取り戻すことができる。他の実施形態において、メッセージングサービスは、対応する会話内のメッセージのサブセットを取り戻すことができる。例えば、メッセージの数及びメッセージの内容について、ユーザ装置(例えば、ユーザ装置242)がメッセージを格納するのに必要とする格納量が閾値を上回る場合、メッセージングサービス220にとって、ユーザ装置242に送信されるメッセージのサブセットのみを取り戻すことが有利であることがある。非限定的な例において、メッセージングサービス220は、対応する会話内の最新のメッセージのみを取り戻してもよい。714において、メッセージングアプリケーション240がユーザ装置242上にメッセージを表示できるように、メッセージングサービス220は、少なくとも会話内で取り戻したメッセージのサブセットをメッセージングアプリケーション240に送信する。
In some embodiments, at 710, the
図8はメッセージング技術を示す図である。技術は、メッセージングサービス(例えば、図2および図3のメッセージングサービス220)、メッセージングアプリケーション(例えば、図2および図3のメッセージングアプリケーション240)、1つまたは複数のユーザ210、および/または1つまたは複数のユーザ装置242によって実行することができる。801において、会話を開始することができる。会話は、メッセージングアプリケーションを介して会話の開始を要求する入力を入れることによって、作成者ユーザによって開始することができる。例えば、ユーザは、ユーザ装置上に表示されたメッセージングアプリケーションのUI内の「Start a conversation」アイコンを選択することができる。メッセージングサービスのチャットサービス(例えば、図2のチャットサービス222)は、入力を受け取り、会話を生成することができる。会話は、会話の任意の他の参加者が識別されていない状態で、作成者ユーザによって開始することができる。
8 illustrates a messaging technique. The technique may be performed by a messaging service (e.g.,
802において、チャットサービス222などのメッセージングサービス220を介してメッセージが受信されると、会話内のすべての参加者(例えば、作成者ユーザおよび任意の他の参加者)についてルックアップを実行することができる。メッセージの内容を決定することができる。内容は、チャットサービス222などのメッセージングサービス220によって解析することが可能である。内容を解析することは、メッセージおよび/または会話の1つまたは複数の属性を決定することを含むことができる。例えば、内容には、トピック、ユーザ、および/またはユーザグループなどの属性を表す所定の特殊キャラクタからなるテキストが含まれることがある。このルックアップは、メッセージングサービス220、例えば、チャットサービス222によって実行することができる。このルックアップは、1つまたは複数のデータベース260にクエリすることによって実行することができる。データベース260は、会話データベース230、グループデータベース232、ユーザデータベース234、トピックデータベース236、タスクデータベース256、電子メールユーザデータベース237、および/または電子メールメッセージデータベース238を含むことができる。参加者と会話との関連付けは、例えば、チャットサービス222によってデータベース260に格納されてもよい。
At 802, when a message is received via a
803において、会話に関連付けられるトピックを決定することができる。トピックは、メッセージングサービス220、例えばチャットサービス222によって決定することが可能である。メッセージングサービス220は、メッセージを解析し、メッセージに含まれる所定のキャラクタを識別することに基づいて、メッセージがトピックを示す情報を含むと判定することができる。限定ではなく、一例として、所定の文字はハッシュ記号#としてもよい。メッセージングサービス220は、データベース260(例えば、トピックデータベース236)に格納された既存のトピックを検索することによって、既に受信された会話に関連付けられるいずれかのメッセージが新しいトピックを含むか否かを判定することができる。新しいトピックであると判定すると、メッセージングサービス220は、該新しいトピックをデータベース260(例えば、トピックデータベース236)に格納することができる。会話とトピックとの関連付けを決定し、会話データベース230およびトピックデータベース236などのデータベース260に格納することもできる。
At 803, a topic associated with the conversation may be determined. The topic may be determined by the
804において、メッセージおよび新しいトピックの指示を出力(例えば、プッシュ、送信)することができる。新しいトピックの指示(例えば、新しいトピックタグ)は、表示のために、プッシュサービス(例えば、プッシュサービス224)によって、会話の参加者に関連付けられるメッセージングアプリケーション(例えば、メッセージングアプリケーション240)に送信することができる。トピックの選択を示すユーザ入力が受け取られると、トピックに関連付けられるメッセージを、メッセージングサービス220のプッシュサービス224によって出力することができる。メッセージおよびトピックタグは、例えば、ユーザ装置242上で動作するメッセージングアプリケーション240のUI内の会話を介して、メッセージアプリケーションのユーザに出力することができる。メッセージおよびトピックタグは、ユーザ装置(例えば、ユーザ装置242)に送信することができる。メッセージおよびトピックタグは、会話に追加済みの外部電子メールアドレスに送信することができる。
At 804, the message and an indication of the new topic can be output (e.g., pushed, sent). The indication of the new topic (e.g., new topic tag) can be sent by a push service (e.g., push service 224) to a messaging application (e.g., messaging application 240) associated with the conversation participants for display. When user input indicating a selection of a topic is received, a message associated with the topic can be output by
805において、新しい参加者Aを会話に加入するように招待することができる。新しい参加者Aは、既存の参加者によって、例えば会話の入力フィールドに、該新しい参加者Aに関連付けられるユーザ名、グループ名、または電子メールアドレスを入れることによって、招待することができる。メッセージングサービス220(例えば、チャットサービス222)は、該新しい参加者Aを会話に追加することができる。メッセージングサービス(例えば、チャットサービス222)は、新しい参加者Aと会話との関連付けを、データベース260に、例えば会話データベース230およびユーザデータベース234に格納することができる。
At 805, a new participant A can be invited to join the conversation. The new participant A can be invited by an existing participant, for example, by entering a username, group name, or email address associated with the new participant A in an input field of the conversation. The messaging service 220 (e.g., chat service 222) can add the new participant A to the conversation. The messaging service (e.g., chat service 222) can store the association of the new participant A with the conversation in a
806において、会話内の既存の参加者のルックアップを実行することができる。このルックアップは、メッセージングサービス220、例えば、チャットサービス222によって実行することができる。チャットサービス222は、会話内の決定された参加者の指示をプッシュサービス224に送信することができる。
At 806, a lookup of existing participants in the conversation may be performed. This lookup may be performed by a
807において、会話内の既存の参加者に、新しい参加者Aが会話に追加されたことを通知することができる。プッシュサービス224によって、既存の参加者に通知することができる。既存の参加者に通知することは、既存の参加者のユーザ装置(例えば、ユーザ装置242)に通知を送信することを含むことができる。既存の参加者には、それら装置上で動作するメッセージングアプリケーションの会話および/またはUIを介して通知することができる。
At 807, existing participants in the conversation may be notified that new participant A has been added to the conversation. The existing participants may be notified by
808において、会話に関連付けられるメッセージの内容を決定することができる。内容は、チャットサービス222などのメッセージングサービス220によって解析することが可能である。内容を解析することは、メッセージの内容の1つまたは複数の属性を決定することを含んでもよい。例えば、メッセージに新しい参加者Aのような属性を表す特殊キャラクタからなるテキストが含まれていると判定することがある。限定ではなく、一例として、新しいユーザ(つまり、新しい参加者)を表す所定の特殊キャラクタは、@記号であってもよい。会話のルックアップは、例えば、会話データベース230やトピックデータベース236などのデータベース260にクエリすることによって実行することができる。会話のルックアップを実行して、該会話に関連付けられるユーザ、メッセージ、トピック、および他の属性を決定することができる。チャットサービス222は、解析および/または会話ルックアップの結果の指示をプッシュサービス224に送信することができる。
At 808, content of messages associated with the conversation may be determined. The content may be analyzed by a
809において、会話ルックアップの結果、例えばメッセージおよびトピックタグを、新しい参加者Aに出力(例えば、プッシュ)することができる。メッセージおよびトピックタグは、プッシュサービス224によって出力することができる。メッセージおよびトピックタグを出力することは、例えば、ユーザ装置(例えば、ユーザ装置242)上で動作するメッセージングアプリケーション(例えば、メッセージングアプリケーション240)のUI内の会話を介して、メッセージおよびトピックタグを新しい参加者に送信することを含むことができる。メッセージおよびトピックタグは、新しい参加者Aに関連付けられるユーザ装置(例えば、ユーザ装置242)に送信することができる。会話内のメッセージは、新しい参加者Aに関連付けられる外部電子メールアドレスに送信することができる。本開示にかかるメッセージングサービスは、会話に関連付けられるトピックの属性に基づいて会話を分類し、参加者が関心を持つ会話のトピックを示すトピックタグの選択に応じて、該参加者に会話の内容を提供することができる。これにより、本メッセージサービスは、ユーザが関心を持つ内容をより効率的に提供することができる。
At 809, the results of the conversation lookup, e.g., a message and a topic tag, can be output (e.g., pushed) to the new participant A. The message and topic tag can be output by the
図9は、図8と関連して、新しい会話を開始し、該新しい会話にユーザを追加する態様を示す。図4について述べたように、ユーザは新しい会話を開始する。ユーザは、「Start a conversation」ボタン917を選択することにより、新しい会話を開始することができる。これは、図9においてユーザ装置(例えば、ユーザ装置242)上で動作するユーザインターフェース900の視点から示されている。ここで、ユーザ(例えば、ユーザA)は、会話901を開始し、メッセージ「#tag-patent」903を入れる。メッセージ903に関連付けられる他のユーザがいないので、メッセージは、会話の作成者(すなわち、作成者ユーザ)でもある単一のユーザ、ユーザAの会話901内にのみ現れる。これにより、作成者ユーザは、引き続き会話901にメッセージを追加することができる。以下でより全面的に説明されるように、メッセージ「#tag-patent」は、最初のメッセージの少なくとも一部として入れられたトピック(「patent」)を含む。会話中はいつでもトピックを含むメッセージを入れることができる。一実施形態において、該メッセージはメッセージングサービスによって処理され、会話901に関連付けられる属性としてデータベースに格納される。同様に、説明したように、会話901の他の参加者(例えば、会話901へのアクセス許可を持つメッセージングサービスのユーザ)を、会話901の属性として会話901に追加することができる。
FIG. 9 illustrates, in conjunction with FIG. 8, how to start a new conversation and add a user to the new conversation. As described with respect to FIG. 4, a user starts a new conversation. The user may start a new conversation by selecting a "Start a conversation"
図8を再び参照し、会話の作成者ユーザは、新しいユーザ(すなわち、新しい参加者)を会話に参加するように招待することができる。いくつかの実施形態において、メッセージングサービスは、説明した複数のデータベース260と通信して、前述したチャットサービス222およびプッシュサービス224を使用する。この例を続けると、810において、ユーザは、1つまたは複数のメッセージを含む会話を開始することができる。メッセージは、複数のキャラクタ、記号を含み、テキスト文字列、または他のタイプの内容とすることができる。新しいメッセージが会話に追加された場合、チャットサービス222は、どのユーザが会話の属性であるか、すなわち、会話に関連付けられるユーザであるかを判定する。これらの属性は、1つ又は複数のデータベースに格納される。このようなデータベースは、会話データベース(例えば、会話データベース230)、グループデータベース(例えば、グループデータベース232)、トピックデータベース(例えば、トピックデータベース236)、および電子メールユーザデータベース(例えば、電子メールユーザデータベース237)を含むが、これらに限定されない。会話の参加者が識別され、会話を通知されることができる。
8, the creator user of a conversation can invite new users (i.e., new participants) to join the conversation. In some embodiments, the messaging service uses the
会話中にメッセージが受信されると、メッセージングサービス(例えば、メッセージングサービス220)は、会話を形成するメッセージ中に新しいトピックが含まれているか否かを判定してもよく、トピックデータベース236のような1つ又は複数のデータベース内で既存のトピックを検索してもよい。したがって、会話の属性、例えばトピック、ユーザ、グループ等によって、会話が例えばトピックに基づいて適切に分類されること、新しい会話が参加者にプッシュアウトされることを保証する。プッシュサービス224は、メッセージ、既存のトピックタグ、および新しいトピックタグを対象とする参加者に出力することを支援する。いくつかの実施形態において、これは、会話の対象とする参加者に関連付けられる装置上のユーザインターフェースまたはユーザディスプレイにメッセージをプッシュすることによって発生することができる。
When a message is received during a conversation, the messaging service (e.g., messaging service 220) may determine whether a new topic is included in the message forming the conversation, and may search for existing topics in one or more databases, such as
別の例において、ユーザは会話に加入するように招待されてもよい。例えば、805において、新しい参加者Aを既存の会話に加入するように招待することができ、これにより、メッセージングサービス(例えば、メッセージングサービス220)は、会話に関連する情報を新しい参加者Aと共有することを許可される。チャットサービス222は、この作動を処理し、506において、先の例と同様に、会話に関連付けられるすべての既存の参加者をルックアップし、必要に応じて1つ又は複数のデータベース260(例えば、データベース230~236)と通信して、関連情報を取得する。参加者が識別されると、プッシュサービス224は、807において、会話に新しい参加者が追加されたことを既存の参加者に示すために、会話に関連付けられる識別された既存の参加者に通知する。
In another example, a user may be invited to join a conversation. For example, at 805, a new participant A may be invited to join an existing conversation, which allows the messaging service (e.g., messaging service 220) to share information related to the conversation with the new participant A. The
新しい参加者Aが会話に加入するように招待された後、プッシュサービスが会話の関連態様を新しい参加者に送信できるように、会話に関連するメッセージ、内容、および/またはメタデータを、例えば、会話データベース230およびトピックデータベース236から取り戻す。図9は、新しいユーザを会話に参加するように招待するための技術の態様の例示的なユーザインターフェース(UI)900を示す。図9において、UI900は、例えば、メッセージングアプリケーション(メッセージングアプリケーション240)を通してユーザ装置(例えば、ユーザ装置242)上に提示されるように示されている。この例において、また、UI900に示されるように、ユーザAは、1つまたは複数のメッセージ902を含む会話901を開始した。この例において、メッセージ「Hello」が会話901に追加された。さらに、トピック「patent」903を含む別のメッセージが会話901に追加された。該会話901を、データベース260、例えば、会話データベース230に格納することができる。新しいユーザを追加するために、UI900のメッセージフィールド904に、@記号905または他の所定の特殊キャラクタとそれに続く例えばユーザ名によってユーザを識別するテキスト文字列906を使用して、ユーザを示す情報を入力する。ここで、@記号で始まるテキストフィールドにユーザCのユーザ名が入力されている。
After a new participant A is invited to join the conversation, messages, content, and/or metadata related to the conversation are retrieved, for example, from the
一実施形態において、ユーザが「Send」ボタン907を選択した後、メッセージはメッセージングサービス(例えば、メッセージングサービス220)に送信される。メッセージングサービスはそれから、例えば図4に示すように、メッセージを解析して、メッセージが所定の@記号905を含むと判定し、メッセージの後続のテキスト906を、ユーザ識別情報として解釈する。次に、メッセージングサービスは、このメッセージをユーザAの、識別されたユーザC(すなわち、新しい参加者)を会話に追加することをシステムに許可する要求として解釈する。他の実施形態も想定されており、例えば、ユーザ装置上のメッセージングアプリケーションは、メッセージを解析し、識別されたユーザC(すなわち、新しい参加者)に会話への加入を許可することをユーザが望んでいることを示すインジケータをメッセージングサービスに送信することができる。言い換えれば、メッセージの処理は部分的にユーザ装置上で行うことができ、処理の一部はメッセージングサービスによって行うことができる。
In one embodiment, after the user selects the "Send"
特定のイベントにおいて、一旦許可されると、クラウドサービスは、会話の属性として、新しい参加者を識別する情報(例えば、新しい参加者のユーザ名)を追加することができる。このために、ユーザは会話901に関連付けられ、該関連付けはデータベース260に格納される。特定のユーザを識別することに関連付けられるインジケータとして、複数の記号、テキスト、キャラクタなどを定義することができることを理解すべきである。この特定の例において、@符号は、新しいユーザを追加するための所定の記号であり、ユーザは新しいユーザ名を「@UserC」として入れ、「@UserC」はメッセージングサービスによって会話901への新しい参加者として認識される。
In a particular event, once permitted, the cloud service can add information identifying the new participant (e.g., the new participant's username) as an attribute of the conversation. To this end, the user is associated with the
図10は、新しい参加者1002(例えば、ユーザC)が会話1001に追加された後のUI1000の視点から見た特性の態様を示す。この例において、図に示されるように、新しい参加者1002のユーザ名が会話1001内のもう1つのメッセージとなる。言い換えれば、新しい参加者が会話1001に追加されたことは、会話1001自体のテキスト内に格納される。したがって、会話1001内のメッセージを解析することによって、会話1001に新しい参加者および他の属性が追加される順序および時間を見分けることができる。例えば、新しい参加ユーザCが追加された後、ユーザ(例えば、ユーザA)は、午後9時31分に、トピック「#tag-patent1」を含むもう1つのメッセージをも会話1001に入れた。したがって、ユーザ(例えば、ユーザA)は、新しいユーザを会話に追加し、メッセージ、例えば、「#tag-patent」、「#tag-patent1」を入れることによって、会話1001に関連付けられる1つ又は複数のトピックを指定することができる。図2に示すように、会話1001内のこれらの特定のメッセージも、トピックデータベース236、ユーザデータベース234などの様々な属性データベースに格納される会話の属性になる。実施形態において、属性は、異なる記号、文字、キャラクタを使用して定義することができ、例えば、ユーザ名または他のユーザ識別情報が入れられることを示すために@を使用し、トピックが会話1001に関連付けられることを示すためにハッシュタグ#を使用することができる。追加の属性を会話に追加するために、他のシンボルを使用することができることが考えられる。
10 shows an aspect of the properties from the perspective of the
図9~図10はまた、例えば一番左の列909、1009によって示されるように、会話が、トピックでソートすることができることを示している。図示された例は、会話がトピック属性などの属性でソートされる「Feed」ビュー908、1008としてラベル付けされたものを示している。フィードを選択すると、会話の選択されたトピックに関連付けられる要約バージョンで、1つまたは複数の会話のリストが表示される。一実施形態において、会話の要約バージョンを選択すると、選択された会話に関連付けられる1つまたは複数のメッセージが表示される。ここで、例えば、会話の要約バージョン(または要約、サマリー)が表示され、会話の作成者が一番上にリストアップされ、その後に会話内の最初のメッセージ「UserB Hello」910、1010が続き、次に会話内の最後のメッセージ、つまり第2のトピックを追加するためのメッセージ「#tag-patent1」911、1011が続く。会話の要約バージョン(または要約、サマリー)は、ユーザに会話のプレビューを表示し、これにより、ユーザは、自分が会話に関心を持つか否か、会話の要約を選択することによって、会話の全体の内容を概観したいか否かを判定することができる。トピック(UI上のトピックタグとして示される)は、会話の内容の短い記述子として機能する。
9-10 also show that conversations can be sorted by topic, for example, as indicated by the
他の実施形態において、以下で説明されるように、会話は、1つ又は複数の他のカテゴリおよび分類、「Groups」ビュー912、1012によってソートされてもよく、会話およびメッセージは、それらの会話およびメッセージのそれぞれが対象とあるグループに基づいて編成される。これらは、以下に他の実施形態でさらに説明される。
In other embodiments, as described below, conversations may be sorted by one or more other categories and classifications, the "Groups"
図11は、トピックタグを会話に追加し、新しいメッセージを会話に追加するための実施形態を示す図である。前述したように、トピックに対応するトピックタグは、たとえば、フィードビューで使用され、会話のソート、管理、及び選択を容易にする会話の属性である。1つまたは複数のトピックは、このようなトピックタグを介して会話に関連付けることができる。限定ではなく、一例として、トピックタグは、後続のテキストにトピックが含まれることを示す先頭キャラクタを持つテキスト文字列とすることができる。この実施形態において、ハッシュ記号すなわち「#」は、トピックを表すためにメッセージングサービスによって認識される所定のキャラクタである。ユーザ(すなわち参加者)は会話を開始することができる。この例において、ユーザはまた、1110において、トピックを会話に追加する。次に、チャットサービス222は、新しい会話の指示を受信し、トピックの存在を検出するためにメッセージを解析することができる。上記で説明したように、メッセージの解析は、メッセージングサービス(例えば、メッセージングサービス220)によって、ユーザ装置(例えば、ユーザ装置242)上のメッセージングアプリケーション(例えば、メッセージングアプリケーション240)によって、またはこれら2つの何らかの組み合わせによって行うことができる。メッセージ、例えばトピックを含むメッセージを入れることによって会話が開始された後、任意の他のユーザ、すなわち参加者が会話の関連属性であるか否かを判定するために、ルックアップ830が実行される。ルックアップは、会話データベース230、グループデータベース232、ユーザデータベース234、およびトピックデータベース236などのデータベース260の1回または複数回の検索によって行うことができる。
FIG. 11 illustrates an embodiment for adding a topic tag to a conversation and adding a new message to a conversation. As previously described, topic tags corresponding to topics are attributes of a conversation that are used, for example, in a feed view to facilitate sorting, managing, and selecting conversations. One or more topics can be associated with a conversation via such topic tags. By way of example and not limitation, a topic tag can be a text string with a leading character that indicates that the following text contains a topic. In this embodiment, a hash symbol or "#" is a predefined character recognized by the messaging service to represent a topic. A user (i.e., a participant) can initiate a conversation. In this example, the user also adds a topic to the conversation at 1110. The
一旦、関連ユーザ(すなわち、会話の参加者)が識別されると、840において、様々なデータベースに格納され追跡されたすべての参加者のトピックタグ分類に、該会話は追加される。言い換えれば、新しい会話と指定されたトピックタグとの間の関連付けを格納することができ、トピックタグに関連付けられ、会話にも関連付けられるすべてのユーザを関連付けるように、関連付けを格納することができる。したがって、会話は、トピックタグに関連して、すべての参加者1150について要約される。たとえば、ユーザが会話に追加された場合、ユーザは最初と最後のメッセージからなるトピックの要約バージョンを受信することができる。プッシュサービス224は、このようなメッセージをさらに処理し、1152において、メッセージを例えばユーザディスプレイ上に出力し、それぞれのユーザに送信し、既存のタグおよび新しいタグのそれぞれのビューを、例えばこのようなタグでソートされた会話のフィードビュー内で、更新することを可能にすることができる。
Once relevant users (i.e., participants in the conversation) are identified, the conversation is added at 840 to the topic tag taxonomy of all participants stored and tracked in various databases. In other words, an association between the new conversation and the specified topic tag can be stored, and the association can be stored to associate all users associated with the topic tag and also associated with the conversation. Thus, the conversation is summarized for all
図11に示す別の実施形態において、トピックタグ特性は既存の会話に組み込まれる。例えば、1115において、トピック指示を含む新しいメッセージを既存の会話に追加することができる。先に説明されたプロセスと同様に、トピックを示す情報を含むメッセージの受信により、1135において、会話内のすべての参加者のルックアップを引き起こす。トピックと会話との間の関連付け、および参加者とトピックとの間の関連付けは、会話データベース230、トピックデータベース236、ユーザデータベース234、グループデータベース232、および電子メールユーザデータベース237などのデータベース260に格納することができる。1145において、他の既存のトピックタグのルックアップを行うことで、例えば、会話内に存在し、会話に関連付けられている複数のトピックタグがある場合、そのトピックが新しいトピックであるか否かを判定することができる。1156において、メッセージングサービス220、例えば、プッシュサービス224は、次に、メッセージおよび新しいトピックに対応する新しいトピックタグをそれぞれの参加者にプッシュする。
In another embodiment shown in FIG. 11, topic tag characteristics are incorporated into an existing conversation. For example, at 1115, a new message including a topic indication can be added to an existing conversation. Similar to the process described above, receipt of a message including information indicating a topic triggers a lookup of all participants in the conversation at 1135. Associations between topics and conversations and between participants and topics can be stored in
これらの技術の一例を、図12~図13のユーザインターフェースの例を用いて説明する。図12は、トピックタグのリスト1215を提供するメッセージングアプリケーションの一例のフィードビュー1208を示す。この例において、会話1201には、所定のキャラクタ「#」で始まるトピックを含むメッセージ「#tag-patent」が含まれる。前述したように、トピックを表す所定のキャラクタは、%記号などの任意の他の特殊キャラクタであってもよい。メッセージングサービスによって、メッセージが所定のキャラクタ#を含むと判定することと、データベース260を検索することとに基づいて、メッセージが新しいトピックを含むと判定した場合、会話は、該新しいトピックに関連付けられる会話リストに追加される。したがって、メッセージングアプリケーション(例えば、メッセージングアプリケーション240)のUIを介してフィードビュー1208から対応するトピックタグが選択された場合、現在の会話1201および新しいトピックに関連付けられる他のすべての会話は、会話のすべての参加者によって容易に閲覧、編成することができる。
An example of these techniques is described with the example user interface of FIGS. 12-13. FIG. 12 shows a
図13は、この構想、およびトピックに基づいて会話をソートする能力をさらに示す。ここで、ユーザは、UI1300の一番左の列1315内でトピックタグ「#tag-patent」1316を選択している。これによって、メッセージングサービスは、ユーザおよび選択されたトピックに関連する各会話の要約バージョンをプッシュする。トピックタグ「#tag-patent」1316が選択されると、メッセージングサービスはまた、UI1300の一番右のエリア1325に、対応する会話内のメッセージを表示させるために、該会話の内容をプッシュする。そして、関連性のない他の会話を表示せずに、これらの会話をフィードビュー1308に表示させる。フィードビュー1308に表示されるトピックタグの順序は、各トピックの優先度や重要度などのユーザプリファレンスに応じて配置することができる。各トピックタグに関連付けられる会話は、1つまたは複数の変数、例えば時間、最後に受信したメッセージ、優先度、ユーザプリファレンスなどに基づいて、ソートすることもできる。同様に、各会話は複数のメッセージを含み、特定の会話に関連付けられるユーザは、メッセージを閲覧し、メッセージを送信し、本明細書で説明される追加のユーザ、トピック、グループなどの属性を追加することができる。
13 further illustrates this concept and the ability to sort conversations based on topic. Here, the user has selected the topic tag "#tag-patent" 1316 in the
様々な実施形態において、ユーザは、属性を含むことができる1つまたは複数のメッセージからなる会話を生成することができる。メッセージを解析し、1つ又は複数のメッセージが解析されたことに基づいて、メッセージが属性、例えばユーザ、トピック、グループなどを示す文字列を含むと判定することができる。属性は、トピックを示す情報と会話との間の関連付けとして、少なくとも1つのデータベースに格納することができる。メッセージングアプリケーション(例えば、メッセージングアプリケーション240)からトピックの選択を示す入力を受け取ることに応じて、メッセージングサービス(例えば、メッセージングサービス220)によって、該トピックに関連付けられる会話の少なくともサブセットを、表示用にメッセージングアプリケーション240に送信する。 In various embodiments, a user may generate a conversation consisting of one or more messages, which may include attributes. The messages may be analyzed to determine that the messages include strings indicative of attributes, such as a user, a topic, a group, etc., based on the analyzed message or messages. The attributes may be stored in at least one database as an association between information indicative of a topic and the conversation. In response to receiving input from a messaging application (e.g., messaging application 240) indicating a selection of a topic, a messaging service (e.g., messaging service 220) transmits at least a subset of the conversations associated with the topic to messaging application 240 for display.
追加の実施形態において、メッセージングサービスはさらに、トピックに関連する情報を含む少なくとも1つのデータベースを検索することによって、トピックが新しいと判定し、トピックが新しいという判定に基づいて、該トピックを示す情報を該少なくとも1つのデータベースに格納することができる。別の例において、会話内の第2のメッセージを解析することができる。第2のメッセージが第2のユーザを識別する情報を含むと判定し、その結果、第2のユーザにメッセージを会話に追加することを許可することができる。トピックを示す情報は、例えば、1つ又は複数の他のユーザによって操作される1つ又は複数のメッセージングアプリケーションに送信されてもよく、データベースは、各会話に関連付けられるトピックのような複数の属性に加えて、複数の会話を格納してもよい。 In additional embodiments, the messaging service may further determine that the topic is new by searching at least one database containing information related to the topic, and store information indicative of the topic in the at least one database based on a determination that the topic is new. In another example, a second message in the conversation may be analyzed. It may be determined that the second message contains information identifying the second user, and as a result, the second user may be permitted to add the message to the conversation. The information indicative of the topic may be transmitted, for example, to one or more messaging applications operated by one or more other users, and the database may store multiple conversations in addition to multiple attributes, such as a topic, associated with each conversation.
少なくとも1つのデータベースと、該少なくとも1つのデータベースと通信し、動作を実行するように構成された少なくとも1つのコンピューティング装置とを含むことができるメッセージングサービスを使用することによって、1つ又は複数の特性および機能を実現することができる。さらに、処理の様々な態様は、メッセージングアプリケーションとメッセージングサービスとの間で分割することができる。いくつかの実施形態において、メッセージングアプリに動作を実行させることが好ましく、他の実施形態において、サービスによって同じ動作を実行させてもよい。 One or more features and functions may be achieved through the use of a messaging service that may include at least one database and at least one computing device configured to communicate with the at least one database and perform operations. Furthermore, various aspects of processing may be split between a messaging application and a messaging service. In some embodiments, it may be preferable to have a messaging app perform the operations, while in other embodiments, the same operations may be performed by a service.
フィードビュー1308において、例えば、アイコン、例えば「Start a Conversation」アイコン1317を選択することによって、会話を開始することができる。他のメッセージングアプリケーションとは異なり、会話はユーザだけではなく、トピックで編成されてもよい。トピックは、会話の最初にユーザによって定義することができる。例えば、会話1301を開始する作成者ユーザは、会話1301にトピックを割り当てることができる。トピックは、会話の他の段階で他の参加者によって定義することもできる。トピックは、「#」記号などの特殊キャラクタやタグで表すことができる。作成者ユーザは、それから、会話に追加の参加者を追加してもよく、または、会話を独りで続行してもよい。
In the feed view 1308, a conversation can be started, for example, by selecting an icon, such as the "Start a Conversation"
「Feed」ビュー1308には、1つまたは複数のパネル1315、1318、1320を表示することが可能である。パネルは、開かれた(例えば、展開された)会話パネル1318を含むことができる。参加者は、例えば、入力フィールド1304内でメッセージを入れることによって、開かれた会話パネル1318内で通信することができる。入れられたメッセージは、例えばそれらが送信された順序、入れられた順序、または受信された順序で、会話1301のログまたはフィード1319として表示することができる。メッセージが送信され、入れられ、または受信された時刻を示すために、タイムスタンプを会話1301内でメッセージの近くに表示させてもよい。メッセージを入れた参加者のユーザ名は、会話内でメッセージの横に表示されてもよい。
The "Feed" view 1308 may display one or
パネルは、折り畳まれた会話パネル1320を含むことができる。折り畳まれた会話パネル1320は、開かれた会話パネル1318に隣接することができる。折り畳まれた会話パネル1320は、会話のプレビュー1321a、1321b、例えば会話の最初のメッセージ、会話のタイトル、会話の最後のメッセージ、および/または会話内の未読メッセージ数など、を示すことができる。
The panels can include a
図14~図19は、グループ(例えば、ユーザグループ)のコンテキストにおける参加者間のインタラクションの態様、およびメッセージングサービスおよびアプリケーションがグループに関連するメッセージおよび会話を分類、編成、および出力することができる様々な技術および実施形態を示す。図14~図19は単に例示的なものであり、他の適切な方法でグループを作成し、会話に加入することができることを理解すべきである。 FIGS. 14-19 illustrate aspects of interactions between participants in the context of a group (e.g., a user group) and various techniques and embodiments by which messaging services and applications can categorize, organize, and output messages and conversations related to the group. It should be understood that FIGS. 14-19 are merely exemplary and that groups can be created and conversations can be joined in other suitable ways.
図14は既存のグループまたは新たに作成されたグループを会話に招待し、新しいグループを作成するための態様を示す。1405において、既存のグループまたは新たに作成されたグループを任意の会話に加入するように招待することができる。限定ではなく、一例として、属性として、複数のメンバを含むグループを複数の会話に参加するように招待し、許可することができる。グループ属性も、同一の会話に複数のグループ参加者を有することを可能にする。追加として、会話のグループ参加者は、会話の内容をグループのすべてのメンバに一度にプッシュすることを可能にする。したがって、本メッセージングサービスは、従来のメッセージングシステムと比較して、より高い柔軟性と効率を提供する。 FIG. 14 illustrates aspects for inviting an existing or newly created group to a conversation and creating a new group. At 1405, an existing or newly created group can be invited to join any conversation. By way of example and not limitation, as an attribute, a group with multiple members can be invited and allowed to participate in multiple conversations. The group attribute also allows having multiple group participants in the same conversation. Additionally, group participants in a conversation can push the contents of the conversation to all members of the group at once. Thus, the messaging service provides greater flexibility and efficiency compared to conventional messaging systems.
任意の会話の参加者によって、グループのグループ名を検索することで、該グループを招待することができる。限定ではなく、一例として、グループを会話に招待するように示すユーザ入力を受け取ることに応じて、メッセージングサービスは、グループと会話との間の関連付けを、会話データベース230およびグループデータベース232などのデータベース260に格納する。
A group can be invited by any conversation participant by searching for the group's group name. By way of example and not limitation, in response to receiving user input indicating to invite a group to a conversation, the messaging service stores an association between the group and the conversation in a
1406において、会話に関連付けられる情報は、グループデータベース232および検索インデックスデータベース252などのデータベース260において、グループのすべてのメンバについて記録することができる。会話に関連付けられる情報は、会話内のメッセージ、会話の属性、および会話に関連付けられる任意の他の情報を含むことができる。会話に関連付けられる情報は、プッシュサービス224に送信することができる。
At 1406, information associated with the conversation can be recorded for all members of the group in a
1407において、グループが会話に参加するように招待された後、会話内のメッセージの少なくともサブセットが、グループのすべてのメンバにプッシュされる。メッセージは、プッシュサービス224によってプッシュすることができる。メッセージをプッシュすることは、メンバに、例えば、メンバの装置にメッセージを送信することを含むことができる。メッセージをプッシュすることは、メンバに関連付けられるメッセージングアプリケーションのUI内にメッセージを表示させることを含むことができる。
At 1407, after the group has been invited to join the conversation, at least a subset of the messages in the conversation are pushed to all members of the group. The messages may be pushed by
図16は、メッセージングアプリケーションのUI内のグループビュー1600の態様を示す。グループビュー1600において、ユーザが属するグループがユーザに表示される。図16には、ユーザが属する8つのグループがリストアップされている。実施形態によれば、グループはリストに表示される。グループ表示は、グループの属性と、1つ又は複数の選択可能なインターフェースエレメント(例えば「Edit」および「Delete」などの選択可能なボタン)を表示する。属性には、グループ名1601が含まれる。図16は、「Group1」、「Group2」、「Group3」等を含むグループ名を示している。グループに関連付けられる情報は、メッセージングサービス(例えば、メッセージングサービス220)に送信され、メッセージングサービス220によってデータベース260(例えば、グループデータベース232、検索インデックスデータベース252等)内で維持される。
16 illustrates aspects of a
一旦、グループが会話への参加を許可されると、グループと会話との間の関連付けがデータベース260に格納される。例えば、メッセージングサービス220は、会話のスレッド識別情報(ID)とグループのグループ識別情報(ID)とをグループデータベース232に格納する。限定ではなく、一例として、グループと会話との間の関連付けは、会話のスレッドIDおよびグループIDに基づいて識別することができる。メッセージングサービスは、グループに関連付けられる情報に基づいて検索インデックスを生成し、該検索インデックスを検索インデックスデータベース252などのデータベース260に格納することができる。グループのすべてのメンバと会話との間の関連付けは、検索インデックスに基づいて判定されてもよく、関連付けはデータベース260に格納されてもよい。グループおよびグループのメンバに関連付けられる情報は、データベース260から取り戻すことができるため、取り戻された情報に基づいて、グループ(すなわち、会話のグループ参加者)のすべてのメンバに関連付けられた表示のために、会話内のメッセージをメッセージングアプリケーションに送信することができる。
Once a group is admitted to a conversation, an association between the group and the conversation is stored in
グループが会話に参加するように(つまり、グループ参加者として)招待された後、任意の特定の個別メンバが他の参加者によって会話に招待され、または会話に直接参加しない限り(例えば、会話にメッセージを投稿しない限り)、グループの個別メンバの識別情報は、表示のために会話の参加者に関連付けられるメッセージングアプリケーションに送信されないようにしてもよい。グループの任意の特定の個別メンバが、他の参加者によって会話に招待された場合、または会話に直接参加する場合、該特定の個別メンバの識別情報を、会話参加者に関連付けられるメッセージングアプリケーションに送信して、該特定の個別メンバの識別情報を表示させる。さらに、該特定の個別メンバは、グループが会話から削除された後であっても、引き続き個別参加者として会話に参加することができる。他の参加者によって会話に招待されていない、または会話に直接参加していないグループの任意の他のメンバは、グループが会話から削除された後、または個別のメンバがグループから削除された後、会話内のそれ以上のメッセージを受信することはない。 After a group is invited to participate in a conversation (i.e., as a group participant), the identity of the group's individual members may not be sent to a messaging application associated with the conversation participants for display unless any particular individual member is invited to the conversation by other participants or directly participates in the conversation (e.g., posts a message to the conversation). If any particular individual member of a group is invited to the conversation by other participants or directly participates in the conversation, the identity of the particular individual member is sent to a messaging application associated with the conversation participants to display the identity of the particular individual member. Furthermore, the particular individual member may continue to participate in the conversation as an individual participant even after the group is removed from the conversation. Any other members of the group who are not invited to the conversation by other participants or who are not directly participating in the conversation will not receive any further messages in the conversation after the group is removed from the conversation or the individual member is removed from the group.
以下でさらに説明するように、メンバをグループに追加したり、グループから削除したりすることができる。グループの編集(例えば、メンバの追加または削除)を示す情報を受信すると、メッセージングサービス(例えば、メッセージングサービス220)は、データベース260(例えば、グループデータベース232および検索インデックスデータベース252)を更新する。メッセージングサービス220は、データベース260を検索して、どのメンバが現在のグループに含まれているかを決定し、該グループがグループ参加者として参加している会話内の任意のメッセージを、現在の該グループ内のメンバに送信する。該グループの任意の以前の個別メンバが、該個別メンバがグループから削除される前に、既に他のメンバによって該会話に招待された、又は該会話に直接参加した場合、以前の個別メンバは、個別参加者として引き続き会話に参加することができる。メッセージングサービス220は、現在個別参加者として以前の個別メンバに、会話内のメッセージを引き続き送信することができる。
As described further below, members can be added to or removed from groups. Upon receiving information indicating an edit to a group (e.g., adding or removing a member), the messaging service (e.g., messaging service 220) updates database 260 (e.g.,
グループの属性は、グループプライバシ設定1602を含むことができる。図16に示すように、グループ「Group1」はプライベートである。グループ「Group2」もプライベートである。プライバシ設定も、グループデータベース232などのデータベース260内で維持することができる。任意のプライベートグループについても、プライベートグループのメンバのみ、該プライベートグループにアクセスすることが可能である。プライベートグループとは異なり、パブリックグループはグループ内のメンバに限定されない。代わりに、パブリックグループは、会話の任意の参加者、または少なくともメッセージングサービス(例えば、メッセージングサービス220)に登録されている他のユーザのサブセットによってアクセスすることが可能である。
Attributes of a group may include
グループの属性は、人1603(例えば、グループのメンバ)を含むこともできる。図16は10人のメンバを有するグループ「Group1」を示す。「Group2」は3人のメンバを有する。グループビューにおいて、各グループのメンバは、例として、ユーザ装置(例えば、ユーザ装置242)および/またはメッセージングサービス220のデータベース260に維持することができる、メンバのプロファイル画像、アカウントアバタ、ユーザ名、および/またはハンドルによって表すことが可能である。
Attributes of a group can also include people 1603 (e.g., members of the group). FIG. 16 shows a group "Group1" with 10 members. "Group2" has 3 members. In the group view, the members of each group can be represented by the members' profile pictures, account avatars, usernames, and/or handles, which can be maintained on the user device (e.g., user device 242) and/or in
グループビューには、ユーザがそれらのグループを管理するための機能が含まれている。上述した、特に図15に示された、新しいグループを作成する特性に加えて、これらの特性は、作動1605を含むことができる。作動1605は、ユーザが属性、例えば名前、プライバシ設定、およびグループのメンバ(例えば、メンバの追加または除去)などを変更することを可能にする「edit」オプションを含む。ユーザが編集オプションを選択することに応じて、図12のウィンドウ1203のようなウィンドウが表示される。このウィンドウには、メンバを追加または削除するオプションが含まれる。作動1605は、さらに、ユーザがグループを削除することを可能にする「delete」オプションを含むことができる。
The group view includes features that allow the user to manage their groups. In addition to the features for creating new groups, as described above and particularly shown in FIG. 15, these features may include
限定ではなく、一例として、1401において、新しいグループを作成することができる。新しいグループは複数のメンバを含む。グループは、メッセージングサービス220のグループサービス251によって作成することができる。メッセージングサービス220はまた、該新しいグループのためのグループIDを作成することができる。グループは、ユーザ入力に基づいて作成することができる。ユーザ入力は、メッセージングアプリケーションのUIのグループビュー、例えば図15のグループビュー1501を介して受け取ることができる。ユーザは、フィードビュー1502からグループビュー1501に切り替えることができる。グループビューにおいて、会話の参加者は「New Group」アイコン1507を選択できる。ユーザがアイコン1507を選択することに応じて、新しいグループを作成するためのオプションを有するUI(例えば、ウィンドウ1503)が表示される。新しいグループは、UI(例えば、ウィンドウ1503)を介して作成することができる。
By way of example and not limitation, at 1401, a new group may be created. The new group includes multiple members. The group may be created by the
オプションにはプライバシ設定1504が含まれる。プライバシ設定1504は、スライド可能なアイコンや切り替え可能なアイコンなどのプライバシオプションを有するアイコン1508の選択によって選択される。一実施形態において、プライベートグループは、メッセージングプラットフォーム全体にわたって他のユーザによって検索不可能である。他の実施形態において、非プライベートグループが発見され、そのため属性などに関連付けられる様々な会話に追加される。
The options include
オプションには、グループ名1505が含まれる。入力フィールド1509にテキストの文字列を入れることで、グループ名1505を入れる。図15に示すように、入力フィールド1509には、グループ名「Patent Team」が入れられる。グループ名1505は、グループを他のグループから区別する。グループのグループ名1505で該グループを検索することができる。 Options include a group name 1505. The group name 1505 is entered by entering a string of text in input field 1509. As shown in FIG. 15, the group name "Patent Team" is entered in input field 1509. The group name 1505 distinguishes the group from other groups. A group can be searched for by its group name 1505.
オプションには、グループ内のユーザ(つまり、メンバ)1506が含まれる。図15は、5つのメンバを有するPatent Teamグループを示す。グループ内のメンバ1506を識別する情報を検索することにより、メンバ1506を招待(例えば、追加)する。限定ではなく、一例として、グループのメンバ1506を識別する情報は、任意のメンバに関連付けられるユーザ名、任意のメンバに関連付けられるエンティティ内のアカウント、任意のメンバに関連付けられる電子メールアドレス、または任意のメンバに関連付けられる電話番号を含むことができる。グループメンバの識別情報を受信すると、メッセージングサービス220は、グループデータベース232と検索インデックスデータベース252などのデータベース260にメンバの識別情報を格納することができる。
Options include users (i.e., members) 1506 in the group. FIG. 15 shows a Patent Team group with five members.
入力フィールド1510にテキスト文字列を入れることにより、メンバ1506を追加する。例えば、図15は、「Patent Team」グループに招待するために、「UserC」という名前のメンバを検索することを示している。ウィンドウには、グループへの招待対象として選択されたメンバの数1511が示されている。ウィンドウで選択されるオプションは、グループの属性及び/又は関連付けである。
Add
グループは、UI内の「Cancel」ボタン1507を選択することによりキャンセルすることができる。グループは、UI内の「Save」ボタン1508を選択することにより保存することができる。グループが保存されたことに応じて、グループの属性および関連付けをデータベースに保存することができる。
The group can be canceled by selecting the "Cancel"
図14に戻り、1402において、グループ情報(例えば、属性、関連付け)を、図2のグループデータベース232などの1つまたは複数のデータベース260に記録(例えば、保存、格納)する。グループ情報は、グループサービス251によって記録することができる。データベースは、会話データベース230、グループデータベース232、ユーザデータベース234、および/または検索インデックスデータベース252を含むことができる。
Returning to FIG. 14, at 1402, group information (e.g., attributes, associations) is recorded (e.g., saved, stored) in one or
1403において、検索情報のインデックスを格納するために、検索インデックスを構築する。検索インデックスは、グループサービス251によって構築することができる。検索インデックスは、会話データベース230、トピックデータベース236、グループデータベース232、およびユーザデータベース234などの他のデータベースと関連して動作することができる。検索インデックスは、メッセージングサービスがメッセージおよび会話に関連付けられる属性(例えば、グループ属性)を検索することを可能にする。検索インデックスにより、アクセス許可の管理が可能になる。検索インデックスに基づいて、グループメンバは特定の会話とメッセージにアクセスできる。
At 1403, a search index is constructed to store an index of search information. The search index may be constructed by the
1404において、グループに関連付けられる情報を、表示のために、会話の参加者に関連付けられるメッセージングアプリケーションに出力することができる。グループ情報を出力することは、グループの指示を参加者に、例えば、参加者の装置に送信することを含むことができる。図16に示すように、グループ情報を出力することは、メッセージングアプリケーションのUIを介してグループ情報を表示させることを含むことができる。 At 1404, information associated with the group may be output for display to a messaging application associated with a participant of the conversation. Outputting the group information may include sending an indication of the group to the participant, e.g., to a device of the participant. As shown in FIG. 16, outputting the group information may include causing the group information to be displayed via a UI of the messaging application.
図17は、既存のグループに新しいメンバを追加するための態様1700を示す。1701において、新しいメンバを既存のグループに追加する。ユーザ入力の受け取りに応じて、新しいメンバを既存のグループに追加することができる。ユーザは、UIのグループビューで「edit」アイコンのうちの1つを選択することにより、入力を入れることができる。グループの現在メンバのリストをウィンドウに表示させることができる。ユーザは、グループのメンバではないユーザの名前を検索し、新しいメンバをグループに招待するように選択することができる。
Figure 17 illustrates an
メッセージングサービスのグループサービス251は、既存のグループに新しいメンバを追加することができる。グループサービス251は、ユーザ入力の受け取りに基づいて、新しいメンバを追加することができる。グループサービス251は、新しいメンバとグループとの関連付けを1つまたは複数のデータベース260に保存することができる。例として、データベース260は、会話データベース230、グループデータベース232、ユーザデータベース234、トピックデータベース236、および/または検索インデックスデータベース252を含むことができる。
The messaging service's
1702において、関連付けられる会話、トピックタグなど、グループに関連する情報のルックアップを実行する。グループ属性には、既存のグループメンバなどが含まれる。ルックアップは、1つまたは複数のデータベース260にクエリを送信することによって実行する。新しいメンバについて属性をインポートする。属性をインポートすることは、属性をローカルに、例えばグループサービス251のメモリに格納することと、新しいメンバ属性をグループデータベース232に格納することとを含むことができる。
At 1702, perform a lookup of information related to the group, such as associated conversations, topic tags, etc. Group attributes include existing group members, etc. The lookup is performed by sending a query to one or
1703において、グループに関連付けられる会話を新しいメンバに出力する。会話は、プッシュサービス224によって出力することができる。会話を出力することは、グループに関連付けられる様々な会話に含まれるメッセージを新しいメンバに、例えば、新しいメンバの装置に送信することを含むことができる。会話を出力することは、メッセージングアプリケーションのUIを介して新しいメンバに会話を表示させることを含むことができる。
At 1703, conversations associated with the group are output to the new member. The conversations may be output by
1704において、グループのメンバを発見する。グループのメンバは、グループサービス251および/またはプッシュサービス224によって発見することができる。グループのメンバは、データベース260にクエリすることにより発見することができる。グループサービス251は、グループのメンバを決定し、メンバの指示をプッシュサービス224に送信することができる。
At 1704, members of the group are discovered. Members of the group may be discovered by the
1705において、決定されたグループメンバを、グループの決定されたメンバに通知する。プッシュサービス224によって、メンバに通知してもよい。新しいメンバが追加されたことをメンバに通知できる。メンバに通知することは、メンバに、例えば、メンバの装置に通知を送信することを含むことができる。メンバに通知することは、メッセージングアプリケーションのUIを介して、例えばグループビュー内で、メンバへグループメンバを表示させることを含むことができる。
At 1705, the determined members of the group are notified of the determined group members. The members may be notified by
いくつかの実施形態において、メッセージングサービス220および/またはメッセージングアプリケーション240は、複数のメンバを含むグループを特定するための情報を含む、会話内のメッセージを受信することができる。この情報の受信に応じて、メッセージングサービス220は、データベース260にクエリして、会話内のメッセージの少なくともサブセットを、会話内のメッセージの該少なくともサブセット表示するために、グループメンバに関連付けられるメッセージングアプリケーション240に送信することができる。一例において、メッセージングサービス220および/またはメッセージングアプリケーション240は、グループに関連付けられるデータを分析することによって、グループのメンバに関連付けられる情報を取得することができる。一例において、グループに関連付けられるデータは、グループのメンバおよび属性の情報を含む。別の例において、グループに関連付けられるデータは、グループが参加する会話の内容の少なくとも一部をさらに含むことができる。
In some embodiments, the
別の態様によれば、期限日に関連付けられるタスクが一人の参加者(割当者ユーザ)によって作成され、会話内の別の参加者(被割当者ユーザ)に割り当てられることが可能である。図18および図19は、会話内で期限日に関連付けられるタスクを割り当てるための技術を示す。メッセージングサービスは、チャットサービス222を含む。チャットサービス222は、装置またはプログラム、例えば図1のクラウドコンピューティングネットワーク100内の装置またはプログラムによって提供することができる。チャットサービス222は、メッセージングサービスのユーザが会話内でメッセージを交換し、且つ/または会話を生成することを可能にする。
According to another aspect, a task associated with a due date can be created by one participant (an assignor user) and assigned to another participant (an assignee user) in a conversation. FIGS. 18 and 19 show a technique for assigning a task associated with a due date in a conversation. The messaging service includes a
チャットサービス222がユーザからの入力を受け取ると、タスクが開始される。いくつかの実施形態において、まず、メッセージングアプリケーション(例えば、メッセージングアプリケーション240)を介して、割当者ユーザによってタスクを編集し、次に、被割当者ユーザに該タスクを割り当てるために、被割当者ユーザを会話に加入するように招待することができる。他の実施形態において、タスクを編集することおよびタスクを割り当てるために被割当者ユーザを招待することは、割当者ユーザに関連付けられるメッセージングアプリケーションの同じUI上で同時に実行することができる。チャットサービス222は、会話を介して、例えば、ユーザ装置上のメッセージングアプリケーションのUI内の会話の入力フィールドを介して、入力を受け取ることができる。
A task is initiated when the
例示のために、図19は、フィードビューにおけるメッセージングアプリケーションのUI1900を示しており、UI1900において、ユーザは入力フィールド1903に入力を入れることができる。ユーザは、会話の作成者ユーザ、または会話の他の参加者とすることができる。入力はテキスト文字列である。例えば、図19において、ユーザ「UserA」は、「User B Please give us a conclusion.」というテキストを入力している。テキストはタスクを説明することができる。例えば、ユーザAのテキストには「Please give us a conclusion,」が含まれており、そのタスクは「giving a conclusion.」である。テキストは、別のユーザ、例えば該タスクが割り当てられたユーザの指示を含むことができる。たとえば、ユーザAのテキストには、別のユーザ、ユーザBの名前が含まれる。入力において識別されるユーザは、メッセージングサービス(例えば、メッセージングサービス220)に登録され、会話に参加しているユーザとすることができる。入力において識別されたユーザは、メッセージングサービス(例えば、メッセージングサービス220)の外部のエンティティ(例えば、以下でさらに説明される会話への電子メール参加者)ではない場合がある。この例において、ユーザAは割当者ユーザであり、ユーザBは被割当者ユーザである。
For illustration, FIG. 19 shows a
入力には、メッセージに関連付けられる日付が含まれてもよい。この日付は、タスクの期限日であってもよい。この日付は、タスクに関するリマインダを送信する必要がある日付であってもよい。この日付は、ユーザ装置上のメッセージングアプリケーションのUIを介して出力されるアイコンの選択を含むことができる。アイコンは、例えば図16のアイコン1601のようなカレンダを表すことができる。
The input may include a date to be associated with the message. This date may be a due date for the task. This date may be a date by which a reminder regarding the task needs to be sent. This date may include the selection of an icon to be output via a UI of a messaging application on the user device. The icon may represent a calendar, such as
図18に戻り、1802において、入力に基づいて割当情報を生成する。チャットサービス222は、割当情報を生成することができる。割当情報は、タスクを割り当てるユーザ、タスクが割り当てられたユーザ、メッセージおよび/またはタスク、および/または期限日の間の関連付けを含むことができる。割当情報は、タスクデータベース256、会話データベース230、およびユーザデータベース234などの1つ又は複数のデータベース260に格納される。チャットサービス222は、割当情報を格納することができる。
Returning to FIG. 18, at 1802, assignment information is generated based on the input. The
1803において、割当情報に基づいて、割当者属性および/または被割当者属性を会話に追加する。チャットサービス222は、属性を追加することができる。属性を追加することには、割当者ユーザ、被割当者ユーザ、メッセージおよび/またはタスク、期限日、および/または会話の間の関連付けを格納することを含むことができる。属性は、会話データベース230、タスクデータベース256、ユーザデータベース234、およびグループデータベース232などのデータベース260に格納される。
At 1803, assignor and/or assignee attributes are added to the conversation based on the assignment information. The
実施形態によれば、タスクはステータスを有する。ステータスは、タスクの期限日及び/又はタスクがどんな完了段階にあることを示す属性に基づく。たとえば、タスクおよび/または期限日が生成された場合、ステータスを「オープン」、「未完了」、および/または「未検証」に設定できる。ステータスの説明的な属性は、選択可能なアイコンや選択可能なアイコンのリストなど、UI内の事前に記入された選択可能な入力とすることができる。説明的な属性は、例えばメッセージングアプリケーションのUIの入力フィールドに、ユーザによって入力されるテキスト文字列とすることができる。 According to an embodiment, a task has a status. The status is based on a due date for the task and/or an attribute that indicates what stage of completion the task is at. For example, when a task and/or due date is created, the status can be set to "open", "incomplete", and/or "not verified". The descriptive attribute of the status can be a pre-filled selectable input in the UI, such as a selectable icon or a list of selectable icons. The descriptive attribute can be a text string entered by the user into an input field in the UI of, for example, a messaging application.
割当者ユーザおよび/または被割当者ユーザは、ステータスを例えば「クローズ」、「完成」、および/または「検証済み」に変更できる。ステータスは、タスクが完了したか否かに基づいて変更することが可能である。たとえば、タスクが完了した場合、ステータスを「完了」に変更できる。ステータスは、タスクおよび/または期限日と関連付けてデータベース260に保存される。ステータスの変更に応じて、新しいステータスをデータベース260に保存する。メッセージングサービス220(例えば、チャットサービス222)は、ステータス、タイムスタンプ(例えば、検証された時刻、最後に更新された時刻など)、および他の情報を決定し、データベース260(例えば、タスクデータベース256)に格納することができる。ステータスの変更に応じて、通知をユーザに送信する。一実施形態によれば、ステータスは、例えばユーザ装置上のメッセージングアプリケーションのUI内の会話内で、割当者ユーザ、被割当者ユーザ、および/または会話の参加者に表示される。タスクのステータスおよび期限日を示す情報を受信すると、メッセージングアプリケーションは、タスクのステータスおよび期限日を表示することができる。
The assignor user and/or the assignee user can change the status to, for example, “closed”, “completed”, and/or “verified”. The status can be changed based on whether the task is completed. For example, if the task is completed, the status can be changed to “completed”. The status is stored in
1804において、会話のすべての参加者を発見する。チャットサービス222は、参加者を発見することができる。データベース260にクエリすることによって、会話内の参加者を決定することができる。メッセージングサービスのプッシュサービス224に参加者を送信することができる。プッシュサービス224は、メッセージングサービスの装置またはプログラムとすることができる。
At 1804, all participants of the conversation are discovered. The
1806において、タスクのステータスを、会話の決定された参加者にプッシュする。プッシュサービス224は、ステータスをプッシュすることができる。ステータスをプッシュすることは、ステータスを参加者の装置(例えば、ユーザ装置242)に送信することを含むことができる。ステータスをプッシュすることは、ユーザ装置(メッセージングアプリケーション242)上のメッセージングアプリケーション(例えば、メッセージングアプリケーション240)のUIを介して会話内でステータスを表示することを含むことができる。メッセージングサービス(例えば、メッセージングサービス220)は、タスクの期限日またはステータスへの変更を示す情報を、例えば、割当者ユーザおよび被割当者ユーザから受信すると、タスクのステータスを更新することができる。すると、メッセージングサービスは、タスクの更新ステータスを表示させるために、タスクの更新されたステータスを示す情報を、参加者に関連付けられるユーザ装置に送信することができる。
At 1806, the status of the task is pushed to the determined participants of the conversation. The
一実施形態によれば、メッセージングサービスは、リマインダスケジューラサービス253を含む。リマインダスケジューラサービス253は、メッセージングサービスの装置またはプログラムとすることができる。リマインダスケジューラサービス253は、メッセージングサービスのデータベース260にアクセスできる。リマインダスケジューラサービス253は、割り当てられたタスク、該タスクに関連付けられる会話、および該タスクに関連付けられる1つまたは複数のユーザを決定する。
According to one embodiment, the messaging service includes a
ユーザ(例えば、ユーザA)は、リマインダ日付を示す入力を入れることができる。図19に示すように、ユーザは、メッセージングアプリケーションのUI1900を介して、リマインダを送信する期限日を示す入力を入れることができる。例えば、ユーザAは、日付選択アイコン1902を選択する。日付選択アイコン1902の選択に基づいて、選択可能な日付のあるウィンドウ1901が表示される。ウィンドウ1901は、1年の日と月を示すカレンダを表すことができる。ユーザAは、ウィンドウ1901内で2020年4月28日のリマインダ日付を選択する。ユーザがリマインダ日付を入力することに基づいて、リマインダ日付はデータベース260に送信され、例えばメッセージングサービス220のリマインダスケジューラサービス253によって、タスクおよび/または期限日に関連付けられて図15に示すようなタスクデータベース256などのデータベース260に格納される。
A user (e.g., user A) can enter an input indicating a reminder date. As shown in FIG. 19, a user can enter an input indicating a due date for sending a reminder via a
リマインダスケジューラサービス253は、タスクのステータスおよび/または期限日が変更されたか否かを判定することができる。リマインダスケジューラサービス253は、データベース260にクエリすることによって、タスクに割り当てられた現在の説明的な属性および/または期限日を決定することと、期限日が過ぎたか否かを判定することにより、タスクのステータスが変更したか否かを判定することができる。ステータスが「クローズ」、「完成」、および/または「検証済み」ステータスに変更したことに基づいて、リマインダスケジューラサービス253は、リマインダを送信しない。1811において、タスクのステータスが変更しないか、「オープン」、「未完了」、または「未検証」のままであることに基づいて、タスクおよび/または期限日のリマインダを、リマインダスケジューラサービス253によって送信する。このリマインダは、割当者ユーザ、被割当者ユーザ、および会話の別の参加者に送信される。メッセージは、プッシュサービス224に送信することができる。ステータス変更の指示は、プッシュサービス224に送信される。
The
1812において、プッシュサービス224は、リマインダスケジューラサービス253からメッセージを受信する。メッセージングサービス220(例えば、プッシュサービス224)は、期限日および/またはタスクを、割当者ユーザおよび/または被割当者ユーザに通知および/またはリマインドする。メッセージングサービスはまた、期限日および/またはタスクを他の参加者に通知またはリマインドすることもできる。プッシュサービス224は、リマインダ、および/または期限日および/またはタスクに対するステータス変更を、割当者ユーザ、被割当者ユーザ、および他の参加者に通知する。いくつかの実施形態によれば、プッシュサービス224は、ユーザに関連付けられる装置にメッセージを送信することによって参加者に通知する。一態様によれば、プッシュサービス224は、例えば、期限日の1週間前、期限日の2週間前、期限日の前日、期限日の1時間前など、所定の時間周期でリマインダを送信することができる。プッシュサービス224は、参加者の装置を介して出力されるUIにリマインダを表示させることによって参加者に通知することができる。プッシュサービス224は、期限日および/またはタスクのステータス変更に基づいて、リマインダの提供を停止することができる。タスク割り当ておよびタスクリマインドの特性は、本開示に従ったメッセージングサービスが従来のメッセージングシステムよりも多い機能を提供することを可能にする。
At 1812, the
ユーザは、別のユーザによるステータス変更に応じることができる。たとえば、割当者ユーザは、被割当者ユーザがタスクを「完了」とマークしたことに応じて、タスクを「検証済み」とマークすることで、タスクの完了がユーザにより検証されたことを示す。割当者ユーザは、たとえば、タスクが満足に実行されていないことにユーザが気づいた場合や、別の作業が必要であるとユーザが判断した場合に、「完了」とマークされたタスクを再度開くことができる。実施形態によれば、ステータス変更に基づいて、UIに表示される期限日および/またはタスクの色または他のインジケータは変更する。ステータス変更に基づいて、変更の指示は、例えばプッシュサービス224によって、会話の参加者に送信される。
A user may respond to a status change made by another user. For example, an assigner user may mark a task as "verified" in response to an assignee user marking a task as "completed," thereby indicating that the completion of the task has been verified by the user. An assigner user may reopen a task marked as "completed," for example, if the user realizes that the task was not performed satisfactorily or determines that additional work is required. According to an embodiment, based on the status change, the due date and/or the color or other indicator of the task displayed in the UI may change. Based on the status change, an indication of the change may be sent to the conversation participants, for example, by
いくつかの実施形態において、メッセージングアプリケーション240は、会話内でタスクに関連付けられる情報を受信することができる。この情報には、ユーザ(例えば、被割当者)を識別するための識別子、タスクの内容、日付を示す情報が含まれる。メッセージングアプリケーション240は、タスクに関連付けられる情報をメッセージングサービス220に送信することができる。メッセージングアプリケーション240から情報を受信すると、メッセージングサービス220は、識別されたユーザ(例えば、被割当者)に該情報を送信することができる。メッセージングアプリケーション240はさらに、タスクステータスの更新を示す情報を受信し、更新されたタスクステータスを表示することができる。タスクの内容は、会話の内容の少なくとも一部を含むことができる。
In some embodiments, messaging application 240 can receive information associated with a task within a conversation. This information can include an identifier for identifying a user (e.g., an assignee), task content, and information indicating a date. Messaging application 240 can transmit the information associated with the task to
一実施形態によれば、メッセージングサービス220は、電子メール統合機能でチャットおよび電子メールの特性を融合させる。図20はメッセージングサービスのチャットおよび電子メール統合処理の一例を示す。本開示にかかるメッセージングサービスは、電子メールとメッセージングサービスの統合を実現することにより、情報交換の効率を向上させる。図示されるように、メッセージングサービス(例えば、メッセージングサービス220)は、チャットサービス222を含む。チャットサービス222は、独立のサービスであってもよく、またはメッセージングサービス220の特性として組み込まれていてもよい。チャットサービス222は、メッセージングサービス220における会話を管理する。
According to one embodiment,
2002において、チャットサービス222は、例えばユーザ装置から入力を受け取る。具体的には、チャットサービス222は、ユーザ装置上で動作するメッセージングアプリケーションを介して、例えば、メッセージングアプリケーション240のUIの入力フィールドを介して、メッセージ形式の入力を受け取る。図21は、電子メール参加者を会話2101に招待し、電子メール参加者宛てのメッセージを入れる例示的なUIの説明図を提供する。外部電子メール参加者Aを会話2101に入れるために、ユーザは電子メールアドレス等の外部アドレスの形式でメッセージを入れる。図21に示すUI2100の特定例において、ユーザは電子メールアドレスUserF@gmail.com 2105を入れた。したがって、チャットサービスは、メッセージを解析し、該メッセージをメッセージングサービスの外部のエンティティ(すなわち、電子メール参加者A)に関連付けられる電子メールアドレスとして認識する。電子メールアドレスは、電子メールサービス254にも関連付けられる。この例は、ユーザがドメイン「gmail.com」を含む電子メールアドレスを入れたことを示す。他の実施形態は、例えば、事前定義されたキャラクタによって表される、メッセージングサービスによって以前から知られている電子メールエイリアスを使用することができる。
At 2002, the
図20に戻り、2008において、チャットサービス222は、電子メールアドレスと会話との関連付けを、例えば、会話メタデータ230および電子メールユーザデータベース237に格納する。一旦電子メール参加者Aが招待され、会話へのアクセスを許可されると、メッセージングサービス(例えば、メッセージングサービス220)は、会話を識別するための識別子を生成することができる。識別子は、メッセージングサービス220の外部の電子メールサービスによって会話を識別するために使用され、電子メール参加者の電子メールアドレスに関連付けられることが可能である。別の例において、任意の電子メール参加者を会話に招待する前に、メッセージングサービス220は、外部電子メールサービスに使用される会話を識別するための識別子を生成することができる。メッセージングサービスは、電子メール参加者に関連付けられる外部電子メールサービスに識別子を送信することができる。限定ではなく、一例として、会話を識別するための識別子は、会話に対応する返送電子メールアドレスであってもよい。外部電子メールサービスは、その後、会話に関連付けられる返送電子メールアドレスに電子メールを送信することができる。会話に関連付けられる電子メールアドレスから電子メールを受信したという判定に応じて、メッセージングサービスは、該電子メールに基づいてメッセージを生成し、電子メールに基づいて生成されたメッセージを表示させるために、会話の参加者に関連付けられるメッセージングアプリケーション(例えば、メッセージングアプリケーション240)に該メッセージを送信することができる。一方、電子メールが会話に関連付けられる電子メールアドレスからのものではないと判定したことに応じて、メッセージングサービスは、電子メールを破棄し、且つ/又は、会話に対応する返送電子メールアドレスへの電子メール送信が禁止されている旨の通知を返信する。
Returning to FIG. 20, at 2008, the
図21は、メッセージングアプリケーション(例えば、メッセージングアプリケーション240)の例示的なUI2100を示す。UI2100は、会話2101を含むことができる。会話2101は、入力フィールド2102を含むことができる。ユーザ入力は、入力フィールド2102を介して受け取ることができる。電子メール参加者宛ての例示的な入力2104は、「Hi,external User F.」という内容が含まれている。例示的な入力(すなわち、会話2101内のメッセージ)2104は、電子メールアドレスであるUserF@gmail.comを含む。電子メールアドレス及び内容を入力フィールド2102に入れることができる。
21 illustrates an
2009において、チャットサービス222は、会話内の既存の参加者を発見する。既存の参加者は、メッセージングサービスのユーザおよび/または既存の外部電子メールユーザとすることができる。チャットサービス222は、会話メタデータに基づいて参加者を発見する。このために、チャットサービス222は、会話に関連付けられるユーザをユーザデータベース234にクエリし、参加者であるユーザを電子メールユーザデータベース237にクエリすることによって、参加者を発見する。電子メール参加者が会話に追加されたという指示を受信した後、後続のメッセージを会話に追加することができ、電子メールメッセージが生成され、電子メール参加者Aに関連付けられる電子メールアドレスに、以下でより全面的に説明されるように送信される。
At 2009, the
いくつかの実施形態において、メッセージングサービス220は、電子メール参加者Aを識別する情報(例えば、電子メール参加者Aに関連する電子メールアドレス)を含む、会話内のメッセージを受信すると、電子メールメッセージを生成することができる。電子メールメッセージは、電子メールサービス254に関連付けられる電子メールプロトコルに従って生成される。生成された電子メールメッセージは、受信されたメッセージの少なくともサブセット及び電子メールアドレスを含む。いくつかの実施形態において、生成された電子メールメッセージはさらに、メッセージングサービス220によって生成され、会話に対応する返送電子メールアドレスを含むことができる。別の例において、メッセージングサービス220は、複数の会話にそれぞれ対応する複数の返送電子メールアドレスを生成することができる。電子メール参加者Aの電子メール受信ボックスに配信するために、生成された電子メールメッセージをメッセージングサービス220(例えば、電子メールサービス254)によって、電子メールアドレスに関連付けられる外部電子メールサービスに送信することができる。他の実施形態において、外部電子メール参加者は、単一の後続メッセージまたは後続メッセージの少なくともサブセットを受信する。他の実施形態において、会話内のすべての後続のメッセージは、外部電子メール参加者Aに送信される。
In some embodiments, the
チャットサービス222は、新しいメッセージを会話参加者の指示と共にメッセージングアプリケーションのプッシュサービス224に送信する。2011において、プッシュサービス224は、外部電子メールアドレスを含むメッセージを既存の参加者に通知する。既存の参加者に通知することは、メッセージおよび/または電子メールアドレスの指示を会話の参加者に送信することを含むことができる。既存の参加者に通知することは、メッセージおよび/または電子メールアドレスを会話に表示させることを含むことができる。
The
プッシュサービス224は、メッセージの指示をメッセージングアプリケーションの電子メールサービス254に送信することができる。電子メールサービス254は、メッセージングサービスの一部であるサービスとしてもよい。一実施形態において、電子メールサービス254は、SMTPなどの電子メールプロトコルに従って、1つまたは複数のメッセージを電子メールの形式にフォーマットする。これにより、電子メールサービスは、生成された電子メールメッセージのヘッダフィールドに電子メール参加者Aに関連付けられる外部電子メールアドレスを追加し、生成された電子メールメッセージの本文にメッセージ内容を追加することができる。さらに、いくつかの実施形態において、電子メールサービス254は、メッセージ内容に起因する、会話を示す情報、例えば、会話に対応し且つメッセージングサービス220によって生成された返送電子メールアドレスを、電子メールメッセージに追加する。
The
具体的には、例えば電子メールサービス254を介してメッセージングサービスによって受信された電子メールメッセージに対する返信は、会話との関連付け(例えば、会話に対応する返送電子メールアドレス)を示す情報を含む。返信に関連付けられる情報を、電子メールメッセージに対する返信の少なくとも1つの内容を表示させるために、会話の参加者に関連付けられるメッセージングアプリケーションにプッシュすることができる。したがって、電子メールメッセージに追加され、且つ、電子メールメッセージに対する任意の返信にも含まれる情報(例えば、会話に対応する返送電子メールアドレス)は、電子メールメッセージに対する該返信に関連付けられる情報を会話の参加者に関連付けられるメッセージングアプリケーションにプッシュするために、対応する会話を識別するのに役立つ。 Specifically, replies to email messages received by the messaging service, e.g., via email service 254, include information indicating an association with a conversation (e.g., a return email address corresponding to the conversation). The information associated with the reply can be pushed to messaging applications associated with participants of the conversation to cause the content of at least one of the replies to the email message to be displayed. Thus, the information added to the email message and included in any replies to the email message (e.g., a return email address corresponding to the conversation) helps identify the corresponding conversation in order to push information associated with the reply to the email message to messaging applications associated with participants of the conversation.
上述したように、この関連付けの一例は、メッセージングサービス220(例えば、電子メールサービス254)が、各会話に関連付けられる対応する返送電子メールアドレスを生成することである。限定ではなく、一例として、生成された返送電子メールは、少なくとも部分的にランダムに選ばれたテキスト文字列を含むことができる。たとえば、図22に示すように、メッセージングサービスは電子メール参加者であるUserF@gmail.com2220に、返送電子メールアドレスcalendar-kZNnYBkbywE@feishugroups.com2221で電子メールを送信した。図21に示すように、返送電子メールアドレスは、外部電子メールアドレス2220に送信されるべきメッセージを作り出した特定の会話に関連付けられる。返送電子メールアドレス2221は、電子メールメッセージの送信者フィールドで電子メールヘッダに追加される。すると、メッセージングサービス(例えば、メッセージングサービス220)は、返送電子メールアドレス2221に対する返信を使用して、返送電子メールを特定の会話に関連付けることができる。
As discussed above, one example of this association is for the messaging service 220 (e.g., email service 254) to generate a corresponding return email address associated with each conversation. By way of example and not limitation, the generated return email may include at least a partially randomly chosen string of text. For example, as shown in FIG. 22, the messaging service sent an email to email participant UserF@gmail.com 2220 at the return email address calendar-kZNnYBkbywE@feishgroups.com 2221. As shown in FIG. 21, the return email address is associated with the particular conversation that generated the message to be sent to the external email address 2220. The
この方法は、返信電子メールおよびジャンク電子メールによるメッセージングサービスに対するなりすましを防止するために使用することができる。例えば、返送電子メールアドレスは、ランダム電子メールアドレス生成器のフォームで生成することができる。本例において、返送電子メールアドレス2221には「kZNnYBkbywE」が含まれているが、「kZNnYBkbywE」はランダムに選択されており、容易に予測やなりすましできるものではない。したがって、会話が不要なスパムを受信する事象を減らすのに役立つ。他の例において、電子メールヘッダは、会話を識別するために使用される特定の情報を、例えば件名または他のヘッダフィールドに含むことができる。このような識別子は、スパムの防止または制御を支援するためにメッセージングサービスによって使用されることができるランダムまたは予測困難なキャラクタシーケンスを含むことができる。上述したデータのいずれかまたは全部は、返信電子メールメッセージを後で関連付けおよび分類するために、電子メールメッセージデータベース238などのデータベースに格納することができる。
This method can be used to prevent spoofing of messaging services by return emails and junk emails. For example, the return email address can be generated in the form of a random email address generator. In this example, the
したがって、2013において、電子メールサービス254は、電子メール参加者Aに関連付けられる電子メールアドレスにフォーマットされた電子メールメッセージを送信することができる。電子メールアドレスに電子メールメッセージを送信することは、電子メールアドレスに関連付けられるドメインに電子メールメッセージを送信することを含むことができる。上述したように、電子メールアドレスに電子メールメッセージを送信することは、会話からの他の情報を電子メールアドレスに送信することを含むことができる。図22は、電子メールの参加者(例えば、UserF@gmail.com2220)によって電子メールメッセージが受信されることを示している。その後、電子メール参加者は、「Hi,there.I am happy!」というテキストを含む返信電子メール2222を作成し、返信電子メール2222を、メッセージングサービスに関連付けられ且つ特定の会話に対応する返送電子メールアドレスに送信する。 Thus, at 2013, the email service 254 can send the formatted email message to an email address associated with email participant A. Sending the email message to the email address can include sending the email message to a domain associated with the email address. As discussed above, sending the email message to the email address can include sending other information from the conversation to the email address. Figure 22 shows the email message being received by an email participant (e.g., UserF@gmail.com 2220). The email participant then composes a reply email 2222 containing the text "Hi, there. I am happy!" and sends the reply email 2222 to a return email address associated with the messaging service and corresponding to the particular conversation.
電子メールサービス254は、該電子メールアドレスから、該メッセージに対する返信を受信することができる。返信は、会話に対応する生成された返送電子メールアドレスで電子メールサービス254によって受信することができる。電子メールサービス254は、例えば返信電子メールに含まれる情報を利用して、例えばデータベース260(例えば、電子メールメッセージデータベース238)にクエリすることによって、返送電子メールアドレスを対応する会話に関連付けるとともに、電子メールメッセージに対する返信に関連付けられる会話を決定する。一実施形態において、メッセージングサービス220(例えば、電子メールサービス254)は、返信をメッセージの形式にフォーマットし、チャットサービス222を介してプッシュサービス224にメッセージを送信する。プッシュサービス224はそれから、返信に対応するメッセージを、会話内の参加者に関連付けられるメッセージングアプリケーションに送信することができる。いくつかの実施形態において、会話は、電子メール参加者Aに加えて、他の電子メール参加者(例えば、電子メール参加者B)を含むことができる。この場合、メッセージングサービス220は、さらに、電子メール参加者Aからの返信に対応する、メッセージングサービス220によってフォーマットされたメッセージに基づいて、電子メールメッセージを生成することができ、メッセージングサービス220はそれから、生成された電子メールメッセージを他の電子メール参加者(例えば、電子メール参加者B)に送信する。
The email service 254 can receive replies to the message from the email address. The replies can be received by the email service 254 at a generated return email address corresponding to the conversation. The email service 254 can use information contained in the reply email, for example, to associate the return email address with the corresponding conversation, for example by querying a database 260 (e.g., email message database 238), and determine the conversation associated with the reply to the email message. In one embodiment, the messaging service 220 (e.g., email service 254) formats the reply into a message and sends the message via the
図23は、メッセージングアプリケーション(例えば、メッセージングアプリケーション240)の例示的なUI2300を示す。UI2300は、図21のUI2100と同じであってもよいし、類似していてもよい。UI2300は、図21からの会話の継続を含む。電子メールアドレスおよび外部電子メールシステム(例えば、図22の外部電子メールサービス2200)から返信電子メール2222を受信することに基づいて、メッセージングサービス(例えば、メッセージングサービス220)は、メッセージを生成して、該メッセージを会話に追加し、そして、返信電子メール2222に対応するメッセージ2304を表示させるために、会話の参加者に関連付けられるメッセージングアプリケーションに該メッセージを送信することができる。示された例において、外部電子メールアドレスUserF@email.comはメッセージ2304とともに表示される。他のメタデータ、例えば、会話の参加者に関連付けられるメッセージングアプリケーションにメッセージが送信された時刻を表示することもできる。
23 illustrates an
いくつかの実施形態において、メッセージングアプリケーション240は、会話中にユーザによって入れられた情報を受信することができる。この情報は、電子メールアドレスと、該電子メールアドレスに送信される内容とを含むことができる。メッセージングアプリケーション240はそれから、情報をメッセージングサービス220に送信することができる。この情報を受信すると、メッセージングサービス220は、会話および内容を識別するための識別子を、メッセージングサービス220の外部の、電子メールアドレスに関連付けられる電子メールサービスに送信することができる。他の実施形態において、メッセージングサービス220は、外部電子メールサービスから電子メールを受信することができる。この場合、メッセージングサービス220は、電子メールが会話を識別するための識別子を含むという判定に基づいて、電子メールが会話に関連付けられていると判断することができる。メッセージングサービス220はそれから、電子メール内容を含むメッセージを生成し、生成されたメッセージを表示させるために、該生成されたメッセージをメッセージングアプリケーション240に送信することができる。
In some embodiments, messaging application 240 can receive information entered by a user during a conversation. This information can include an email address and content to be sent to the email address. Messaging application 240 can then send the information to
図24は、本開示にかかるメッセージングアプリケーション(例えば、メッセージングアプリケーション240)によって実行される例示的なプロセス2400を示す。一連の動作として説明されているが、当業者であれば、様々な実施形態において、説明された動作を追加、除去、並べ替え、または修正することができることを理解するはずである。
24 illustrates an
2402において、メッセージングアプリケーション240は、メッセージングサービス(例えば、メッセージングサービス220)のユーザに関連付けられる装置(例えば、ユーザ装置242)上で動作し始める。2404において、メッセージングアプリケーション240は、ユーザが関わっている会話(すなわち、メッセージスレッド)に関連付けられる情報の要求をメッセージングサービス220に送信する。いくつかの実施形態において、要求された情報は、会話に関連付けられるメタデータ、例えば、会話のそれぞれに対応するスレッド識別情報(ID)を含む。要求された情報はさらに、会話に関連付けられる属性、例えば会話に関連付けられるトピック、ユーザ、グループ、タスクなどを示す情報を含む。他の実施形態において、要求された情報はさらに、会話の要約を示すデータ、例えば、各会話のメッセージのサブセットを含むことができる。一例において、各会話のメッセージのサブセットは、会話内の最初のメッセージと最後のメッセージであってもよい。
At 2402, messaging application 240 begins operating on a device (e.g., user device 242) associated with a user of a messaging service (e.g., messaging service 220). At 2404, messaging application 240 sends a request to
2406において、メッセージングアプリケーション240は、要求された情報を受信し、要求された情報をローカルに、例えばユーザ装置242内に格納する。いくつかの実施形態において、会話のスレッドIDおよび属性を含む受信された情報は、ブラウザキャッシュなどのローカルメモリに格納されてもよい。他の実施形態において、会話のスレッドIDおよび属性をローカルデータベースに格納することができる。2408において、メッセージアプリケーション240は、会話のインジケータを表示する。会話のインジケータは、会話に関連付けられる所定のキャラクタ(例えば、ハッシュタグ#)で始まるトピックを含むことができる。会話のインジケータはさらに、会話に関連付けられる他の所定のキャラクタ(例えば、@符号)で始まるユーザまたはグループを含むことができる。会話のインジケータはさらに、会話の要約を含むことができる。
At 2406, the messaging application 240 receives the requested information and stores the requested information locally, for example, within the
図25は、メッセージングアプリケーション240のユーザインターフェース(UI)2500の一例を示す。この例において、トピック(例えば、「patent」2502)によって分類され、ユーザ(例えば、「UserA」2503)またはグループ(例えば、「Group1」2504)によって分類された会話のインジケータが、一番左の列2506に表示される。会話の要約は、一番左の列2506の隣のエリア2508に表示される。会話のタスク属性は、会話の要約とともに表示することもできる。例えば、図25に示すように、タスクのステータス2512およびタスク期限日の変更2514は、それぞれ要約2516および2518とともに表示される。図25のUI2500は例示的なものにすぎず、他の表示配置を使用してもよいことを理解すべきである。
25 illustrates an example of a user interface (UI) 2500 for a messaging application 240. In this example, indicators of conversations categorized by topic (e.g., "patent" 2502) and categorized by user (e.g., "UserA" 2503) or group (e.g., "Group1" 2504) are displayed in the
図24に戻り、メッセージングアプリケーション240は、複数の会話のうちの会話のインジケータまたは要約の選択を示すユーザ入力を受け取ることができる。2410において、ユーザ入力を受け取ると、メッセージングアプリケーション240は、選択された会話内のメッセージの要求をメッセージングサービスに送信する。要求には、選択された会話のスレッドIDが含まれる。2412において、メッセージングアプリケーション240は、選択された会話のメッセージを受信し、選択された会話のメッセージを表示させる。限定ではなく、一例として、図25に示すように、選択された会話のメッセージは、メッセージングアプリケーションのUI2500の一番右のエリア2520に表示することができる。一例において、メッセージングアプリケーション240は、要約を利用して、複数の会話の中から選択された会話内の複数のメッセージの要求を送信することができる。メッセージアプリケーション240はそれから、要求に応じて受信された、該選択された会話内の該複数のメッセージに関連付けられる内容を表示することができる。
Returning to FIG. 24, the messaging application 240 can receive user input indicating a selection of an indicator or summary of a conversation among the multiple conversations. Upon receiving the user input at 2410, the messaging application 240 sends a request for messages in the selected conversation to a messaging service. The request includes a thread ID of the selected conversation. At 2412, the messaging application 240 receives the messages of the selected conversation and causes the messages of the selected conversation to be displayed. By way of example and not limitation, as shown in FIG. 25, the messages of the selected conversation can be displayed in a
図26は、本開示にかかるメッセージングアプリケーション(例えば、メッセージングアプリケーション240)によって実行される別の例示的なプロセス2600を示す。一連の動作として説明されているが、当業者であれば、様々な実施形態において、説明された動作を追加、除去、並べ替え、または修正することができることを理解するはずである。
26 illustrates another
2602において、メッセージングアプリケーション240は、新しい会話の開始を示す入力を受け取る。例えば、ユーザは、図25に示すように、UI2500の「New Conversation」ボタン2526を選択して、新しい会話を開始することができる。いくつかの実施形態において、メッセージングアプリケーション240は、新しい会話のスレッドIDを生成することができる。他の実施形態において、メッセージングアプリケーション240から送信された新しい会話を示す情報を受信すると、メッセージングサービス220によって、新しい会話のためのスレッドIDを生成することができる。
At 2602, the messaging application 240 receives input indicating the start of a new conversation. For example, a user may select the "New Conversation"
2604において、メッセージングアプリケーション240は、ユーザから別の入力を受け取る。いくつかの実施形態において、ユーザ入力は、図27および図28に示すウィンドウ2702および2802を介して入れることができる。新しい会話の開始を示すユーザ入力に応じて、メッセージングアプリケーション240は、図27に示すように、UI2700に重ねられたウィンドウ2702をユーザ装置(例えば、ユーザ装置242)に表示させることができる。ウィンドウは、複数の選択可能なインターフェースエレメントを含む。
At 2604, messaging application 240 receives another input from the user. In some embodiments, the user input can be entered via
ウィンドウ2702は、新しい会話に関連付けられる属性に対応する代表記号(例えば、@記号2704、#記号2706、及びカレンダアイコン2708)を含む。一例において、ユーザは@記号2704を選択して、1つ又は複数の参加者(たとえば、UserA2706とGroup1 2708)を新しい会話に追加することができる。別の例において、ユーザは、#記号2706を選択して、1つまたは複数のトピック(例えば、トピック「backlog」2710)を新しい会話に追加することができる。1つまたは複数のトピックは、UI2700の一番左の列にリストアップされた任意の既存のトピックであってもよい。この例において、既存のトピック「backlog」2710が選択され、新しい会話に追加された。他の例において、カレンダアイコン2708が選択されると、図28に示すように、選択可能な日付を有するカレンダUI2806が表示される。この例において、参加者に割り当てられたタスクに、2020年7月17日の期限日を選択する。タスクを示す情報は、ウィンドウ2802の入力フィールド2808にタイピングすることができる。
他の実施形態において、メッセージングアプリケーション240は、ユーザによって入れられたメッセージを示すデータを受信することができる。このメッセージは、図25に示すように、例えばUI2500の入力エリア2522を介して、新規または既存の会話内でユーザによって入れることができる。
In other embodiments, messaging application 240 can receive data indicative of a message placed by a user. The message can be placed by a user in a new or existing conversation, for example, via
2606において、メッセージングアプリケーション240は、ユーザ入力が、会話に関連付けられる1つまたは複数の属性を示す情報を含むと判定することができる。メッセージングアプリケーション240は、入力が所定のキャラクタに関連付けられているという判定に基づいて、ユーザ入力が少なくとも1つの属性を示すと判定することができる。例えば、メッセージングアプリケーション240は、所定のキャラクタ(例えば、#、@、または任意の他の所定のキャラクタ)を識別することに基づいて、ユーザ入力が属性(例えば、トピック、ユーザ、またはグループ)を示す情報を含むと判定することができる。各所定のキャラクタ(または所定の複数のキャラクタ)は、属性、例えばトピック、ユーザ、またはグループを表すことができる。他の実施形態において、メッセージングアプリケーション240から情報を受信すると、メッセージングサービス220は、ユーザ入力が会話に関連付けられる1つまたは複数の属性を含むか否かを判定することができる。
At 2606, messaging application 240 may determine that the user input includes information indicative of one or more attributes associated with the conversation. Messaging application 240 may determine that the user input indicates at least one attribute based on determining that the input is associated with a predetermined character. For example, messaging application 240 may determine that the user input includes information indicative of an attribute (e.g., topic, user, or group) based on identifying a predetermined character (e.g., #, @, or any other predetermined character). Each predetermined character (or multiple predetermined characters) may represent an attribute, e.g., topic, user, or group. In other embodiments, upon receiving the information from messaging application 240,
一例において、#記号で始まるテキスト文字列が、会話に関連付けられるトピックとして判定される。別の例において、@記号で始まるテキスト文字列が、会話に招待されたユーザまたはグループとして判定される。別の例において、メッセージングアプリケーション240またはメッセージングサービス220は、電子メールアドレスの構造、例えばテキスト文字列(mailbox)+@+ドメインを認識して、ユーザ入力が会話に関連付けられる電子メールアドレスを含むと判定することができる。
In one example, a text string beginning with a # symbol is determined as a topic to be associated with the conversation. In another example, a text string beginning with an @ symbol is determined as a user or group invited to the conversation. In another example, the messaging application 240 or
2608において、メッセージングアプリケーション240は、会話に関連付けられる少なくとも1つの属性を示す情報をメッセージングサービス220に送信する。属性を示す情報を受信すると、メッセージングサービス220は、その属性を、会話のスレッドIDに関連付けられる対応する属性データベースに格納する。この属性は、会話に関連付けられるトピック、ユーザまたはグループ、電子メールアドレスなどとすることができる。メッセージを入れることによってユーザ入力を提供するいくつかの実施形態において、メッセージングアプリケーション240は、メッセージの内容およびメッセージに関連付けられるメタデータをメッセージングサービス220に送信することもできる。メッセージの内容は、テキスト、画像、ビデオ、または音声内容であってもよい。メタデータは、(メッセージを作成したユーザのための)ユーザID、メッセージが作成された時刻を示すタイムスタンプなどを含むことができる。メッセージの内容及びメタデータを受信すると、メッセージングサービス220は、メッセージの内容及びメタデータを会話(メッセージスレッド)データベース230に格納する。
At 2608, the messaging application 240 sends information to the
図29は、本開示にかかるメッセージングアプリケーション(例えば、メッセージングアプリケーション240)によって実行される別の例示的なプロセス2900を示す。一連の動作として説明されているが、当業者であれば、様々な実施形態において、説明された動作を追加、除去、並べ替え、または修正することができることを理解するはずである。
29 illustrates another
2902において、メッセージングアプリケーション240は、ユーザから入力を受け取る。一例において、図25に示すように、UI2500の「Operator」オプション2526を選択することによって、ユーザ入力を提供することができる。2904において、ユーザ入力に応じて、メッセージングアプリケーション240は、ユーザが関わっている会話の属性に基づいてインターフェースを生成する。2906において、メッセージングアプリケーション240はさらに、ユーザが会話の優先度の属性に基づいて会話の属性を整列することができるインターフェースを表示させる。
At 2902, messaging application 240 receives input from a user. In one example, user input can be provided by selecting "Operator"
単一の次元で、例えばメッセージのタイミングで、メッセージを編成する従来のメッセージングシステムとは異なり、本開示にかかるメッセージングサービス220および/またはメッセージングアプリケーション240は、多次元で会話を編成することができる。オプションとして、メッセージングアプリケーション240は、複数の会話に関連付けられる2次元表示を含むインターフェースを生成することができる。2次元表示における2つの次元は、複数の会話に関連付けられる第1の属性と、複数の会話に関連付けられる第2の属性とに基づく。メッセージング装置は、複数の会話に関連する属性の再編成を示す入力をユーザによって提供することができるインターフェースを表示することができる。メッセージング装置は、入力を受け取ることに応じて2次元表示を再編成することができる。
Unlike conventional messaging systems that organize messages in a single dimension, e.g., the timing of the messages, the
限定ではなく、一例として、図30は、2次元テーブル3002を含むインターフェース3000を示す。2次元テーブル3002は、縦軸3004と横軸3006とを備える。一例において、縦軸3004は、ユーザが関わっている会話に関連付けられるトピックの全部またはサブセットをリストアップすることができる。横軸3006は、ユーザとの会話を有するユーザまたはグループ(例えば、会話中にメンションされ、@記号で始まるユーザまたはグループすなわち「メンション」)の全部またはサブセットをリストアップすることができる。別の例において、縦軸は、ユーザとの会話を有するユーザまたはグループの全部または一部をリストアップすることができ、横軸は、ユーザが関わっている会話に関連付けられるトピックの全部または一部をリストアップすることができる。
30 illustrates an
ユーザは、縦軸3004にリストアップされた特定のトピックまたは横軸3006にリストアップされた特定のメンションをドラッグし、該特定のトピックまたはメンションを異なる行または異なる列にドロップすることにより、2次元テーブル3002を再編成することができる。一例において、2次元テーブル3002は、会話に関連付けられる属性の優先度に基づいて、メッセージングアプリケーション240によって再編成することができる。縦軸3004にリストアップされたトピックおよび/または横軸3006にリストアップされたメンションは、それぞれの優先度を反映するように、任意の方法で編成されて表示されてもよい。限定ではなく、一例として、最も重要な属性を2次元テーブル3002の左上隅に移動させることができる。一例において、ユーザは、ユーザにとって最も重要なトピック(例えば、トピック「bugs」)をドラッグし、トピック「bugs」を縦軸3004の上にドロップすることができる。同様に、ユーザは、ユーザにとって最も重要なメンション(例えば、メンション「Boss」)をドラッグし、メンション「Boss」を横軸3006の一番左のセルにドロップすることができる。2次元テーブル3002は、それぞれ上から下へおよび左から右へリストアップされた属性の重要度の低下を示す、グレースケールまたは色の変更を有する一番左の列3008および最上部の行3010を含むことができる。別の実施形態において、最も重要な属性を2次元テーブル3002の右下隅に移動させることができる。グレースケールまたは色の変更を有する一番左の列3008および最上部の行3010は、それぞれ上から下へおよび左から右へリストされた属性の重要度の増加を示してもよい。
A user may reorganize the two-dimensional table 3002 by dragging a particular topic listed on the
2次元テーブル3002は、テーブル3002の列および行によって定義される複数のセル(交差)を含む。2次元テーブル3002内の各セルは、対応する属性(例えば、トピックやメンション属性)に基づいて会話をフィルタリングすることができる選択可能なボタンである。複数の交差のそれぞれは、対応する属性を有する1つ又は複数の会話に関連付けられる。一例において、2次元テーブル3002のセルに未読会話数を表示することができる。例えば、セル3014に数字「2」3012が表示され、これは、対応する属性(すなわち、Topic1 3016およびUserA3018)を有する会話の中に、未読メッセージを有する2つの会話が存在することを示す。別の例において、異なるセルは、異なる色または任意の他の適切なインジケータを有することができる。セルに含まれる異なる色または他のインジケータは、対応する属性を有する会話に関連付けられるタスクの異なるステータスを示すことができる。
The two-dimensional table 3002 includes a number of cells (intersections) defined by the columns and rows of the table 3002. Each cell in the two-dimensional table 3002 is a selectable button that allows filtering of conversations based on a corresponding attribute (e.g., topic or mention attribute). Each of the multiple intersections is associated with one or more conversations having the corresponding attribute. In one example, the number of unread conversations can be displayed in the cells of the two-dimensional table 3002. For example, the number "2" 3012 is displayed in the cell 3014, indicating that there are two conversations with unread messages in the conversation with the corresponding attribute (i.e.,
いくつかの実施形態において、UI3000は、「Operator」オプション2526の有効状態と無効状態との間で切り替えることができる「Enable」ボタン3019を含むことができる。他の実施形態において、UI3000は、属性、例えば、トピック(例えば、ハッシュタグ)属性、メンション属性、およびタスクステータス属性の有効状態と無効状態との間で切り替えるためのスライド可能なボタン3018、3020、3022をさらに含むことができる。トピック属性またはメンション属性のどちらかが無効になっている場合、UI3000は2次元テーブル3002の代わりに1次元テーブルを含む。タスクステータス属性が無効である場合、2次元テーブル3002は、異なる色または他の方法でタスクのステータスを示さない。
In some embodiments, the
図29に戻り、2908において、メッセージングアプリケーション240は、別のユーザインターフェースの上にサイズを縮小された2次元表示を重ねることができる。図30に示す2次元テーブル3002は、会話に関連付けられる有用な情報および属性をユーザに提示し、ユーザが会話の属性を再編成することを可能にする。しかしながら、2次元テーブル3002は比較的大きく、スクリーンスペースを過度に占有する可能性がある。したがって、メッセージングアプリケーション240は、ユーザ入力に応じて、2次元テーブル3002のサイズを縮小されたバージョンを提供することができる。ユーザ入力は、図25に示すようにアイコン2530を選択することによって提供することができる。
Returning to FIG. 29, at 2908, the messaging application 240 can overlay a reduced-size two-dimensional display on top of another user interface. The two-dimensional table 3002 shown in FIG. 30 presents the user with useful information and attributes associated with a conversation and allows the user to reorganize the attributes of the conversation. However, the two-dimensional table 3002 can be relatively large and take up excessive screen space. Thus, the messaging application 240 can provide a reduced-size version of the two-dimensional table 3002 in response to user input. The user input can be provided by selecting an
図31は、2次元テーブル3002の縮小されたバージョン3102を示す。図31に示されるように、縮小されたテーブル3102は、別のユーザインターフェース3104上に重ねられた。2次元テーブル3002と同様に、縮小されたテーブル3102は、セル内に未読会話を示す数を含むことができる。縮小されたテーブル3102は、関連付けられるタスクの異なるステータスを示す異なるセル内で異なる色を有することもできる。縮小されたテーブル3102内の各セルも、2次元テーブル3002内のセルと同様に、対応するトピックおよびメンション属性に基づいて会話をフィルタリングすることができる選択可能なボタンである。縮小された2次元テーブルは、ユーザがUIを使用するときにテーブルを参照できるように、UI上にテーブルを重ねることを可能にする。縮小されたサイズは、画面サイズに基づいて予め決定されてもよいし、例えばテーブルを直接選択してサイズ変更することによって、またはフォームにサイズ範囲を入れることによって、ユーザによって定義されてもよい。
31 shows a reduced
図29に戻り、2910において、メッセージングアプリケーション240は、2次元表示内の交差の選択を示す情報を受信する。一例において、図30に示すように、ユーザは2次元テーブル3002内のセルを選択することができる。別の例において、図31に示すように、ユーザは縮小されたテーブル3102内のセルを選択することができる。2912において、メッセージングアプリケーション240は、2次元テーブル3002または縮小されたテーブル3102のどちらか内のセルの選択に応じて会話をフィルタリングすることができる。会話は、選択されたセルに対応する特定の属性に基づいて、メッセージングアプリケーションによってフィルタリングされる。例えば、2次元テーブル3002内のセル3036または縮小されたテーブル3102内のセル3106の選択に応じて、メッセージングアプリケーション240は、対応する属性、すなわち、トピック「bugs」およびメンション「Boss」に基づいて会話をフィルタリングする。図32はフィルタリングされた結果を示す。限定ではなく、一例として、トピック「bugs」3202とメンション「Boss」3204という属性を有する会話の要約3206、3208、3210、および3212が、UI3200に表示される。
Returning to FIG. 29, at 2910, messaging application 240 receives information indicating a selection of an intersection in a two-dimensional display. In one example, as shown in FIG. 30, a user may select a cell in two-dimensional table 3002. In another example, as shown in FIG. 31, a user may select a cell in collapsed table 3102. At 2912, messaging application 240 may filter conversations in response to the selection of a cell in either two-dimensional table 3002 or collapsed table 3102. The conversations are filtered by the messaging application based on the particular attributes corresponding to the selected cell. For example, in response to the selection of
本開示の上述した態様は、いくつかの例および実施形態に関して説明されたが、これらは本開示を例示することを意図しており、限定することを意図しているわけではない。本明細書で提示された要旨は、コンピュータプロセス、コンピュータ制御の装置またはコンピュータシステム、またはコンピュータ可読記憶媒体のような製品として実現することが可能であることを理解すべきである。 The above-described aspects of the present disclosure have been described with respect to certain examples and embodiments, which are intended to illustrate, but not to limit, the present disclosure. It should be understood that the subject matter presented herein may be embodied as a computer process, a computer-controlled apparatus or system, or as an article of manufacture, such as a computer-readable storage medium.
当業者であれば、本明細書に記載された要旨は、本明細書に説明されたもの以外の、マルチプロセッサシステム、マイクロプロセッサベースまたはプログラム可能な消費家電、ミニコンピュータ、メインフレームコンピュータ、手持ち式コンピュータ、携帯情報端末、電子リーダ、セルラー電話装置、専用ハードウェア装置、ネットアプライアンスなどを含む他のコンピュータシステム構成上で、または他のコンピュータシステム構成に関連して実装することができる。本明細書に記載された実施形態は、通信ネットワークを通じてリンクされる遠隔プロセッシング装置によってタスクを実行する分散型コンピューティング環境において実装することもできる。分散型コンピューティング環境では、プログラムモジュールは、ローカルメモリ記憶装置およびリモートメモリ記憶装置の両方内に位置することが可能である。 Those skilled in the art will appreciate that the subject matter described herein may be implemented on or in connection with other computer system configurations other than those described herein, including multiprocessor systems, microprocessor-based or programmable consumer electronics, minicomputers, mainframe computers, handheld computers, personal digital assistants, electronic readers, cellular telephone devices, special purpose hardware devices, network appliances, and the like. The embodiments described herein may also be implemented in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.
インターネットおよび/または他のネットワークを介してアクセス可能な1つまたは複数のサービスを1組の分散クライアントに提供するために、企業や公共部門機関などのエンティティによって構築されるネットワークを、プロバイダネットワークと呼ぶことができる。このようなプロバイダネットワークは、プロバイダネットワークによって提供されるインフラストラクチャおよびサービスを実装および配信するために必要な物理的および/または仮想化されたコンピュータサーバ、記憶装置、ネットワーク設備などの集合体のような様々なリソースプールをホストする、複数のデータセンターを含むことができる。いくつかの実施形態において、リソースは、仮想的または物理的なコンピューティングインスタンスまたは記憶装置インスタンスなどのインスタンスと呼ばれる単位でクライアントに提供されてもよい。例えば、仮想コンピューティングインスタンスは、規定されたコンピューティング能力(CPUのタイプおよび数、主メモリのサイズなどを示すことによって規定できる)を有する1つまたは複数のサーバと、規定されたソフトウェアスタック(例えば、ハイパーバイザ上で動作できる特定バージョンのオペレーティングシステム)とを含むことができる。 A network built by an entity, such as a business or public sector agency, to provide one or more services accessible via the Internet and/or other networks to a set of distributed clients can be referred to as a provider network. Such a provider network can include multiple data centers that host various resource pools, such as a collection of physical and/or virtualized computer servers, storage devices, network equipment, etc., necessary to implement and deliver the infrastructure and services provided by the provider network. In some embodiments, resources may be provided to clients in units called instances, such as virtual or physical computing instances or storage instances. For example, a virtual computing instance can include one or more servers having a defined computing capability (which can be specified by indicating the type and number of CPUs, the size of main memory, etc.) and a defined software stack (e.g., a particular version of an operating system that can run on a hypervisor).
汎用または専用のコンピュータサーバ、記憶装置、ネットワーク装置などを含む、複数の異なるタイプのコンピューティング装置を個別にまたは組み合わせて使用して、異なる実施形態におけるリソースおよびサービスを実現することができる。少なくともいくつかの実施形態において、メッセージングサービス220およびメッセージングアプリケーション240の機能を実装する技術を含む、本明細書で説明された技術のうちの1つまたは複数の技術の少なくとも一部を実装するサーバまたはコンピューティング装置は、1つまたは複数のデータベースおよび/またはコンピュータアクセス可能媒体を含む、またはそれらにアクセスするように構成された汎用コンピュータシステムを含むことができる。
A number of different types of computing devices, including general purpose or special purpose computer servers, storage devices, network devices, and the like, may be used individually or in combination to provide the resources and services in different embodiments. In at least some embodiments, a server or computing device implementing at least a portion of one or more of the technologies described herein, including technologies implementing the functionality of
図33は、このような汎用コンピューティング装置3300を示す。コンピューティング装置3300は、図1の環境100のような仮想環境で動作することができる。コンピューティング装置3300は、メッセージングサービスまたはメッセージングアプリケーションをホストするために使用することができる。コンピューティング装置3300は、メッセージングアプリケーションのユーザの装置と通信するように構成することができる。コンピューティング装置3300は、汎用コンピューティング装置とすることができる。コンピューティング装置3300は、ユーザのデータセンター内で動作する分散型システムのノードなどのオンプレミス装置とすることができる。コンピューティング装置3300のコンポーネントは、1つ又は複数のプロセッサまたはプロセッシングユニット3316と、システムメモリ3328と、システムメモリ3328を含む様々なシステムコンポーネントをプロセッサ3316に結合するバス3318とを含むことができるが、これらに限定されるわけではない。
Figure 33 illustrates such a general-purpose computing device 3300. The computing device 3300 can operate in a virtual environment, such as the
図33の例におけるバス3318は、メモリバスまたはメモリコントローラ、周辺バス、アクセラレーテッドグラフィックスポート、および様々なバスアーキテクチャのうちのいずれを使用するプロセッサまたはローカルバスを含む、いくつかのタイプのバス構造のうちの1つまたは複数を表す。限定ではなく、一例として、このようなアーキテクチャは、工業標準アーキテクチャ(「ISA」)バス、マイクロチャネルアーキテクチャ(「MCA」)バス、拡張ISA(「EISA」)バス、ビデオエレクトロニクス標準協会(「VESA」)ローカルバス、および周辺機器相互接続(「PCI」)バスを含む。 The bus 3318 in the example of FIG. 33 represents one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, and a processor or local bus using any of a variety of bus architectures. By way of example and not limitation, such architectures include an Industry Standard Architecture ("ISA") bus, a MicroChannel Architecture ("MCA") bus, an Enhanced ISA ("EISA") bus, a Video Electronics Standards Association ("VESA") local bus, and a Peripheral Component Interconnect ("PCI") bus.
コンピューティング装置3300は、様々なコンピュータシステム可読媒体を含むことができる。このような媒体は、コンピューティング装置3300がアクセス可能な任意の利用可能なメディアであってもよく、揮発性メディアおよび不揮発性メディア、取り外し可能なメディアおよび取り外し不可能なメディアの両方を含む。コンピューティング装置3300はシステムメモリ3328を含むことができ、システムメモリ3328は、ランダムアクセスメモリ(「RAM」)3330および/またはキャッシュメモリ3332のような揮発性メモリの形態のコンピュータシステム可読媒体を含むことができる。コンピューティング装置3300はさらに、他の取り外し可能/取り外し不可能な揮発性/不揮発性コンピュータシステム記憶媒体を含むことができる。ほんの一例として、格納システム3334は、取り外し不可能な不揮発性磁気媒体(図示せず、通常「ハードドライブ」と称される)に対する読み取りおよび書き込みのために提供することがある。図示しないが、「フロッピーディスク」などの取り外し可能な不揮発性磁気ディスクに対して読み取りおよび書き込みするための磁気ディスクドライブと、CD-ROM、DVD-ROMなどの取り外し可能な不揮発性光ディスクまたは他の光学媒体に対して読み取りおよび書き込みするための光ディスクドライブとを提供してもよい。この場合、それぞれ1つ又は複数のデータ媒体インターフェースを介してバス3318に接続することができる。以下でさらに記述および説明されるように、メモリ3328は、本発明の実施形態の機能を実行するように構成されたプログラムモジュールのうちの一セット、例えば少なくとも1つを有する、少なくとも1つのプログラム製品を含むことができる。 The computing device 3300 may include a variety of computer system readable media. Such media may be any available media accessible to the computing device 3300, including both volatile and nonvolatile, removable and non-removable media. The computing device 3300 may include a system memory 3328, which may include computer system readable media in the form of volatile memory, such as random access memory ("RAM") 3330 and/or cache memory 3332. The computing device 3300 may further include other removable/non-removable, volatile/non-volatile computer system storage media. By way of example only, the storage system 3334 may provide for reading from and writing to a non-removable, non-volatile magnetic medium (not shown, typically referred to as a "hard drive"). Although not shown, a magnetic disk drive may be provided for reading from and writing to a removable, non-volatile magnetic disk, such as a "floppy disk", and an optical disk drive may be provided for reading from and writing to a removable, non-volatile optical disk, such as a CD-ROM, DVD-ROM, or other optical medium. In this case, each may be connected to the bus 3318 via one or more data medium interfaces. As will be further described and illustrated below, the memory 3328 may include at least one program product having a set, for example at least one, of program modules configured to perform the functions of an embodiment of the present invention.
コンピューティング装置3300は、メモリ3328に記憶可能なプログラムモジュール3342のうちの一セット(少なくとも1つ)を有するプログラム/ユーティリティ3340を含むことができる。図33のコンピューティング装置3300は、オペレーティングシステム、1つまたは複数のメッセージングアプリケーション、他のメッセージングアプリケーションモジュール、およびメッセージングアプリケーションデータをさらに含むことができる。オペレーティングシステム、1つまたは複数のメッセージングアプリケーション、他のメッセージングアプリケーションモジュール、およびメッセージングアプリケーションデータ、またはそれらのいくつかの組み合わせのそれぞれは、図1のクラウドコンピューティングシステム100のようなネットワーク環境の実現を含むことができる。プログラムモジュール3342は、一般に、本明細書に記載された本発明の実施形態の機能および/または方法を実行する。
The computing device 3300 may include a program/
図33のコンピューティング装置3300は、ユーザがコンピューティング装置3300と会話することを可能にするキーボード、ポインティング装置、ディスプレイ3324など、1つまたは複数の外部装置3314と通信することもできる。コンピューティング装置3300は、コンピューティング装置3300が1つまたは複数の他のコンピューティング装置と通信することを可能にする任意の装置、例えば、ネットワークカード、モデムなどを含むこともできる。このような通信は、例えば、I/Oインターフェース3321を介して行うことができる。なお、コンピューティング装置3300は、ネットワークアダプタ3320を介して、ローカルエリアネットワーク(「LAN」)、汎用ワイドエリアネットワーク(「WAN」)、および/または公衆ネットワーク(例えば、インターネット)など、1つまたは複数のネットワークと通信することができる。図示するように、ネットワークアダプタ3320は、バス3318を介してコンピューティング装置3300の他のコンポーネントと通信する。図示されていないが、他のハードウェアおよび/またはソフトウェアコンポーネントも、コンピューティング装置3300と組み合わせて使用することができることを理解すべきである。例えば、マイクロコード、装置ドライバ、冗長プロセッシングユニット、外部ディスクドライブアレイ、RAIDシステム、テープドライブ、およびデータアーカイバル格納システムなどが挙げられるが、これらに限定されない。 The computing device 3300 of FIG. 33 may also communicate with one or more external devices 3314, such as a keyboard, pointing device, display 3324, that allow a user to interact with the computing device 3300. The computing device 3300 may also include any device that allows the computing device 3300 to communicate with one or more other computing devices, such as a network card, modem, etc. Such communication may occur, for example, via an I/O interface 3321. It should be noted that the computing device 3300 may communicate with one or more networks, such as a local area network ("LAN"), a general-purpose wide area network ("WAN"), and/or a public network (e.g., the Internet), via a network adapter 3320. As shown, the network adapter 3320 communicates with other components of the computing device 3300 via a bus 3318. It should be understood that other hardware and/or software components, not shown, may also be used in combination with the computing device 3300. Examples include, but are not limited to, microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data archival storage systems.
前節で説明されたプロセス、方法、およびアルゴリズムのそれぞれは、1つまたは複数のコンピュータまたはコンピュータプロセッサによって実行されるコードモジュールで実現されてもよく、それによって完全にまたは部分的に自動化されてもよい。コードモジュールは、ハードドライブ、ソリッドステートメモリ、光ディスクなど、任意のタイプの非一時的なコンピュータ可読媒体またはコンピュータ記憶装置に記憶することができる。プロセスおよびアルゴリズムは、特定用途向け回路において部分的にまたは全体的に実装することが可能である。開示されたプロセスおよびプロセスステップの結果は、揮発性または不揮発性記憶装置など、任意のタイプの非一時的なコンピュータ記憶装置に持続的にまたは他の方法で記憶することが可能である。 Each of the processes, methods, and algorithms described in the preceding paragraphs may be realized in code modules executed by one or more computers or computer processors, and may thereby be fully or partially automated. The code modules may be stored in any type of non-transitory computer-readable medium or computer storage device, such as a hard drive, solid-state memory, optical disk, etc. The processes and algorithms may be implemented in part or in whole in application-specific circuits. The results of the disclosed processes and process steps may be stored persistently or otherwise in any type of non-transitory computer storage device, such as volatile or non-volatile storage device.
上述した様々な特性およびプロセスは、互いに独立して使用されてもよく、または様々な方法で組み合わされてもよい。すべての可能な組み合わせおよびサブ組み合わせは、本開示の範囲内に入ることを意図している。さらに、いくつかの実施において、一部の方法またはプロセスブロックを省略してもよい。本明細書で説明される方法およびプロセスは、任意の特定の順序に限定されるものではなく、それに関連するブロックまたは状態は、適切な他の順序で実行されてもよい。例えば、説明されたブロックまたは状態は、特別に開示された順番以外の順番で実行されてもよく、あるいは、複数のブロックまたは状態は、単一のブロックまたは状態内で結合されてもよい。例示的なブロックまたは状態は、連続的に、並列に、または何らかの他の方法で実行することができる。ブロックまたは状態は、開示された例示的な実施形態に追加されてもよいし、開示された例示的な実施形態から削除されてもよい。本明細書に記載された例示的なシステムおよびコンポーネントは、説明されたものとは異なるように構成されてもよい。例えば、開示された例示的な実施形態と比較して、要素を追加したり、削除したり、または再配置したりすることができる。 The various features and processes described above may be used independently of one another or may be combined in various ways. All possible combinations and subcombinations are intended to fall within the scope of the present disclosure. Furthermore, in some implementations, some method or process blocks may be omitted. The methods and processes described herein are not limited to any particular order, and the blocks or states associated therewith may be performed in other orders as appropriate. For example, the described blocks or states may be performed in an order other than the order specifically disclosed, or multiple blocks or states may be combined within a single block or state. The example blocks or states may be performed sequentially, in parallel, or in some other manner. Blocks or states may be added to or deleted from the disclosed example embodiments. The example systems and components described herein may be configured differently than described. For example, elements may be added, deleted, or rearranged as compared to the disclosed example embodiments.
また、様々なアイテムは、使用中にメモリ内または記憶装置上に記憶されるように示されており、これらのアイテムまたはその一部は、メモリ管理およびデータ完全性の目的のために、メモリと他の記憶装置との間で移転されてもよいことも理解されるであろう。代替として、他の実施形態において、ソフトウェアモジュールおよび/またはシステムの一部または全部を別の装置上でメモリ内で実行し、コンピュータ間通信を介して図示のコンピューティングシステムと通信することができる。さらに、いくつかの実施形態において、システムおよび/またはモジュールの一部または全部は、他の方法で、例えば少なくとも部分的にファームウェアおよび/またはハードウェアで実装または提供されてもよく、ハードウェアは、1つ又は複数の特定用途向け集積回路(ASIC)、標準集積回路、コントローラ(例えば、適切な指令を実行することにより、また、マイクロコントローラおよび/または埋め込みコントローラを含む)、フィールドプログラマブルゲートアレイ、複合プログラマブル論理装置などを含むが、これらに限定されない。モジュール、システム、およびデータ構造の一部または全部は、適切なドライブによってまたは適切な接続を介して読み取るために、ハードディスク、メモリ、ネットワーク、またはポータブルメディア製品などのコンピュータ可読媒体上に(例えば、ソフトウェア指令または構造化データとして)記憶することもできる。システム、モジュール、およびデータ構造は、無線ベースの媒体および有線/ケーブルベースの媒体を含む、様々なコンピュータ可読伝送媒体上で、生成されたデータ信号として(例えば、搬送波または他のアナログまたはデジタル伝搬信号の一部として)送信することもでき、様々な形態をとる(例えば、単一または多重化アナログ信号の一部として、または複数の離散デジタルパケットまたはフレームとする)ことができる。他の実施形態において、そのようなコンピュータプログラム製品は、他の形態をとることもできる。したがって、本発明は、他のコンピュータシステム構成で実施することができる。 It will also be understood that while various items are shown as being stored in memory or on a storage device during use, these items or portions thereof may be transferred between memory and other storage devices for purposes of memory management and data integrity. Alternatively, in other embodiments, some or all of the software modules and/or systems may be executed in memory on another device and communicate with the illustrated computing system via computer-to-computer communications. Furthermore, in some embodiments, some or all of the systems and/or modules may be implemented or provided in other ways, such as at least partially in firmware and/or hardware, including, but not limited to, one or more application specific integrated circuits (ASICs), standard integrated circuits, controllers (e.g., by executing appropriate instructions, and including microcontrollers and/or embedded controllers), field programmable gate arrays, complex programmable logic devices, and the like. Some or all of the modules, systems, and data structures may also be stored (e.g., as software instructions or structured data) on a computer-readable medium, such as a hard disk, memory, network, or portable media product, for reading by an appropriate drive or via an appropriate connection. The systems, modules, and data structures may be transmitted as generated data signals (e.g., as part of a carrier wave or other analog or digital propagated signal) over a variety of computer-readable transmission media, including wireless-based media and wire/cable-based media, and may take a variety of forms (e.g., as part of a single or multiplexed analog signal, or as multiple discrete digital packets or frames). In other embodiments, such computer program products may take other forms. Thus, the invention may be practiced with other computer system configurations.
本明細書で使用される条件付き言語は、例えば、特に「可能である」、「できる」、「してもよい」、「ことができる」、「例えば」などは、特に明記しない限り、または使用されるコンテキストで他に理解されない限り、全体として、いつくかの実施形態がいくつかの特性、要素、および/またはステップを含むが、他の実施形態がいくつかの特性、要素、および/またはステップを含まないことを伝えることを意図している。したがって、このような条件付き言語は全体として、特性、要素、および/またはステップが1つまたは複数の実施形態によって任意の方法で必要とされること、または1つまたは複数の実施形態は、作成者の入力またはプロンプトがある又はない状態で、これらの特性、要素、および/またはステップが任意の特定の実施形態に含まれているか、または実行されるかを判定するためのロジックを必然的に含むことを意味するものではない。用語「備える」、「含む」、「有する」等は同義であり、包括的に、制限のない方法で使用され、追加の要素、特性、作動、動作等を除外しない。また、「または」という用語は、(排他的な意味ではなく)包含的な意味で使用されるので、「または」という用語を用いて要素リストを連結する場合、「または」という用語は、リスト内の要素のうちの1つ、一部、または全部を意味する。 Conditional language used herein, for example, particularly "can," "can," "may," "could," "for example," etc., is intended to convey that some embodiments include certain features, elements, and/or steps while other embodiments do not include certain features, elements, and/or steps, unless otherwise specified or understood in the context in which it is used. Thus, such conditional language does not imply that features, elements, and/or steps are required in any way by one or more embodiments, or that one or more embodiments necessarily include logic for determining whether those features, elements, and/or steps are included or performed in any particular embodiment, with or without author input or prompting. The terms "comprise," "include," "have," etc. are synonymous and are used in an inclusive, open-ended manner and do not exclude additional elements, features, operations, actions, etc. Additionally, the term "or" is used in an inclusive (not exclusive) sense, such that when the term "or" is used to connect a list of elements, the term "or" means one, some, or all of the elements in the list.
いくつかの例示的な実施形態を説明してきたが、これらの実施形態は例として提示されただけであって、本明細書に開示された本発明の範囲を限定することを意図していない。したがって、前述の説明のいかなる部分も、特定の特性、特徴、ステップ、モジュール、またはブロックが必須または不可欠であることを意味するものではない。実際、本明細書に説明された新規な方法およびシステムは、様々な他の形態で実現することができる。さらに、本明細書に開示された本発明の要旨から逸脱することなく、本明細書に説明された方法およびシステムの形態には、様々な省略、置換、および変更が可能である。添付の特許請求の範囲およびその均等物は、本明細書に開示されたいくつかの発明の範囲および要旨内にあるそのような形態または改変をカバーすることを意図している。 Although several exemplary embodiments have been described, these embodiments are presented by way of example only and are not intended to limit the scope of the invention disclosed herein. Thus, nothing in the foregoing description is intended to imply that any particular characteristic, feature, step, module, or block is essential or essential. Indeed, the novel methods and systems described herein may be embodied in a variety of other forms. Moreover, various omissions, substitutions, and changes may be made in the form of the methods and systems described herein without departing from the spirit of the invention disclosed herein. The appended claims and their equivalents are intended to cover such forms or modifications within the scope and spirit of any invention disclosed herein.
要約すると、本開示の実施形態は、以下の技術案を提供することができる。In summary, the embodiments of the present disclosure can provide the following technical solutions:
[技術案1][Technical proposal 1]
システムであって、1. A system comprising:
少なくとも1つのデータベースと、At least one database;
前記少なくとも1つのデータベースと通信する少なくとも1つのコンピューティング装置であって、at least one computing device in communication with the at least one database,
第1の会話内の複数のメッセージを受信することと、Receiving a plurality of messages in a first conversation;
前記第1の会話内のユーザ入力が、トピックを示す情報を含むと判定することと、determining that a user input in the first conversation includes information indicative of a topic;
前記トピックを示す前記情報と前記第1の会話との間の関連付けを、前記少なくとも1つのデータベースに格納することと、storing an association between the information indicative of the topic and the first conversation in the at least one database;
を含む動作を実行するように構成された少なくとも1つのコンピューティング装置と、At least one computing device configured to perform operations including:
を備えるシステム。A system comprising:
[技術案2][Technical proposal 2]
前記動作はThe above operation is
前記第1の会話の第1の参加者に関連付けられるメッセージングアプリケーションから前記トピックの選択を示す入力を受け取ることに応じて、前記第1の会話の少なくともサブセットを、前記複数のメッセージの前記少なくともサブセットを表示させるために、前記メッセージングアプリケーションに送信することをさらに含む、and in response to receiving an input indicating a selection of the topic from a messaging application associated with a first participant of the first conversation, transmitting at least a subset of the first conversation to the messaging application for displaying the at least a subset of the plurality of messages.
技術案1に記載のシステム。The system described in
[技術案3][Technical proposal 3]
前記動作は、The operation includes:
トピックに関連する情報を含む前記少なくとも1つのデータベースを検索することによって、前記トピックが新しいと判定することと、determining that the topic is new by searching the at least one database containing information related to the topic;
前記トピックが新しいという判定に基づいて、前記トピックを示す情報を前記少なくとも1つのデータベースに格納することと、storing information indicative of the topic in the at least one database based on a determination that the topic is new;
をさらに含む技術案1に記載のシステム。The system according to
[技術案4][Technical proposal 4]
前記動作は、The operation includes:
前記第1の会話内の第2のメッセージを解析することと、Analyzing a second message in the first conversation;
前記第2のメッセージがユーザを識別する情報を含むと判定することと、determining that the second message includes information identifying a user;
少なくとも前記第1の会話内の前記複数のメッセージにアクセスすることによって前記ユーザが前記第1の会話に参加することを許可することと、permitting the user to participate in the first conversation by accessing at least the plurality of messages in the first conversation;
をさらに含む技術案1に記載のシステム。The system according to
[技術案5][Technical proposal 5]
前記トピックを示す前記情報を1つまたは複数のメッセージングアプリケーションに送信することをさらに含み、前記1つまたは複数のメッセージングアプリケーションは、前記許可されたユーザに関連付けられる第2のメッセージングアプリケーションを含む、sending the information indicating the topic to one or more messaging applications, the one or more messaging applications including a second messaging application associated with the authorized user.
技術案4に記載のシステム。The system described in
[技術案6][Technical proposal 6]
前記少なくとも1つのデータベースは、前記第1の会話を含む複数の会話を含み、前記少なくとも1つのデータベースはさらに、前記複数の会話に関連付けられる属性としての複数のトピックと前記複数の会話の参加者に関連付けられる情報とをさらに格納する、the at least one database includes a plurality of conversations including the first conversation, the at least one database further storing a plurality of topics as attributes associated with the plurality of conversations and information associated with participants of the plurality of conversations;
技術案1に記載のシステム。The system described in
[技術案7][Technical proposal 7]
第1のメッセージがトピックを示す情報を含むと判定することは、前記第1のメッセージが所定のキャラクタを含むと判定することを含む、determining that the first message includes information indicative of a topic includes determining that the first message includes a predetermined character;
技術案1に記載のシステム。The system described in
[技術案8][Technical proposal 8]
システムであって、1. A system comprising:
少なくとも1つのデータベースと、At least one database;
前記少なくとも1つのデータベースと通信する少なくとも1つのコンピューティング装置であって、at least one computing device in communication with the at least one database,
第1の会話の第1の参加者に関連付けられるメッセージングアプリケーションから、複数のトピックの中からトピックを選択することを示す入力を受け取ることと、receiving an input from a messaging application associated with a first participant of the first conversation indicating a selection of a topic from among a plurality of topics;
前記第1の会話内の複数のメッセージの少なくともサブセットを表示させるために、前記第1の会話の少なくとも一部を前記メッセージングアプリケーションに送信することと、sending at least a portion of the first conversation to the messaging application for displaying at least a subset of messages in the first conversation;
を含む動作を実行するように構成された少なくとも1つのコンピューティング装置と、を備え、and at least one computing device configured to perform operations including:
前記トピックを示す情報と前記第1の会話との間の関連付けは、前記少なくとも1つのデータベースに格納される、an association between the information indicative of the topic and the first conversation is stored in the at least one database;
システム。system.
[技術案9][Technical proposal 9]
前記動作は、The operation includes:
前記選択されたトピックに関連付けられる別の会話内の複数のメッセージの少なくともサブセットを表示させるために、前記別の会話を、前記メッセージングアプリケーションに送信すること、sending another conversation associated with the selected topic to the messaging application for displaying at least a subset of messages in the another conversation;
をさらに含む技術案8に記載のシステム。The system according to
[技術案10][Technical proposal 10]
方法であって、1. A method comprising:
会話内の複数のメッセージを受信することと、Receiving multiple messages in a conversation;
前記会話内のユーザ入力が、トピックを示す情報を含むと判定することと、determining that a user input in the conversation includes information indicative of a topic;
前記トピックを示す情報と前記会話との間の関連付けを格納することと、storing an association between the information indicative of the topic and the conversation;
を含む方法。The method includes:
[技術案11][Technical proposal 11]
前記トピックに関連付けられる選択を示す第1のユーザからの入力を受け取ることに応じて、前記第1のユーザからの前記入力に応じて前記複数のメッセージの少なくともサブセットを表示させるために、前記複数のメッセージの前記少なくともサブセットを前記第1のユーザに関連付けられる第1のユーザ装置に送信することをさらに含む、and in response to receiving input from a first user indicating a selection associated with the topic, transmitting the at least a subset of the plurality of messages to a first user device associated with the first user for displaying the at least a subset of the plurality of messages in response to the input from the first user.
技術案10に記載の方法。The method according to
[技術案12][Technical proposal 12]
トピックに関連する情報を含むデータベースを検索することによって、前記トピックが新しいと判定することと、determining that the topic is new by searching a database containing information related to the topic;
前記トピックが新しいと判定すると、前記トピックを示す情報を前記データベースに格納することと、if the topic is determined to be new, storing information indicative of the topic in the database;
をさらに含む技術案10に記載の方法。The method according to
[技術案13][Technical proposal 13]
前記トピックを示す前記情報は、前記トピックを示す文字列の少なくとも一部を含む、the information indicating the topic includes at least a part of a character string indicating the topic;
技術案12に記載の方法。The method according to
[技術案14][Technical proposal 14]
第2のメッセージを解析することに基づいて、前記第2のメッセージが第2のユーザを識別する情報を含むと判定することと、determining, based on analyzing a second message, that the second message includes information identifying a second user;
前記第2のユーザに前記会話へのアクセスを許可することと、granting the second user access to the conversation;
をさらに含む技術案10に記載の方法。The method according to
[技術案15][Technical proposal 15]
前記トピックの指示を表示させるために、前記トピックを示す情報を、前記第2のユーザに関連付けられる第2のユーザ装置に送信することをさらに含む、transmitting information indicative of the topic to a second user device associated with the second user to cause an indication of the topic to be displayed.
技術案14に記載の方法。The method according to
[技術案16][Technical proposal 16]
前記第2のユーザから第3のメッセージを受信することと、receiving a third message from the second user;
前記第3のメッセージを前記複数のメッセージに追加することと、appending the third message to the plurality of messages;
をさらに含む技術案14に記載の方法。The method according to
[技術案17][Technical proposal 17]
前記第2のユーザが前記複数のメッセージにアクセスする前記許可を示す通知を、前記第1のユーザ装置に送信することをさらに含む、sending a notification to the first user device indicating the permission of the second user to access the plurality of messages.
技術案14に記載の方法。The method according to
[技術案18][Technical proposal 18]
前記会話と前記会話の複数の参加者との間の関連付けを格納することをさらに含むand storing an association between the conversation and a plurality of participants of the conversation.
技術案10に記載の方法。The method according to
[技術案19][Technical proposal 19]
前記会話内の第3のメッセージを受信することと、receiving a third message in the conversation;
前記会話の前記複数の参加者を識別することと、identifying the plurality of participants in the conversation;
前記第3のメッセージを表示させるために、前記第3のメッセージを、前記複数の参加者に関連付けられる複数のユーザ装置に送信することと、transmitting the third message to a plurality of user devices associated with the plurality of participants for displaying the third message;
をさらに含む技術案18に記載の方法。The method according to
[技術案20][Technical proposal 20]
文字列は、前記文字列が前記トピックを示すと判定するための識別子を含む、the character string includes an identifier for determining that the character string indicates the topic;
技術案10に記載の方法。The method according to
[技術案21][Technical proposal 21]
方法であって、1. A method comprising:
第1の会話の第1の参加者に関連付けられるメッセージングアプリケーションから、複数のトピックの中からトピックを選択することを示す入力を受け取ることと、receiving an input from a messaging application associated with a first participant of the first conversation indicating a selection of a topic from among a plurality of topics;
前記第1の会話内の複数のメッセージの少なくともサブセットを表示させるために、前記第1の会話の少なくとも一部を前記メッセージングアプリケーションに送信することと、を含み、sending at least a portion of the first conversation to the messaging application to cause display of at least a subset of messages in the first conversation;
前記トピックを示す情報と前記第1の会話との間の関連付けは、前記少なくとも1つのデータベースに格納される、an association between the information indicative of the topic and the first conversation is stored in the at least one database;
方法。Method.
[技術案22][Technical proposal 22]
前記選択されたトピックに関連付けられる別の会話内の複数のメッセージの少なくともサブセットを表示させるために、前記別の会話を、前記メッセージングアプリケーションに送信することをさらに含む、sending the other conversation associated with the selected topic to the messaging application for displaying at least a subset of messages in the other conversation.
技術案21に記載の方法。The method according to
[技術案23][Technical proposal 23]
コンピュータ可読指令が記憶されている非一時的なコンピュータ可読記憶媒体であって、前記コンピュータ可読指令は、コンピューティング装置で実行された場合、前記コンピューティング装置に少なくとも、A non-transitory computer-readable storage medium having computer-readable instructions stored thereon, the computer-readable instructions, when executed on a computing device, causing the computing device to at least:
複数のメッセージを受信することと、Receiving a plurality of messages;
前記複数のメッセージのうちの第1のメッセージを解析することに基づいて、前記第1のメッセージがトピックを示す文字列を含むと判定することと、determining, based on analyzing a first message of the plurality of messages, that the first message includes a string indicative of a topic;
前記トピックを示す前記文字列の少なくとも一部と前記複数のメッセージとの間の関連付けを格納することと、storing an association between at least a portion of the string indicating the topic and the plurality of messages;
を行わせる非一時的なコンピュータ可読記憶媒体。A non-transitory computer-readable storage medium for causing
[技術案24][Technical proposal 24]
前記コンピューティング装置で実行された場合、前記コンピューティング装置に少なくとも、When executed on the computing device, the computing device is provided with at least
前記トピックに関連付けられる選択を示す第1のユーザからの入力を受け取ることに応じて、前記第1のユーザからの前記入力に応じて前記複数のメッセージの少なくともサブセットを表示させるために、前記複数のメッセージの前記少なくともサブセットを前記第1のユーザに関連付けられる第1のユーザ装置に送信することを行わせる、in response to receiving input from a first user indicating a selection associated with the topic, transmitting at least a subset of the plurality of messages to a first user device associated with the first user for displaying at least a subset of the plurality of messages in response to the input from the first user.
コンピュータ可読指令をさらに記憶している技術案23に記載の非一時的なコンピュータ可読記憶媒体。The non-transitory computer-readable storage medium according to
[技術案25][Technical proposal 25]
前記コンピューティング装置で実行された場合、前記コンピューティング装置に少なくとも、When executed on the computing device, the computing device is provided with at least
トピックに関連する情報を含むデータベースを検索することによって、前記トピックが新しいと判定することと、determining that the topic is new by searching a database containing information related to the topic;
前記トピックが新しいと判定すると、前記トピックを示す情報を前記データベースに格納することと、を行わせる、if the topic is determined to be new, storing information indicating the topic in the database;
コンピュータ可読指令をさらに記憶している技術案23に記載の非一時的なコンピュータ可読記憶媒体。The non-transitory computer-readable storage medium according to
[技術案26][Technical proposal 26]
前記コンピューティング装置で実行された場合、前記コンピューティング装置に少なくとも、When executed on the computing device, the computing device is provided with at least
前記第2のメッセージを解析することに基づいて、前記第2のメッセージが第2のユーザを識別する情報を含むと判定することと、determining, based on analyzing the second message, that the second message includes information identifying a second user;
前記複数のメッセージにアクセスし、前記複数のメッセージに1つ又は複数の新しいメッセージを追加することを前記第2のユーザに許可することと、を行わせる、and permitting the second user to access the plurality of messages and to add one or more new messages to the plurality of messages.
コンピュータ可読指令をさらに記憶している技術案23に記載の非一時的なコンピュータ可読記憶媒体。The non-transitory computer-readable storage medium according to
[技術案27][Technical proposal 27]
前記コンピューティング装置で実行された場合、前記コンピューティング装置に少なくとも、When executed on the computing device, the computing device is provided with at least
前記トピックと、前記トピックに関連付けられる会話の複数の参加者との間の関連付けを格納することと、storing an association between the topic and a number of participants in a conversation associated with the topic;
前記トピックに関連付けられる前記会話内の第3のメッセージを受信することと、receiving a third message in the conversation associated with the topic;
前記第3のメッセージおよび前記トピックを、前記複数の参加者に関連付けられる複数のユーザ装置に送信することと、を行わせる、transmitting the third message and the topic to a plurality of user devices associated with the plurality of participants.
コンピュータ可読指令をさらに含み、further comprising computer readable instructions,
前記複数の参加者のうちの第1の参加者に関連付けられる第1のユーザ装置は、前記第1のユーザ装置が以前に前記トピックに関連付けられる任意のメッセージを受信したという判定に応じて、前記トピックを表示せずに前記第3のメッセージのみを表示するように構成されている、a first user device associated with a first participant of the plurality of participants configured to, in response to determining that the first user device has previously received any messages associated with the topic, display only the third message without displaying the topic.
技術案23に記載の非一時的なコンピュータ可読記憶媒体。A non-transitory computer-readable storage medium according to
[技術案28][Technical proposal 28]
コンピュータ可読指令が記憶されている非一時的なコンピュータ可読記憶媒体であって、前記コンピュータ可読指令は、コンピューティング装置で実行された場合、前記コンピューティング装置に少なくとも、A non-transitory computer-readable storage medium having computer-readable instructions stored thereon, the computer-readable instructions, when executed on a computing device, causing the computing device to at least:
第1の会話の第1の参加者に関連付けられるメッセージングアプリケーションから、複数のトピックの中からトピックを選択することを示す入力を受け取ることと、receiving an input from a messaging application associated with a first participant of the first conversation indicating a selection of a topic from among a plurality of topics;
前記第1の会話内の複数のメッセージの少なくともサブセットを表示させるために、前記第1の会話の少なくとも一部を前記メッセージングアプリケーションに送信することと、を行わせて、transmitting at least a portion of the first conversation to the messaging application to cause the messaging application to display at least a subset of the messages in the first conversation;
前記トピックを示す情報と前記第1の会話との間の関連付けは、前記少なくとも1つのデータベースに格納されるAn association between the information indicative of the topic and the first conversation is stored in the at least one database.
非一時的なコンピュータ可読記憶媒体。A non-transitory computer-readable storage medium.
[技術案29][Technical proposal 29]
前記コンピューティング装置で実行された場合、前記コンピューティング装置に少なくとも、When executed on the computing device, the computing device is provided with at least
前記選択されたトピックに関連付けられる別の会話内の複数のメッセージの少なくともサブセットを表示させるために、前記別の会話を、前記メッセージングアプリケーションに送信することを行わせる、sending another conversation associated with the selected topic to the messaging application to cause the messaging application to display at least a subset of messages in the another conversation;
コンピュータ可読指令をさらに記憶している技術案28に記載の非一時的なコンピュータ可読記憶媒体。The non-transitory computer-readable storage medium according to
[技術案30][Technical proposal 30]
システムであって、1. A system comprising:
少なくとも1つのデータベースと、At least one database;
前記少なくとも1つのデータベースと通信する少なくとも1つのコンピューティング装置であって、at least one computing device in communication with the at least one database,
第1の会話内の複数のメッセージを受信することと、Receiving a plurality of messages in a first conversation;
前記第1の会話内のユーザ入力が複数のユーザからなる第1のグループを識別する情報を含むと判定し、前記第1のグループに第1の会話に参加することを許可することと、determining that the user input in the first conversation includes information identifying a first group of users and allowing the first group to participate in the first conversation;
前記第1のグループと前記第1の会話との間の関連付けを前記少なくとも1つのデータベースに格納することと、storing an association between the first group and the first conversation in the at least one database;
前記第1のグループを識別する前記情報に基づいて前記少なくとも1つのデータベースから、前記第1のグループ内の前記複数のユーザを識別する情報を含む、前記第1のグループに関連付けられるデータを取り戻すことと、retrieving data associated with the first group from the at least one database based on the information identifying the first group, the data including information identifying the users in the first group;
前記第1のグループに関連付けられる前記取り戻されたデータに少なくとも部分的に基づいて、前記複数のメッセージの少なくともサブセットを表示させるために、前記第1の会話の前記少なくともサブセットを、前記第1のグループ内の前記複数のユーザに関連付けられる複数のメッセージングアプリケーションに送信することと、transmitting at least a subset of the first conversation to a plurality of messaging applications associated with the plurality of users in the first group for displaying at least a subset of the plurality of messages based at least in part on the retrieved data associated with the first group;
を含む動作を実行するように構成された少なくとも1つのコンピューティング装置と、At least one computing device configured to perform operations including:
を備えるシステム。A system comprising:
[技術案31][Technical proposal 31]
前記動作は、The operation includes:
少なくとも部分的に検索インデックスに基づいて、前記第1の会話を、前記第1のグループ内の前記複数のユーザのそれぞれに関連付けることをさらに含む、and associating the first conversation with each of the plurality of users in the first group based at least in part on a search index.
技術案30に記載のシステム。The system described in
[技術案32][Technical proposal 32]
前記動作は、The operation includes:
前記第1のグループに第1のユーザを追加するか、または前記第1のグループから前記第1のユーザを削除することを示す情報と、前記第1のユーザを識別する情報とを受信することに応じて、前記第1のグループに関連付けられる前記データを更新することをさらに含む、updating the data associated with the first group in response to receiving information indicating adding or removing a first user from the first group and information identifying the first user.
技術案31に記載のシステム。The system described in
[技術案33][Technical proposal 33]
前記動作は、The operation includes:
第2の会話で第2のメッセージを受信することと、前記第2のメッセージが前記第1のグループを識別する情報を含むと判定することに応じて、前記第1のグループに前記第2の会話に参加することを許可することと、receiving a second message in a second conversation and, in response to determining that the second message includes information identifying the first group, allowing the first group to participate in the second conversation;
前記第1のグループと前記第2の会話との間の関連付けを前記少なくとも1つのデータベースに格納することと、storing an association between the first group and the second conversation in the at least one database;
をさらに含む技術案30に記載のシステム。The system according to
[技術案34][Technical proposal 34]
前記動作は、The operation includes:
第2のユーザを前記第1のグループに追加することを示す情報と、前記第2のユーザを識別する情報とを受信することと、receiving information indicating adding a second user to the first group and information identifying the second user;
前記第1のグループに関連付けられるデータを更新することと、updating data associated with the first group;
をさらに含む技術案33に記載のシステム。The system according to technical proposal 33, further comprising:
[技術案35][Technical proposal 35]
前記動作は、The operation includes:
前記少なくとも1つのデータベースを検索することによって、前記第1の会話内の前記複数のメッセージおよび前記第2の会話内の第2の複数のメッセージを識別することと、identifying the plurality of messages in the first conversation and a second plurality of messages in the second conversation by searching the at least one database;
前記第1の会話内の前記複数のメッセージおよび前記第2の会話内の前記第2の複数のメッセージを、前記第2のユーザに関連付けられるメッセージングアプリケーションに送信することと、sending the plurality of messages in the first conversation and the second plurality of messages in the second conversation to a messaging application associated with the second user;
をさらに含む技術案34に記載のシステム。The system according to
[技術案36][Technical proposal 36]
前記動作は、The operation includes:
前記第2のユーザが前記第1のグループに追加されたことを示す通知を、前記第1のグループ内の前記複数のユーザに関連付けられる前記複数のメッセージングアプリケーションに送信すること、sending a notification to the plurality of messaging applications associated with the plurality of users in the first group indicating that the second user has been added to the first group;
をさらに含む技術案34に記載のシステム。The system according to
[技術案37][Technical proposal 37]
前記第1のグループ内の前記複数のユーザを識別する前記情報は、登録ユーザのユーザ名と、前記複数のユーザのうちの1つに関連付けられるエンティティ内のアカウントと、前記複数のユーザのうちの1つに関連付けられる前記複数のユーザのうちの1つに関連付けられる電子メールアドレスと、のうちの少なくとも1つを含む、The information identifying the plurality of users in the first group includes at least one of: a username of a registered user; an account within an entity associated with one of the plurality of users; and an email address associated with one of the plurality of users associated with one of the plurality of users.
技術案30に記載のシステム。The system described in
[技術案38][Technical proposal 38]
前記第1のグループに関連付けられる前記データはさらに、前記第1のグループがプライベートグループであることを示す情報を含み、前記プライベートグループは、前記プライベートグループ内の複数のユーザのみにアクセス可能である、the data associated with the first group further includes information indicating that the first group is a private group, the private group being accessible only to a plurality of users within the private group.
技術案30に記載のシステム。The system described in
[技術案39][Technical proposal 39]
方法であって、1. A method comprising:
第1の会話内の複数のメッセージを受信することと、Receiving a plurality of messages in a first conversation;
前記第1の会話内の第1のメッセージが複数のユーザからなる第1のグループを識別する情報を含むと判定し、前記第1のグループに第1の会話に参加することを許可することと、determining that a first message in the first conversation includes information identifying a first group of users and allowing the first group to participate in the first conversation;
前記第1のグループと前記第1の会話との間の関連付けを前記少なくとも1つのデータベースに格納することと、storing an association between the first group and the first conversation in the at least one database;
前記第1のグループを識別する前記情報に基づいて前記少なくとも1つのデータベースから、前記第1のグループ内の前記複数のユーザを識別する情報を含む、前記第1のグループに関連付けられるデータを取り戻すことと、retrieving data associated with the first group from the at least one database based on the information identifying the first group, the data including information identifying the users in the first group;
前記第1のグループに関連付けられる取り戻されたデータに少なくとも部分的に基づいて、前記複数のメッセージの少なくともサブセットを表示させるために、前記第1の会話の前記少なくともサブセットを、前記第1のグループ内の前記複数のユーザに関連付けられる複数のメッセージングアプリケーションに送信することと、transmitting at least a subset of the first conversation to a plurality of messaging applications associated with the plurality of users in the first group for displaying at least a subset of the plurality of messages based at least in part on the retrieved data associated with the first group;
を含む方法。The method includes:
[技術案40][Technical proposal 40]
少なくとも部分的に検索インデックスに基づいて、前記第1の会話を、前記第1のグループ内の前記複数のユーザのそれぞれに関連付けることをさらに含む、and associating the first conversation with each of the plurality of users in the first group based at least in part on a search index.
技術案39に記載の方法。The method according to
[技術案41][Technical proposal 41]
前記第1のグループに第1のユーザを追加するか、または前記第1のグループから前記第1のユーザを削除することを示す情報と、前記第1のユーザを識別する情報とを受信することに応じて、前記第1のグループに関連付けられる前記データ及び前記検索インデックスを更新することをさらに含むand updating the data associated with the first group and the search index in response to receiving information indicating adding or removing a first user from the first group and information identifying the first user.
技術案40に記載の方法。The method according to technical proposal 40.
[技術案42][Technical proposal 42]
第2の会話で第2のメッセージを受信することと、前記第2のメッセージが前記第1のグループを識別する情報を含むと判定することに応じて、前記第1のグループに前記第2の会話に参加することを許可することと、receiving a second message in a second conversation and, in response to determining that the second message includes information identifying the first group, allowing the first group to participate in the second conversation;
前記第1のグループと前記第2の会話との間の関連付けを前記少なくとも1つのデータベースに格納することと、storing an association between the first group and the second conversation in the at least one database;
をさらに含む技術案39に記載の方法。The method according to
[技術案43][Technical proposal 43]
前記第1のグループに第2のユーザを追加するか、または前記第1のグループから前記第2のユーザを削除することを示す情報と、前記第2のユーザを識別する情報とを受信することと、receiving information indicating adding or removing a second user to the first group and information identifying the second user;
前記第1のグループに関連付けられるデータを更新することと、updating data associated with the first group;
をさらに含む技術案39に記載の方法。The method according to
[技術案44][Technical proposal 44]
前記少なくとも1つのデータベースを検索することによって、前記第1の会話内の前記複数のメッセージおよび前記第2の会話内の第2の複数のメッセージを識別することと、identifying the plurality of messages in the first conversation and a second plurality of messages in the second conversation by searching the at least one database;
前記第1の会話内の前記複数のメッセージおよび前記第2の会話内の前記第2の複数のメッセージを、前記第2のユーザに関連付けられるメッセージングアプリケーションに送信することと、sending the plurality of messages in the first conversation and the second plurality of messages in the second conversation to a messaging application associated with the second user;
をさらに含む技術案43に記載の方法。The method according to technical proposal 43, further comprising:
[技術案45][Technical proposal 45]
既に前記第1のグループから削除された第3のユーザが前記第1のグループから削除される前に、前記第3のユーザが前記第1の会話に能動的に参加したか、別のユーザによって前記第1の会話に招待されたという判定に基づいて、前記第3のユーザにいくらかの新しいメッセージを送信すると決定することをさらに含む、determining to send a number of new messages to a third user who has already been removed from the first group based on a determination that the third user actively participated in the first conversation or was invited to the first conversation by another user before the third user was removed from the first group.
技術案39に記載の方法。The method according to
[技術案46][Technical proposal 46]
コンピュータ可読指令が記憶されている非一時的なコンピュータ可読記憶媒体であって、前記コンピュータ可読指令は、コンピューティング装置で実行された場合、前記コンピューティング装置に少なくとも、A non-transitory computer-readable storage medium having computer-readable instructions stored thereon, the computer-readable instructions, when executed on a computing device, causing the computing device to at least:
第1の会話内の複数のメッセージを受信することと、Receiving a plurality of messages in a first conversation;
前記第1の会話内の第1のメッセージが複数のユーザからなる第1のグループを識別する情報を含むと判定し、前記第1のグループに第1の会話に参加することを許可することと、determining that a first message in the first conversation includes information identifying a first group of users and allowing the first group to participate in the first conversation;
前記第1のグループと前記第1の会話との間の関連付けを前記少なくとも1つのデータベースに格納することと、storing an association between the first group and the first conversation in the at least one database;
前記第1のグループを識別する前記情報に基づいて前記少なくとも1つのデータベースから、前記第1のグループ内の前記複数のユーザを識別する情報を含む、前記第1のグループに関連付けられるデータを取り戻すことと、retrieving data associated with the first group from the at least one database based on the information identifying the first group, the data including information identifying the users in the first group;
前記第1のグループに関連付けられる前記取り戻されたデータに少なくとも部分的に基づいて、前記複数のメッセージの少なくともサブセットを表示させるために、前記第1の会話の前記少なくともサブセットを、前記第1のグループ内の前記複数のユーザに関連付けられる複数のメッセージングアプリケーションに送信することと、transmitting at least a subset of the first conversation to a plurality of messaging applications associated with the plurality of users in the first group for displaying at least a subset of the plurality of messages based at least in part on the retrieved data associated with the first group;
を行わせる非一時的なコンピュータ可読記憶媒体。A non-transitory computer-readable storage medium for causing
[技術案47][Technical proposal 47]
前記コンピューティング装置で実行された場合、前記コンピューティング装置に少なくとも、When executed on the computing device, the computing device is provided with at least
前記第1のグループ内の前記複数のユーザを識別する前記情報に基づいて検索インデックスを生成することと、generating a search index based on the information identifying the users in the first group;
少なくとも部分的に前記検索インデックスに基づいて、前記第1の会話を、前記第1のグループ内の前記複数のユーザのそれぞれに関連付けることと、を行わせるand associating the first conversation with each of the plurality of users in the first group based at least in part on the search index.
コンピュータ可読指令をさらに記憶している技術案46に記載の非一時的なコンピュータ可読記憶媒体。The non-transitory computer-readable storage medium according to technical proposal 46, further storing computer-readable instructions.
[技術案48][Technical proposal 48]
前記コンピューティング装置で実行された場合、前記コンピューティング装置に少なくとも、When executed on the computing device, the computing device is provided with at least
第2の会話で第2のメッセージを受信することと、前記第2のメッセージが前記第1のグループを識別する情報を含むと判定することに応じて、前記第1のグループに前記第2の会話に参加することを許可することと、receiving a second message in a second conversation and, in response to determining that the second message includes information identifying the first group, allowing the first group to participate in the second conversation;
前記第1のグループと前記第2の会話との間の関連付けを前記少なくとも1つのデータベースに格納することと、を行わせる、storing an association between the first group and the second conversation in the at least one database.
コンピュータ可読指令をさらに記憶している技術案46に記載の非一時的なコンピュータ可読記憶媒体。The non-transitory computer-readable storage medium according to technical proposal 46, further storing computer-readable instructions.
[技術案49][Technical proposal 49]
前記コンピューティング装置で実行された場合、前記コンピューティング装置に少なくとも、When executed on the computing device, the computing device is provided with at least
第1のユーザを前記第1のグループに追加することを示す情報と、前記第1のユーザを識別する情報とを受信することと、receiving information indicating adding a first user to the first group and information identifying the first user;
前記少なくとも1つのデータベースを検索することによって、前記第1の会話内の前記複数のメッセージおよび前記第2の会話内の第2の複数のメッセージを識別することと、identifying the plurality of messages in the first conversation and a second plurality of messages in the second conversation by searching the at least one database;
前記第1の会話内の前記複数のメッセージおよび前記第2の会話内の前記第2の複数のメッセージを、前記第1のユーザに関連付けられるメッセージングアプリケーションに送信することと、を行わせる、sending the plurality of messages in the first conversation and the second plurality of messages in the second conversation to a messaging application associated with the first user.
コンピュータ可読指令をさらに記憶している技術案48に記載の非一時的なコンピュータ可読記憶媒体。The non-transitory computer-readable storage medium according to technical proposal 48, further storing computer-readable instructions.
[技術案50][Technical proposal 50]
システムであって、1. A system comprising:
少なくとも1つのデータベースと、At least one database;
前記少なくとも1つのデータベースと通信する少なくとも1つのコンピューティング装置であって、at least one computing device in communication with the at least one database,
前記会話内の、第1のユーザに関連付けられる第1のメッセージングアプリケーションから送信された第1のメッセージを含む複数のメッセージを受信することと、receiving a plurality of messages in the conversation, including a first message sent from a first messaging application associated with a first user;
前記第1のメッセージが第2のユーザを識別する情報を含むと判定することと、determining that the first message includes information identifying a second user;
前記第1のメッセージに関連付けられる日付を示す情報を受信することと、receiving information indicative of a date associated with the first message;
少なくとも前記第1のメッセージと、前記第2のユーザと、前記日付との間の関連付けを、前記少なくとも1つのデータベースに格納することと、storing an association between at least the first message, the second user, and the date in the at least one database;
を含む動作を実行するように構成された少なくとも1つのコンピューティング装置と、At least one computing device configured to perform operations including:
を備えるシステム。A system comprising:
[技術案51][Technical proposal 51]
前記動作は、The operation includes:
少なくとも部分的に前記第1のメッセージに関連付けられる前記日付に基づいて、前記日付が前記少なくとも1つのデータベースにおいて依然として有効であることを示すリマインダを、前記第2のユーザに関連付けられる第2のメッセージングアプリケーションに送信すること、sending a reminder to a second messaging application associated with the second user indicating that the date is still valid in the at least one database based at least in part on the date associated with the first message;
をさらに含む技術案50に記載のシステム。The system according to technical proposal 50, further comprising:
[技術案52][Technical proposal 52]
前記第1のメッセージは、前記第1のユーザによって前記第2のユーザに割り当てられたタスクを示す、the first message indicating a task assigned by the first user to the second user;
技術案50に記載のシステム。The system described in technical proposal 50.
[技術案53][Technical proposal 53]
前記第1のメッセージに関連付けられる前記日付は、前記タスクの期限日を含む、the date associated with the first message includes a deadline date for the task;
技術案52に記載のシステム。The system described in technical proposal 52.
[技術案54][Technical proposal 54]
前記動作は、The operation includes:
少なくとも部分的に前記タスクの期限日に基づいて前記タスクのステータスを決定することと、determining a status of the task based at least in part on a deadline date of the task;
前記タスクのステータスおよび期限日を表示させるために、前記会話の複数の参加者に関連付けられる複数のメッセージングアプリケーションに、前記タスクのステータスと期限日を示す情報を送信することと、sending information indicative of a status and a due date of the task to a plurality of messaging applications associated with a plurality of participants of the conversation to cause the status and due date of the task to be displayed;
をさらに含む技術案53に記載のシステム。The system described in technical proposal 53 further includes:
[技術案55][Technical proposal 55]
前記動作は、The operation includes:
前記第1のメッセージングアプリケーションまたは前記第2のメッセージングアプリケーションから、前記タスクの期限日またはステータスの変更を示す情報を受信することと、receiving information from the first messaging application or the second messaging application indicating a change in a due date or status of the task;
前記タスクの期限日またはステータスの変更を示す前記情報に基づいて、前記タスクのステータスを更新することと、updating a status of the task based on the information indicating a change in due date or status of the task;
をさらに含む技術案54に記載のシステム。The system described in technical proposal 54 further includes:
[技術案56][Technical proposal 56]
前記動作は、The operation includes:
前記タスクの更新されたステータスを表示させるために、前記タスクの更新されたステータスを示す情報を前記複数のメッセージングアプリケーションに送信すること、sending information indicating an updated status of the task to the plurality of messaging applications to cause the plurality of messaging applications to display the updated status of the task;
をさらに含む技術案55に記載のシステム。The system described in technical proposal 55 further includes:
[技術案57][Technical proposal 57]
前記動作は、The operation includes:
前記タスクのステータス、前記タスクの期限日、またはリマインダ日付を示す情報の受信のうちの少なくとも1つに基づいて、少なくとも前記第2のメッセージングアプリケーションに前記リマインダを送信すること、sending the reminder to at least the second messaging application based on at least one of receiving information indicative of a status of the task, a due date of the task, or a reminder date;
をさらに含む技術案56に記載のシステム。The system described in technical proposal 56 further includes:
[技術案58][Technical proposal 58]
前記動作は、The operation includes:
前記第1のメッセージおよび前記第1のメッセージに関連付けられる日付を表示させるために、前記第1のメッセージおよび前記第1のメッセージに関連付けられる日付を示す情報を、前記会話の複数の参加者に関連付けられる複数のメッセージングアプリケーションに送信すること、sending information indicative of the first message and a date associated with the first message to a plurality of messaging applications associated with a plurality of participants of the conversation to cause the plurality of messaging applications to display the first message and a date associated with the first message;
をさらに含む技術案50に記載のシステム。The system according to technical proposal 50, further comprising:
[技術案59][Technical proposal 59]
方法であって、1. A method comprising:
メッセージングサービスによって維持される会話内の、第1のユーザに関連付けられる第1のメッセージングアプリケーションから送信された第1のメッセージを含む複数のメッセージを受信することと、receiving a plurality of messages in a conversation maintained by the messaging service, the plurality of messages including a first message sent from a first messaging application associated with the first user;
前記第1のメッセージが第2のユーザを識別する情報を含むと判定することと、determining that the first message includes information identifying a second user;
前記第1のメッセージに関連付けられる日付を示す情報を受信することと、receiving information indicative of a date associated with the first message;
少なくとも前記第1のメッセージと、前記第2のユーザと、前記日付との間の関連付けを、少なくとも1つのデータベースに格納することと、storing an association between at least the first message, the second user, and the date in at least one database;
を含む方法。The method includes:
[技術案60][Technical proposal 60]
前記日付が前記少なくとも1つのデータベースにおいて依然として有効であることを示す情報を、前記第2のユーザに関連付けられる第2のメッセージングアプリケーションに送信することをさらに含む、sending information to a second messaging application associated with the second user indicating that the date is still valid in the at least one database.
技術案59に記載の方法。The method described in technical proposal 59.
[技術案61][Technical proposal 61]
前記第1のメッセージは、前記第1のユーザによって前記第2のユーザに割り当てられたタスクを示す、the first message indicating a task assigned by the first user to the second user;
技術案59に記載の方法。The method described in technical proposal 59.
[技術案62][Technical proposal 62]
前記第1のメッセージに関連付けられる前記日付は、前記タスクの期限日を含む、the date associated with the first message includes a deadline date for the task;
技術案59に記載の方法。The method described in technical proposal 59.
[技術案63][Technical proposal 63]
少なくとも部分的に前記タスクの期限日に基づいて前記タスクのステータスを決定することと、determining a status of the task based at least in part on a deadline date of the task;
前記タスクのステータスおよび期限日を表示させるために、前記会話内の複数の参加者に関連付けられる複数のメッセージングアプリケーションに、前記タスクのステータスと期限日を示す情報を送信することと、sending information indicative of a status and a due date of the task to a plurality of messaging applications associated with a plurality of participants in the conversation to cause the status and due date of the task to be displayed;
をさらに含む技術案62に記載の方法。The method according to technical proposal 62, further comprising:
[技術案64][Technical proposal 64]
前記タスクのステータス、前記タスクの期限日、またはリマインダ日付を示す情報の受信のうちの少なくとも1つに基づいて、前記第1のメッセージングアプリケーションおよび前記第2のメッセージングアプリケーションにリマインダを送信することをさらに含む、and sending a reminder to the first messaging application and the second messaging application based on at least one of receiving information indicating a status of the task, a due date of the task, or a reminder date.
技術案53に記載の方法。The method according to technical proposal 53.
[技術案65][Technical proposal 65]
前記第1のメッセージングアプリケーションまたは前記第2のメッセージングアプリケーションから、前記タスクの期限日またはステータスの変更を示す情報を受信することと、receiving information from the first messaging application or the second messaging application indicating a change in a due date or status of the task;
前記タスクの期限日またはステータスの変更を示す前記情報に基づいて、前記タスクのステータスを更新することと、updating a status of the task based on the information indicating a change in due date or status of the task;
前記タスクの更新されたステータスを表示させるために、前記タスクの更新されたステータスを示す情報を前記複数のメッセージングアプリケーションに送信することをさらに含む、sending information indicating an updated status of the task to the plurality of messaging applications to cause the plurality of messaging applications to display the updated status of the task.
技術案63に記載の方法。The method according to technical proposal 63.
[技術案66][Technical proposal 66]
コンピュータ可読指令が記憶されている非一時的なコンピュータ可読記憶媒体であって、前記コンピュータ可読指令は、コンピューティング装置で実行された場合、前記コンピューティング装置に少なくとも、A non-transitory computer-readable storage medium having computer-readable instructions stored thereon, the computer-readable instructions, when executed on a computing device, causing the computing device to at least:
メッセージングサービスによって維持される会話内の、第1のユーザに関連付けられる第1のメッセージングアプリケーションから送信された第1のメッセージを含む複数のメッセージを受信することと、receiving a plurality of messages in a conversation maintained by the messaging service, the plurality of messages including a first message sent from a first messaging application associated with the first user;
前記第1のメッセージが第2のユーザを識別する情報を含むと判定することと、determining that the first message includes information identifying a second user;
前記第1のメッセージに関連付けられる日付を示す情報を受信することと、receiving information indicative of a date associated with the first message;
少なくとも前記第1のメッセージと、前記第2のユーザと、前記日付との間の関連付けを、少なくとも1つのデータベースに格納することと、storing an association between at least the first message, the second user, and the date in at least one database;
を行わせる非一時的なコンピュータ可読記憶媒体。A non-transitory computer-readable storage medium for causing
[技術案67][Technical proposal 67]
前記コンピューティング装置で実行された場合、前記コンピューティング装置に少なくとも、When executed on the computing device, the computing device is provided with at least
少なくとも部分的に前記第1のメッセージに関連付けられる前記日付に基づいて、前記日付が前記少なくとも1つのデータベースにおいて依然として有効であることを示すリマインダを、前記第2のユーザに関連付けられる第2のメッセージングアプリケーションに送信することを行わせる、sending a reminder to a second messaging application associated with the second user indicating that the date is still valid in the at least one database based at least in part on the date associated with the first message.
コンピュータ可読指令をさらに記憶している技術案66に記載の非一時的なコンピュータ可読記憶媒体。The non-transitory computer-readable storage medium according to technical proposal 66, further storing computer-readable instructions.
[技術案68][Technical proposal 68]
前記第1のメッセージは、前記第1のユーザによって前記第2のユーザに割り当てられたタスクを示し、前記第1のメッセージに関連付けられる前記日付は、前記タスクの期限日を含む、the first message indicates a task assigned by the first user to the second user, and the date associated with the first message includes a deadline for the task.
技術案66に記載の非一時的なコンピュータ可読記憶媒体。A non-transitory computer-readable storage medium according to technical proposal 66.
[技術案69][Technical proposal 69]
前記コンピューティング装置で実行された場合、前記コンピューティング装置に少なくとも、When executed on the computing device, the computing device is provided with at least
少なくとも部分的に前記タスクの期限日に基づいて前記タスクのステータスを決定することと、determining a status of the task based at least in part on a deadline date of the task;
前記タスクのステータスおよび期限日を表示させるために、前記会話の複数の参加者に関連付けられる複数のメッセージングアプリケーションに、前記タスクのステータスと期限日を示す情報を送信することと、を行わせる、sending information indicative of the status and due date of the task to a plurality of messaging applications associated with a plurality of participants of the conversation to cause the messaging applications to display the status and due date of the task;
コンピュータ可読指令をさらに記憶している技術案66に記載の非一時的なコンピュータ可読記憶媒体。The non-transitory computer-readable storage medium according to technical proposal 66, further storing computer-readable instructions.
[技術案70][Technical proposal 70]
システムであって、1. A system comprising:
少なくとも1つのデータベースと、At least one database;
前記少なくとも1つのデータベースと通信する少なくとも1つのコンピューティング装置であって、at least one computing device in communication with the at least one database,
会話で第1の入力を受け取ることと、Receiving a first input in a conversation;
前記第1の入力を解析することに基づいて、前記第1の入力が第1の電子メールアドレスを示す情報を含むと判定することと、determining, based on analyzing the first input, that the first input includes information indicative of a first email address;
前記会話を識別するための第1の識別子を生成することと、generating a first identifier for identifying the conversation;
前記第1の識別子を、前記第1の電子メールアドレスに関連付けられる第1の外部電子メールサービスに送信することと、sending the first identifier to a first external email service associated with the first email address;
を含む動作を実行するように構成された少なくとも1つのコンピューティング装置と、At least one computing device configured to perform operations including:
を備えるシステム。A system comprising:
[技術案71][Technical proposal 71]
前記第1の識別子は、前記会話に対応する第1の返送電子メールアドレスである、the first identifier is a first return email address corresponding to the conversation;
技術案70に記載のシステム。The system described in
[技術案72][Technical proposal 72]
前記第1の返送電子メールアドレスは、少なくとも部分的にランダムに選ばれたテキスト列を含む、the first return email address includes an at least partially randomly selected string of text;
技術案71に記載のシステム。The system described in technical proposal 71.
[技術案73][Technical proposal 73]
前記動作は、The operation includes:
前記第1の電子メールアドレス及び前記第1の識別子を含む第1のセットのデータを、前記第1の外部電子メールサービスから受信すること、receiving a first set of data from the first external email service, the first set of data including the first email address and the first identifier;
をさらに含む技術案70に記載のシステム。The system according to
[技術案74][Technical proposal 74]
前記動作は、The operation includes:
前記第1のセットのデータに含まれる前記第1の識別子に基づいて、前記第1のセットのデータが前記会話に関連付けられていると判定することと、前記第1のセットのデータに基づいて第2のメッセージを生成することと、前記第2のメッセージを表示させるために、前記第2のメッセージを前記会話の複数の参加者に関連付けられる複数のメッセージングアプリケーションに送信すること、determining that the first set of data is associated with the conversation based on the first identifier included in the first set of data; generating a second message based on the first set of data; and sending the second message to a plurality of messaging applications associated with a plurality of participants of the conversation for displaying the second message.
をさらに含む技術案73に記載のシステム。The system according to technical proposal 73, further comprising:
[技術案75][Technical proposal 75]
前記動作は、The operation includes:
前記第1の電子メールアドレスと前記会話との間の関連付けを、前記少なくとも1つのデータベースに格納すること、storing an association between the first email address and the conversation in the at least one database;
をさらに含む技術案70に記載のシステム。The system according to
[技術案76][Technical proposal 76]
前記動作は、The operation includes:
第1の電子メールアドレスが前記会話に参加する第1の外部エンティティに関連付けられていることを示す通知を、前記会話の前記複数の参加者に関連付けられる複数のメッセージングアプリケーションに送信すること、sending notifications to a plurality of messaging applications associated with the plurality of participants of the conversation indicating that a first email address is associated with a first external entity participating in the conversation;
をさらに含む技術案70に記載のシステム。The system according to
[技術案77][Technical proposal 77]
前記動作は、The operation includes:
前記第1の電子メールアドレスを識別する情報を含む第3のメッセージを、前記会話の第1の参加者に関連付けられる第1のメッセージングアプリケーションから受信することと、receiving a third message from a first messaging application associated with a first participant of the conversation, the third message including information identifying the first email address;
第1の電子メールプロトコルに従って、前記第1の電子メールアドレスと、前記第2のメッセージの内容と、前記第1の識別子とを含む第1の電子メールメッセージを生成することと、generating a first email message according to a first email protocol, the first email address, the second message content, and the first identifier;
前記第1の電子メールメッセージを、第1の電子メール受信ボックスに配信するために、前記第1の電子メールアドレスに関連付けられる前記第1の外部電子メールサービスに送信すること、sending the first email message to the first external email service associated with the first email address for delivery to a first email inbox;
をさらに含む技術案70に記載のシステム。The system according to
[技術案78][Technical proposal 78]
前記動作は、The operation includes:
前記第1の識別子と、前記第3のメッセージに対する返信を示す情報と、前記返信の内容とを含む第2のセットのデータを、前記第1の外部電子メールサービスから受信することと、receiving a second set of data from the first external email service, the second set of data including the first identifier, information indicative of a reply to the third message, and content of the reply;
前記第2のセットのデータに含まれる前記第1の識別子に基づいて、前記第2のセットのデータが前記会話に関連付けられていると判定することと、determining, based on the first identifier included in the second set of data, that the second set of data is associated with the conversation;
前記第2のセットのデータに基づいて第4のメッセージを生成することと、generating a fourth message based on the second set of data; and
前記第4のメッセージを表示させるために、前記第4のメッセージを前記会話の複数の参加者に関連付けられる複数のメッセージングアプリケーションに送信すること、sending the fourth message to a plurality of messaging applications associated with a plurality of participants of the conversation for displaying the fourth message;
をさらに含む技術案77に記載のシステム。The system described in technical proposal 77 further includes:
[技術案79][Technical proposal 79]
第2の電子メールアドレスに関連付けられる第2の外部エンティティが、前記会話に参加することを許可されている、a second external entity associated with a second email address is permitted to participate in the conversation;
技術案78記載のシステム。The system described in technical proposal 78.
[技術案80][Technical proposal 80]
前記動作は、The operation includes:
第2の電子メールプロトコルに従って、前記第2の電子メールアドレスと、前記第4のメッセージの内容と、前記会話を識別するために前記第2の電子メールアドレスに関連付けられる第2の外部電子メールサービスのための、前記メッセージングサービスによって生成される第2の識別子とを含む第2の電子メールメッセージを生成することと、generating a second email message according to a second email protocol, the second email message including the second email address, content of the fourth message, and a second identifier generated by the messaging service for a second external email service that is associated with the second email address to identify the conversation;
前記第2の電子メールメッセージを、第2の電子メール受信ボックスに配信するために、前記第2の電子メールアドレスに関連付けられる前記第2の外部電子メールサービスに送信することと、sending the second email message to the second external email service associated with the second email address for delivery to a second email inbox;
をさらに含む技術案79に記載のシステム。The system according to technical proposal 79, further comprising:
[技術案81][Technical proposal 81]
方法であって、1. A method comprising:
会話で第1のメッセージを受信することと、Receiving a first message in the conversation;
前記第1のメッセージが第1の電子メールアドレスを示す情報を含むと判定することと、determining that the first message includes information indicative of a first email address;
前記第1の電子メールアドレスと前記会話との間の関連付けを、少なくとも1つのデータベースに格納することと、storing an association between the first email address and the conversation in at least one database;
前記会話を識別するための第1の識別子を生成することと、generating a first identifier for identifying the conversation;
前記第1の識別子を、前記第1の電子メールアドレスに関連付けられる前記第1の外部電子メールサービスに送信することと、sending the first identifier to the first external email service associated with the first email address;
を含む方法。The method includes:
[技術案82][Technical proposal 82]
前記第1の識別子は、前記会話に対応する第1の返送電子メールアドレスである、the first identifier is a first return email address corresponding to the conversation;
技術案81に記載の方法。The method according to technical proposal 81.
[技術案83][Technical proposal 83]
前記第1の識別子を含む第1のセットのデータを、前記第1の外部電子メールサービスから受信することと、receiving a first set of data from the first external email service, the first set of data including the first identifier;
前記第1のセットのデータに含まれる前記第1の識別子に基づいて、前記第1のセットのデータが前記会話に関連付けられていると判定することと、determining, based on the first identifier included in the first set of data, that the first set of data is associated with the conversation;
前記第1のセットのデータに基づいて第2のメッセージを生成することと、generating a second message based on the first set of data;
前記第2のメッセージを表示させるために、前記第2のメッセージを前記会話の複数の参加者に関連付けられる複数のメッセージングアプリケーションに送信することと、sending the second message to a plurality of messaging applications associated with a plurality of participants of the conversation for displaying the second message;
をさらに含む技術案81に記載の方法。The method according to technical proposal 81, further comprising:
[技術案84][Technical proposal 84]
前記第1の電子メールアドレスを識別する情報を含む第3のメッセージを、前記会話の第1の参加者に関連付けられる第1のメッセージングアプリケーションから受信することと、receiving a third message from a first messaging application associated with a first participant of the conversation, the third message including information identifying the first email address;
第1の電子メールプロトコルに従って、前記第1の電子メールアドレスと、前記第2のメッセージの内容と、前記第1の識別子とを含む第1の電子メールメッセージを生成することと、generating a first email message according to a first email protocol, the first email address, the second message content, and the first identifier;
前記第1の電子メールメッセージを、第1の電子メール受信ボックスに配信するために、前記第1の電子メールアドレスに関連付けられる前記第1の外部電子メールサービスに送信することと、sending the first email message to the first external email service associated with the first email address for delivery to a first email inbox;
をさらに含む技術案81に記載の方法。The method according to technical proposal 81, further comprising:
[技術案85][Technical proposal 85]
前記第1の識別子と、前記第3のメッセージに対する返信を示す情報と、前記返信の内容とを含む第2のセットのデータを、前記第1の外部電子メールサービスから受信することと、receiving a second set of data from the first external email service, the second set of data including the first identifier, information indicative of a reply to the third message, and content of the reply;
前記第2のセットのデータに含まれる前記第1の識別子に基づいて、前記第2のセットのデータが前記会話に関連付けられていると判定することと、determining, based on the first identifier included in the second set of data, that the second set of data is associated with the conversation;
前記第2のセットのデータに基づいて第4のメッセージを生成することと、generating a fourth message based on the second set of data; and
前記第4のメッセージを表示させるために、前記第4のメッセージを前記会話の複数の参加者に関連付けられる複数のメッセージングアプリケーションに送信することと、sending the fourth message to a plurality of messaging applications associated with a plurality of participants of the conversation for displaying the fourth message;
をさらに含む技術案84に記載の方法。The method according to technical proposal 84, further comprising:
[技術案86][Technical proposal 86]
第2の電子メールアドレスに関連付けられる第2の外部エンティティが、前記会話に参加することを許可されており、前記方法は、A second external entity associated with a second email address is permitted to participate in the conversation, the method comprising:
第2の電子メールプロトコルに従って、前記第2の電子メールアドレスと、前記第4のメッセージの内容と、前記会話を識別するための第2の識別子とを含む第2の電子メールメッセージを生成することと、generating a second email message according to a second email protocol, the second email message including the second email address, content of the fourth message, and a second identifier for identifying the conversation;
前記第2の電子メールメッセージを、第2の電子メール受信ボックスに配信するために、前記第2の電子メールアドレスに関連付けられる前記第2の外部電子メールサービスに送信することと、sending the second email message to the second external email service associated with the second email address for delivery to a second email inbox;
をさらに含む技術案85に記載の方法。The method according to technical proposal 85, further comprising:
[技術案87][Technical proposal 87]
コンピュータ可読指令が記憶されている非一時的なコンピュータ可読記憶媒体であって、前記コンピュータ可読指令は、コンピューティング装置で実行された場合、前記コンピューティング装置に少なくとも、A non-transitory computer-readable storage medium having computer-readable instructions stored thereon, the computer-readable instructions, when executed on a computing device, causing the computing device to at least:
会話で第1のメッセージを受信することと、Receiving a first message in the conversation;
前記第1のメッセージが、電子メール参加者に関連付けられる電子メールアドレスを示す情報を含むことと判定することと、determining that the first message includes information indicative of an email address associated with an email participant;
前記電子メールアドレスと前記会話との間の関連付けを、少なくとも1つのデータベースに格納することと、storing an association between the email address and the conversation in at least one database;
前記電子メールアドレスに関連付けられる外部電子メールサービスによって前記会話を識別するための識別子を生成することと、generating an identifier for identifying the conversation by an external email service associated with the email address;
前記識別子を、前記電子メールアドレスに関連付けられる前記外部電子メールサービスに送信することと、を行わせる、sending the identifier to the external email service associated with the email address.
非一時的なコンピュータ可読記憶媒体。A non-transitory computer-readable storage medium.
[技術案88][Technical proposal 88]
前記識別子は、前記会話に対応する第1の返送電子メールアドレスであるThe identifier is a first return email address corresponding to the conversation.
技術案85に記載の非一時的なコンピュータ可読記憶媒体。A non-transitory computer-readable storage medium according to technical proposal 85.
[技術案89][Technical proposal 89]
前記コンピューティング装置で実行された場合、前記コンピューティング装置に少なくとも、When executed on the computing device, the computing device is provided with at least
前記識別子を含むセットのデータを、前記外部電子メールサービスから受信することと、receiving a set of data from the external email service, the set including the identifier;
前記セットのデータに含まれる前記識別子に基づいて、前記セットのデータが前記会話に関連付けられていると判定することと、determining that the set of data is associated with the conversation based on the identifier included in the set of data;
前記第1のセットのデータに基づいて第2のメッセージを生成することと、generating a second message based on the first set of data;
前記第2のメッセージを表示させるために、前記第2のメッセージを前記会話の複数の参加者に関連付けられる複数のメッセージングアプリケーションに送信することと、を行わせるsending the second message to a plurality of messaging applications associated with a plurality of participants of the conversation for displaying the second message.
コンピュータ可読指令をさらに記憶している技術案85に記載の非一時的なコンピュータ可読記憶媒体。The non-transitory computer-readable storage medium according to technical proposal 85, further storing computer-readable instructions.
[技術案90][Technical proposal 90]
システムであって、1. A system comprising:
複数の会話を含むメッセージスレッドデータベースと、A message thread database containing multiple conversations;
前記複数の会話に関連付けられる属性を含む複数の属性データベースと、a plurality of attribute databases containing attributes associated with the plurality of conversations;
前記メッセージスレッドデータベースおよび前記複数の属性データベースと通信する少なくとも1つのコンピューティング装置であって、at least one computing device in communication with the message thread database and the plurality of attribute databases,
前記複数の会話のうちの第1の会話内の複数のメッセージを受信することと、receiving a plurality of messages in a first conversation of the plurality of conversations;
前記複数のメッセージを前記メッセージスレッドデータベースに格納することと、storing said plurality of messages in said message thread database;
前記第1の会話内のユーザ入力を受け取ることと、receiving a user input within the first conversation;
前記ユーザ入力が、前記第1の会話に関連付けられる少なくとも1つの属性を含むと判定することと、determining that the user input includes at least one attribute associated with the first conversation;
前記少なくとも1つの属性のタイプの判定に基づいて、前記複数の属性データベースのうちの少なくとも1つに情報を格納することと、storing information in at least one of the plurality of attribute databases based on the determination of a type of the at least one attribute;
前記少なくとも1つの属性と前記第1の会話との間の関連付けを格納することと、storing an association between the at least one attribute and the first conversation;
を含む動作を実行するように構成された少なくとも1つのコンピューティング装置と、At least one computing device configured to perform operations including:
を備えるシステム。A system comprising:
[技術案91][Technical proposal 91]
前記メッセージスレッドデータベースは、前記複数の会話のそれぞれに関連付けられるメタデータおよび内容を含む、the message thread database includes metadata and content associated with each of the plurality of conversations;
技術案90に記載のシステム。The system described in technical proposal 90.
[技術案92][Technical proposal 92]
前記メッセージスレッドデータベースは、前記複数の会話のそれぞれに関連付けられるスレッド識別情報と、前記複数の会話のそれぞれに含まれる少なくとも1つのメッセージの少なくとも1つのメッセージ識別情報と、前記複数の会話のそれぞれに含まれる前記少なくとも1つのメッセージとをさらに含む、the message thread database further includes thread identification information associated with each of the plurality of conversations, at least one message identification information of at least one message included in each of the plurality of conversations, and the at least one message included in each of the plurality of conversations;
技術案91に記載のシステム。The system described in technical proposal 91.
[技術案93][Technical proposal 93]
前記少なくとも1つのメッセージの内容は、テキストデータ、ビデオ内容、またはオーディオ内容を含む、the content of the at least one message includes text data, video content, or audio content;
技術案92に記載のシステム。The system described in technical proposal 92.
[技術案94][Technical proposal 94]
前記複数の属性データベースは、前記複数の会話に関連付けられるトピックを示す情報を格納する第1の属性データベースと、前記複数の会話に関連付けられるユーザの情報を格納する第2の属性データベースと、前記複数の会話に関連付けられるグループの情報を格納する第3の属性データベースと、前記複数の会話に関連付けられるタスクの割り当てを示す情報を格納する第4の属性データベースと、前記複数の会話に含まれる1つ又は複数の電子メールアドレスに関連付けられる情報を格納する第5の属性データベースとのうちの少なくとも一つを備える、The plurality of attribute databases include at least one of a first attribute database storing information indicative of topics associated with the plurality of conversations, a second attribute database storing information on users associated with the plurality of conversations, a third attribute database storing information on groups associated with the plurality of conversations, a fourth attribute database storing information indicative of task assignments associated with the plurality of conversations, and a fifth attribute database storing information associated with one or more email addresses included in the plurality of conversations.
技術案90に記載のシステム。The system described in technical proposal 90.
[技術案95][Technical proposal 95]
前記複数の属性データベースのそれぞれは、前記複数の会話のそれぞれに関連付けられる1つ又は複数の属性を識別するための、前記複数の会話に対応する複数のスレッド識別情報をさらに含む、each of the plurality of attribute databases further comprising a plurality of thread identification information corresponding to the plurality of conversations for identifying one or more attributes associated with each of the plurality of conversations;
技術案90に記載のシステム。The system described in technical proposal 90.
[技術案96][Technical proposal 96]
前記動作は、The operation includes:
前記新しいメッセージに基づいて、前記複数の属性データベースのうちの前記少なくとも1つを更新することと、updating the at least one of the plurality of attribute databases based on the new message;
前記新しいメッセージに関連付けられる情報を、前記第1の会話に関連付けられる1つ又は複数のメッセージングアプリケーションに送信することと、sending information associated with the new message to one or more messaging applications associated with the first conversation;
をさらに含む技術案90に記載のシステム。The system according to technical proposal 90, further comprising:
[技術案97][Technical proposal 97]
前記動作は、The operation includes:
前記複数の会話のうちの少なくとも1つを示す要求を前記第1のメッセージングアプリケーションから受信することと、receiving a request from the first messaging application indicating at least one of the plurality of conversations;
前記複数の会話のうちの前記少なくとも1つを示す情報に基づいて前記メッセージスレッドデータベースにクエリすることと、querying the message thread database based on information indicative of the at least one of the plurality of conversations;
前記複数の会話のうちの前記少なくとも1つ内のメッセージの少なくともサブセットを決定するために、クエリ結果を処理することと、processing the query results to determine at least a subset of messages in the at least one of the plurality of conversations;
前記要求に応じて、前記複数の会話のうちの前記少なくとも1つ内のメッセージの前記少なくともサブセットを、前記第1のメッセージングアプリケーションに送信することと、in response to the request, transmitting at least the subset of messages in the at least one of the plurality of conversations to the first messaging application;
をさらに含む技術案90に記載のシステム。The system according to technical proposal 90, further comprising:
[技術案98][Technical proposal 98]
前記動作は、The operation includes:
前記複数の会話のうちの少なくとも1つに関連付けられる第2のメッセージングアプリケーションから要求を受信することと、receiving a request from a second messaging application associated with at least one of the plurality of conversations;
前記要求に基づいて前記複数の属性データベースにクエリすることと、Querying the plurality of attribute databases based on the request; and
少なくとも1つの属性が前記複数の会話のうちの前記少なくとも1つに関連付けられていると判定するために、クエリ結果を処理することと、processing a query result to determine that at least one attribute is associated with the at least one of the plurality of conversations;
前記少なくとも1つの属性の少なくとも1つのインジケータを表示させるために、前記少なくとも1つの属性を示す情報を、前記第2のメッセージングアプリケーションに送信することと、sending information indicative of the at least one attribute to the second messaging application to cause the second messaging application to display at least one indicator of the at least one attribute;
をさらに含む技術案90に記載のシステム。The system according to technical proposal 90, further comprising:
[技術案99][Technical proposal 99]
前記動作は、The operation includes:
前記複数の会話のうちの前記少なくとも1つに関連付けられる前記少なくとも1つの属性の前記少なくとも1つのインジケータの選択を示す入力を受け取ることと、receiving an input indicating a selection of the at least one indicator of the at least one attribute associated with the at least one of the plurality of conversations;
前記入力に基づいて前記メッセージスレッドデータベースにクエリすることと、querying the message thread database based on the input;
前記複数のメッセージを表示させるために、前記複数の会話のうちの前記少なくとも1つ内の複数のメッセージを識別して送信することと、identifying and transmitting a plurality of messages in the at least one of the plurality of conversations for display;
をさらに含む技術案98に記載のシステム。The system described in technical proposal 98 further includes:
[技術案100][Technical proposal 100]
方法であって、1. A method comprising:
複数の会話のうちの第1の会話内の複数のメッセージを受信することであって、会話データベースが前記複数の会話を含み、複数の属性データベースが前記複数の会話に関連付けられる属性を含むことと、receiving a plurality of messages in a first conversation of a plurality of conversations, a conversation database including the plurality of conversations, and a plurality of attribute databases including attributes associated with the plurality of conversations;
前記複数のメッセージを前記会話データベースに格納することと、storing said plurality of messages in said conversation database;
前記第1の会話内のユーザ入力を受け取ることと、receiving a user input within the first conversation;
前記ユーザ入力が、前記第1の会話に関連付けられる少なくとも1つの属性を含むと判定することと、determining that the user input includes at least one attribute associated with the first conversation;
前記少なくとも1つの属性のタイプの判定に基づいて、前記複数の属性データベースのうちの少なくとも1つに情報を格納することと、storing information in at least one of the plurality of attribute databases based on the determination of a type of the at least one attribute;
前記少なくとも1つの属性と前記第1の会話との間の関連付けを格納することと、storing an association between the at least one attribute and the first conversation;
を含む方法。The method includes:
[技術案101][Technical proposal 101]
前記複数の会話のうちの少なくとも1つを示す要求を前記第1のメッセージングアプリケーションから受信することと、receiving a request from the first messaging application indicating at least one of the plurality of conversations;
前記複数の会話のうちの前記少なくとも1つを示す情報に基づいて前記会話データベースにクエリすることと、querying the conversation database based on information indicative of the at least one of the plurality of conversations;
前記複数の会話のうちの前記少なくとも1つ内のメッセージの少なくともサブセットを決定するために、クエリ結果を処理することと、processing the query results to determine at least a subset of messages in the at least one of the plurality of conversations;
前記要求に応じて、前記複数の会話のうちの前記少なくとも1つ内のメッセージの前記少なくともサブセットを、前記第1のメッセージングアプリケーションに送信することと、in response to the request, transmitting at least the subset of messages in the at least one of the plurality of conversations to the first messaging application;
をさらに含む技術案100に記載の方法。The method according to the
[技術案102][Technical proposal 102]
前記複数の会話のうちの少なくとも1つに関連付けられる第2のメッセージングアプリケーションから要求を受信することと、receiving a request from a second messaging application associated with at least one of the plurality of conversations;
前記要求に基づいて前記複数の属性データベースにクエリすることと、Querying the plurality of attribute databases based on the request; and
少なくとも1つの属性が前記複数の会話のうちの前記少なくとも1つに関連付けられていると判定するために、クエリ結果を処理することと、processing a query result to determine that at least one attribute is associated with the at least one of the plurality of conversations;
前記少なくとも1つの属性の少なくとも1つのインジケータを表示させるために、前記少なくとも1つの属性を示す情報を、前記第2のメッセージングアプリケーションに送信することと、sending information indicative of the at least one attribute to the second messaging application to cause the second messaging application to display at least one indicator of the at least one attribute;
をさらに含む技術案90に記載の方法。The method according to technical proposal 90, further comprising:
[技術案103][Technical proposal 103]
前記複数の会話のうちの前記少なくとも1つに関連付けられる前記少なくとも1つの属性の前記少なくとも1つのインジケータの選択を示す入力を受け取ることと、receiving an input indicating a selection of the at least one indicator of the at least one attribute associated with the at least one of the plurality of conversations;
前記入力に基づいて前記会話データベースにクエリすることと、Querying the conversation database based on the input; and
前記複数のメッセージを表示させるために、前記複数の会話のうちの前記少なくとも1つ内の複数のメッセージを識別して送信することと、identifying and transmitting a plurality of messages in the at least one of the plurality of conversations for display;
をさらに含む技術案102に記載の方法。The method according to technical proposal 102, further comprising:
[技術案104][Technical proposal 104]
前記会話データベースは、少なくとも1つのメッセージを含む前記複数の会話のそれぞれに関連付けられるスレッド識別情報と、前記複数の会話のそれぞれに含まれる前記少なくとも1つのメッセージの少なくとも1つのメッセージ識別情報と、前記複数の会話のそれぞれに含まれる前記少なくとも1つのメッセージの内容と、を含む、the conversation database includes thread identification information associated with each of the plurality of conversations including at least one message, at least one message identification information of the at least one message included in each of the plurality of conversations, and content of the at least one message included in each of the plurality of conversations;
技術案100に記載の方法。The method according to
[技術案105][Technical proposal 105]
前記複数の属性データベースのそれぞれはさらに、前記複数の会話のそれぞれに関連付けられる1つ又は複数の属性を識別するための、前記複数の会話に対応する複数のスレッド識別情報を含む、each of the plurality of attribute databases further comprising a plurality of thread identification information corresponding to the plurality of conversations for identifying one or more attributes associated with each of the plurality of conversations;
技術案100に記載の方法。The method according to
[技術案106][Technical proposal 106]
コンピュータ可読指令が記憶されている非一時的なコンピュータ可読記憶媒体であって、前記コンピュータ可読指令は、コンピューティング装置で実行された場合、前記コンピューティング装置に少なくとも、A non-transitory computer-readable storage medium having computer-readable instructions stored thereon, the computer-readable instructions, when executed on a computing device, causing the computing device to at least:
複数の会話のうちの第1の会話内の複数のメッセージを受信することであって、会話データベースが前記複数の会話を含み、複数の属性データベースが前記複数の会話に関連付けられる属性を含むことと、receiving a plurality of messages in a first conversation of a plurality of conversations, a conversation database including the plurality of conversations, and a plurality of attribute databases including attributes associated with the plurality of conversations;
前記複数のメッセージを前記会話データベースに格納することと、storing said plurality of messages in said conversation database;
前記第1の会話内の新しいメッセージを受信することと、receiving a new message in the first conversation;
前記新しいメッセージを解析して、前記新しいメッセージが、前記第1の会話に関連付けられる少なくとも1つの属性を含むと判定することと、parsing the new message to determine that the new message includes at least one attribute associated with the first conversation;
前記少なくとも1つの属性のタイプの判定に基づいて、前記複数の属性データベースのうちの少なくとも1つに情報を格納することと、storing information in at least one of the plurality of attribute databases based on the determination of a type of the at least one attribute;
前記少なくとも1つの属性と前記第1の会話との間の関連付けを格納することと、storing an association between the at least one attribute and the first conversation;
を行わせる非一時的なコンピュータ可読記憶媒体。A non-transitory computer-readable storage medium for causing
[技術案107][Technical proposal 107]
前記コンピューティング装置で実行された場合、前記コンピューティング装置に少なくとも、When executed on the computing device, the computing device is provided with at least
前記複数の会話のうちの少なくとも1つを示す要求を第1のメッセージングアプリケーションから受信することと、receiving a request from a first messaging application indicating at least one of the plurality of conversations;
前記複数の会話のうちの前記少なくとも1つを示す情報に基づいて前記会話データベースにクエリすることと、querying the conversation database based on information indicative of the at least one of the plurality of conversations;
前記複数の会話のうちの前記少なくとも1つ内のメッセージの少なくともサブセットを決定するために、クエリ結果を処理することと、processing the query results to determine at least a subset of messages in the at least one of the plurality of conversations;
前記要求に応じて、前記複数の会話のうちの前記少なくとも1つ内のメッセージの前記少なくともサブセットを、前記第1のメッセージングアプリケーションに送信することと、を行わせる、in response to the request, transmitting at least the subset of messages in the at least one of the plurality of conversations to the first messaging application.
コンピュータ可読指令をさらに記憶している技術案106に記載の非一時的なコンピュータ可読記憶媒体。The non-transitory computer-readable storage medium according to technical solution 106, further storing computer-readable instructions.
[技術案108][Technical proposal 108]
前記コンピューティング装置で実行された場合、前記コンピューティング装置に少なくとも、When executed on the computing device, the computing device is provided with at least
前記複数の会話のうちの少なくとも1つに関連付けられる第2のメッセージングアプリケーションから要求を受信することと、receiving a request from a second messaging application associated with at least one of the plurality of conversations;
前記要求に基づいて前記複数の属性データベースにクエリすることと、Querying the plurality of attribute databases based on the request; and
少なくとも1つの属性が前記複数の会話のうちの前記少なくとも1つに関連付けられていると判定するために、クエリ結果を処理することと、processing a query result to determine that at least one attribute is associated with the at least one of the plurality of conversations;
前記少なくとも1つの属性の少なくとも1つのインジケータを表示させるために、前記少なくとも1つの属性を示す情報を、前記第2のメッセージングアプリケーションに送信することと、を行わせる、sending information indicative of the at least one attribute to the second messaging application to cause the second messaging application to display at least one indicator of the at least one attribute.
コンピュータ可読指令をさらに記憶している技術案106に記載の非一時的なコンピュータ可読記憶媒体。The non-transitory computer-readable storage medium according to technical solution 106, further storing computer-readable instructions.
[技術案109][Technical proposal 109]
前記会話データベースは、前記複数の会話のそれぞれに関連付けられるスレッド識別情報と、前記複数の会話のそれぞれに含まれる1つまたは複数のメッセージの内容とを含み、前記複数の属性データベースのそれぞれはさらに、前記複数の会話のそれぞれに関連付けられる1つ又は複数の属性を識別するための、前記複数の会話に対応する複数のスレッド識別情報を含む、The conversation database includes thread identification information associated with each of the plurality of conversations and the contents of one or more messages included in each of the plurality of conversations, and each of the plurality of attribute databases further includes a plurality of thread identification information corresponding to the plurality of conversations for identifying one or more attributes associated with each of the plurality of conversations.
技術案106に記載の非一時的なコンピュータ可読記憶媒体。A non-transitory computer-readable storage medium according to technical proposal 106.
[技術案110][Technical proposal 110]
コンピューティング装置であって、1. A computing device comprising:
少なくとも1つのプロセッサと、At least one processor;
前記少なくとも1つのプロセッサに通信可能に結合され、指令を記憶している少なくとも1つのメモリであって、前記指令が前記少なくとも1つのプロセッサによって実行された場合、前記クライアントコンピューティング装置に、at least one memory communicatively coupled to the at least one processor and storing instructions that, when executed by the at least one processor, cause the client computing device to:
第1の会話を開始することを示す第1の入力をユーザインターフェースから受け取ることと、Receiving a first input from a user interface indicating starting a first conversation;
第1のユーザによる第2の入力を受け取ることと、receiving a second input by a first user;
前記第2の入力が前記第1の会話に関連付けられる少なくとも1つの属性を示すと判定することと、determining that the second input is indicative of at least one attribute associated with the first conversation;
新しい会話の開始を示す情報と、前記少なくとも1つの属性が前記第1の会話に関連付けられていることを示す情報とを含む情報を、メッセージサービスに送信することと、を行わせる少なくとも1つのメモリと、sending information to a message service, the information including information indicating a start of a new conversation and information indicating that the at least one attribute is associated with the first conversation; and
を備えるコンピューティング装置。1. A computing device comprising:
[技術案111][Technical proposal 111]
前記少なくとも1つのメモリは、The at least one memory includes:
前記少なくとも1つのプロセッサによって実行された場合、前記クライアントコンピューティング装置に、When executed by the at least one processor, the client computing device:
前記メッセージングサービスに情報の要求を送信することと、sending a request for information to the messaging service;
前記要求に応じて受信された、複数の会話に関連付けられる複数の属性を示す情報を含む情報を格納することであって、前記複数の会話は対応するスレッドIDを有することと、storing information received in response to the request, the information including information indicative of a plurality of attributes associated with a plurality of conversations, the plurality of conversations having corresponding thread IDs;
前記受信された情報に基づいて、前記複数の会話に関連付けられる複数のインジケータを表示することと、を行わせる、and displaying a plurality of indicators associated with the plurality of conversations based on the received information.
指令をさらに記憶している技術案110に記載のコンピューティング装置。The computing device according to the
[技術案112][Technical proposal 112]
前記少なくとも1つのメモリはさらに、前記少なくとも1つのプロセッサによって実行された場合、前記クライアントコンピューティング装置に、The at least one memory further comprises, when executed by the at least one processor, causing the client computing device to:
前記複数の会話から選択された第2の会話内の複数のメッセージに対する要求を送信することと、sending a request for a plurality of messages in a second conversation selected from the plurality of conversations;
前記要求に応じて受信された、前記第2の会話内の前記複数のメッセージに関連付けられる内容を表示することと、を行わせる、displaying content associated with the plurality of messages in the second conversation received in response to the request.
指令をさらに記憶している技術案111に記載のコンピューティング装置。The computing device of technical solution 111, further storing instructions.
[技術案113][Technical proposal 113]
前記少なくとも1つのメモリはさらに、前記少なくとも1つのプロセッサによって実行された場合、前記クライアントコンピューティング装置に、The at least one memory further comprises, when executed by the at least one processor, causing the client computing device to:
前記複数の会話を示す情報の要求を送信することと、transmitting a request for information indicative of the plurality of conversations;
前記受信された情報に基づいて、前記複数の会話のうちの少なくともいくつかの要約を表示することと、を行わせる、and displaying summaries of at least some of the plurality of conversations based on the received information.
指令をさらに記憶している技術案110に記載のコンピューティング装置。The computing device according to the
[技術案114][Technical proposal 114]
前記少なくとも1つのメモリはさらに、前記少なくとも1つのプロセッサによって実行された場合、前記クライアントコンピューティング装置に、The at least one memory further comprises, when executed by the at least one processor, causing the client computing device to:
第2の複数の会話の属性に基づいてインターフェースを生成させる指令をさらに記憶しており、further storing instructions for generating an interface based on attributes of the second plurality of conversations;
前記インターフェースは前記第2の複数の会話に関連付けられる2次元表示を含み、前記2次元表示における2つの次元は、前記第2の複数の会話に関連付けられる第1の属性と、前記第2の複数の会話に関連付けられる第2の属性とに基づく、the interface includes a two-dimensional representation associated with the second plurality of conversations, two dimensions of the two-dimensional representation based on a first attribute associated with the second plurality of conversations and a second attribute associated with the second plurality of conversations.
技術案110に記載のコンピューティング装置。The computing device according to
[技術案115][Technical proposal 115]
前記少なくとも1つのメモリはさらに、前記少なくとも1つのプロセッサによって実行された場合、前記クライアントコンピューティング装置に、The at least one memory further comprises, when executed by the at least one processor, causing the client computing device to:
第2のユーザが、前記第2の複数の会話に関連付けられる属性を再編成することを示す入力を提供するインターフェースを表示することと、displaying an interface providing an input indicating that a second user wishes to rearrange attributes associated with the second plurality of conversations;
前記入力の受け取りに応じて、前記2次元表示を再編成することと、を行わせる、reorganizing the two-dimensional representation in response to receiving the input.
指令をさらに記憶している技術案114に記載のコンピューティング装置。The computing device of the
[技術案116][Technical proposal 116]
前記2次元表示内の少なくとも1つの交差は、At least one intersection in the two-dimensional representation comprises:
前記第2の複数の会話のうちの少なくとも1つの会話に関連付けられる少なくとも1つのタスクのステータスを示すインジケータと、an indicator indicating a status of at least one task associated with at least one conversation of the second plurality of conversations;
前記第2の複数の会話のうち未読メッセージを有する会話を示す数と、a number indicating conversations among the second plurality of conversations that have unread messages; and
を含む技術案114に記載のコンピューティング装置。The computing device according to
[技術案117][Technical proposal 117]
前記少なくとも1つのメモリはさらに、前記少なくとも1つのプロセッサによって実行された場合、前記クライアントコンピューティング装置に、The at least one memory further comprises, when executed by the at least one processor, causing the client computing device to:
前記2次元表現内の交差の選択を示す情報を受信することと、receiving information indicative of a selection of intersections within the two-dimensional representation;
前記選択された交差に対応する属性に基いて、前記情報を受信することに応じて、前記第2の複数の会話をフィルタリングすることと、を行わせる、and in response to receiving the information, filtering the second plurality of conversations based on an attribute corresponding to the selected intersection.
指令をさらに記憶している技術案114に記載のコンピューティング装置。The computing device of the
[技術案118][Technical proposal 118]
前記第2の入力は、前記少なくとも1つの属性の既存のインジケータを選択することによって提供される、the second input is provided by selecting an existing indicator of the at least one attribute.
技術案110に記載のコンピューティング装置。The computing device according to
[技術案119][Technical proposal 119]
前記第2の入力は、前記少なくとも1つの属性のタイプを示す所定のキャラクタを含むメッセージを入れることによって提供される、the second input is provided by entering a message including predetermined characters indicative of a type of the at least one attribute.
技術案110に記載のコンピューティング装置。The computing device according to
[技術案120][Technical proposal 120]
前記少なくとも1つの属性は、トピック属性と、ユーザ属性と、グループ属性と、タスク属性と、電子メールメッセージ属性とのうちの少なくとも1つを含む、the at least one attribute includes at least one of a topic attribute, a user attribute, a group attribute, a task attribute, and an email message attribute;
技術案110に記載のコンピューティング装置。The computing device according to
[技術案121][Technical proposal 121]
前記少なくとも1つのメモリはさらに、前記少なくとも1つのプロセッサによって実行された場合、前記クライアントコンピューティング装置に、The at least one memory further comprises, when executed by the at least one processor, causing the client computing device to:
前記第2の入力が所定のキャラクタに関連付けられているという判定に基づいて、前記第2の入力が少なくとも1つの属性を示すと判定することを行わせる、determining that the second input is indicative of at least one attribute based on a determination that the second input is associated with a predetermined character.
指令をさらに記憶している技術案110に記載のコンピューティング装置。The computing device of the
[技術案122][Technical proposal 122]
前記少なくとも1つのメモリはさらに、前記少なくとも1つのプロセッサによって実行された場合、前記クライアントコンピューティング装置に、The at least one memory further comprises, when executed by the at least one processor, causing the client computing device to:
第3の入力を受け取ることに応じて、1つ又は複数の会話に参加する少なくとも1つのグループに関連付けられる情報を含む第3のユーザインターフェースを表示することを行わせる、in response to receiving the third input, displaying a third user interface including information associated with at least one group participating in the one or more conversations.
指令をさらに記憶している技術案110に記載のコンピューティング装置。The computing device according to the
[技術案123][Technical proposal 123]
前記少なくとも1つのメモリはさらに、前記少なくとも1つのプロセッサによって実行された場合、前記クライアントコンピューティング装置に、The at least one memory further comprises, when executed by the at least one processor, causing the client computing device to:
前記第1の会話内のメッセージを受信することと、receiving a message in the first conversation;
前記メッセージが第2のユーザを識別する情報を含むと判定することと、determining that the message includes information identifying a second user;
前記メッセージに関連付けられる日付を示す情報を受信することと、receiving information indicative of a date associated with the message;
前記第2のユーザに割り当てられたタスクを示す前記メッセージと、前記メッセージに関連付けられる日付を示す前記情報とを、メッセージサービスに送信することと、を行わせる、sending the message indicating a task assigned to the second user and the information indicating a date associated with the message to a message service.
指令をさらに記憶している技術案110に記載のコンピューティング装置。The computing device of the
[技術案124][Technical proposal 124]
前記少なくとも1つのメモリはさらに、前記少なくとも1つのプロセッサによって実行された場合、前記クライアントコンピューティング装置に、The at least one memory further comprises, when executed by the at least one processor, causing the client computing device to:
前記複数の会話のうち第3の会話に関連付けられるタスクのステータスを表示させる、displaying a status of a task associated with a third conversation of the plurality of conversations;
指令をさらに記憶している技術案110に記載のコンピューティング装置。The computing device of the
[技術案125][Technical proposal 125]
方法であって、1. A method comprising:
第1の会話を開始することを示す第1の入力をユーザインターフェースから受け取ることと、Receiving a first input from a user interface indicating starting a first conversation;
第1のユーザによる第2の入力を受け取ることと、receiving a second input by a first user;
前記第2の入力が前記第1の会話に関連付けられる少なくとも1つの属性を示すと判定することと、determining that the second input is indicative of at least one attribute associated with the first conversation;
新しい会話の開始を示す情報と、前記少なくとも1つの属性が前記第1の会話に関連付けられていることを示す情報とを含む情報を、メッセージサービスに送信することとを含み、前記メッセージングサービスは、前記第1の会話のスレッド識別子(ID)に関連付けられる前記少なくとも1つの属性を少なくとも1つのデータベースに格納する、sending information to a messaging service, the information including information indicating the start of a new conversation and information indicating that the at least one attribute is associated with the first conversation, the messaging service storing the at least one attribute associated with a thread identifier (ID) of the first conversation in at least one database;
方法。Method.
[技術案126][Technical proposal 126]
前記メッセージングサービスに情報の要求を送信することと、sending a request for information to the messaging service;
前記要求に応じて受信された、複数の会話に関連付けられる複数の属性を示す情報を含む情報を格納することであって、前記複数の会話のそれぞれは対応するスレッドIDを有することと、storing information received in response to the request, the information including information indicative of a plurality of attributes associated with a plurality of conversations, each of the plurality of conversations having a corresponding thread ID;
前記受信された情報に基づいて、前記複数の会話に関連付けられる複数のインジケータを表示することと、displaying a plurality of indicators associated with the plurality of conversations based on the received information; and
をさらに含む技術案125に記載の方法。The method according to technical proposal 125, further comprising:
[技術案127][Technical proposal 127]
前記複数の会話から選択された第2の会話内の複数のメッセージに対する要求を送信することと、sending a request for a plurality of messages in a second conversation selected from the plurality of conversations;
前記要求に応じて受信された、前記第2の会話内の前記複数のメッセージに関連付けられる内容を表示することと、displaying content associated with the plurality of messages in the second conversation received in response to the request; and
をさらに含む技術案126に記載の方法。The method according to technical proposal 126, further comprising:
[技術案128][Technical proposal 128]
前記複数の会話を示す情報の要求を送信することと、transmitting a request for information indicative of the plurality of conversations;
前記受信された情報に基づいて、前記複数の会話のうちの少なくともいくつかの要約を表示することと、displaying summaries of at least some of the plurality of conversations based on the received information; and
をさらに含む技術案125に記載の方法。The method according to technical proposal 125, further comprising:
[技術案129][Technical proposal 129]
第2の複数の会話の属性に基づいてインターフェースを生成することをさらに含み、generating an interface based on attributes of the second plurality of conversations;
前記インターフェースは前記第2の複数の会話に関連付けられる2次元表示を含み、前記2次元表示における2次元は、前記第2の複数の会話に関連付けられる第1の属性と、前記第2の複数の会話に関連付けられる第2の属性とに基づく、the interface includes a two-dimensional representation associated with the second plurality of conversations, a second dimension in the two-dimensional representation based on a first attribute associated with the second plurality of conversations and a second attribute associated with the second plurality of conversations.
技術案125に記載の方法。The method according to technical proposal 125.
[技術案130][Technical proposal 130]
さらに、moreover,
前記2次元表現内の交差の選択を示す情報を受信することと、receiving information indicative of a selection of intersections within the two-dimensional representation;
前記選択された交差に対応する属性に基いて、前記情報を受信することに応じて、前記第2の複数の会話をフィルタリングすることと、filtering the second plurality of conversations in response to receiving the information based on an attribute corresponding to the selected intersection; and
を含む技術案129に記載の方法。The method according to technical proposal 129, comprising:
[技術案131][Technical proposal 131]
コンピュータ可読指令が記憶されている非一時的なコンピュータ可読記憶媒体であって、前記コンピュータ可読指令は、コンピューティング装置で実行された場合、前記コンピューティング装置に少なくとも、A non-transitory computer-readable storage medium having computer-readable instructions stored thereon, the computer-readable instructions, when executed on a computing device, causing the computing device to at least:
第1の会話を開始することを示す第1の入力をユーザインターフェースから受け取ることと、Receiving a first input from a user interface indicating starting a first conversation;
第1のユーザによる第2の入力を受け取ることと、receiving a second input by a first user;
前記第2の入力が前記第1の会話に関連付けられる少なくとも1つの属性を示すと判定することと、determining that the second input is indicative of at least one attribute associated with the first conversation;
新しい会話の開始を示す情報と、前記少なくとも1つの属性が前記第1の会話に関連付けられていることを示す情報とを含むデータを、メッセージサービスに送信することと、を行わせ、前記メッセージングサービスは、前記第1の会話のスレッド識別子(ID)に関連付けられる前記少なくとも1つの属性を少なくとも1つのデータベースに格納する、sending data to a messaging service including information indicating the start of a new conversation and information indicating that the at least one attribute is associated with the first conversation, the messaging service storing the at least one attribute associated with a thread identifier (ID) of the first conversation in at least one database.
非一時的なコンピュータ可読記憶媒体。A non-transitory computer-readable storage medium.
[技術案132][Technical proposal 132]
前記コンピューティング装置で実行された場合、前記コンピューティング装置に少なくとも、When executed on the computing device, the computing device is provided with at least
前記メッセージングサービスに情報の要求を送信することと、sending a request for information to the messaging service;
前記要求に応じて受信された、複数の会話に関連付けられる複数の属性を示す情報を含む情報を格納することであって、前記複数の会話のそれぞれは対応するスレッドIDを有することと、storing information received in response to the request, the information including information indicative of a plurality of attributes associated with a plurality of conversations, each of the plurality of conversations having a corresponding thread ID;
前記受信された情報に基づいて、前記複数の会話の複数のインジケータを表示することと、を行わせる、and displaying a plurality of indicators of the plurality of conversations based on the received information.
コンピューティング可読指令をさらに記憶している技術案131に記載の非一時的なコンピュータ可読記憶媒体。The non-transitory computer-readable storage medium according to technical proposal 131, further storing computing-readable instructions.
[技術案133][Technical proposal 133]
前記コンピューティング装置で実行された場合、前記コンピューティング装置に少なくとも、When executed on the computing device, the computing device is provided with at least
前記複数の会話から選択された第2の会話内の複数のメッセージに対する要求を送信することと、sending a request for a plurality of messages in a second conversation selected from the plurality of conversations;
前記要求に応じて受信された、前記第2の会話内の前記複数のメッセージに関連付けられる内容を表示することと、を行わせる、displaying content associated with the plurality of messages in the second conversation received in response to the request.
コンピュータ可読指令をさらに記憶している技術案132に記載の非一時的なコンピュータ可読記憶媒体。The non-transitory computer-readable storage medium according to technical proposal 132, further storing computer-readable instructions.
[技術案134][Technical proposal 134]
前記コンピューティング装置で実行された場合、前記コンピューティング装置に少なくとも、When executed on the computing device, the computing device is provided with at least
第2の複数の会話の属性に基づいてインターフェースを生成し表示させる指令をさらに記憶しており、前記インターフェースは前記第2の複数の会話に関連付けられる2次元表示を含み、前記2次元表示における2次元は、前記第2の複数の会話に関連付けられる第1の属性と、前記第2の複数の会話に関連付けられる第2の属性とに基づく、and further storing instructions for generating and displaying an interface based on attributes of a second plurality of conversations, the interface including a two-dimensional representation associated with the second plurality of conversations, a second dimension in the two-dimensional representation being based on a first attribute associated with the second plurality of conversations and a second attribute associated with the second plurality of conversations.
技術案131に記載の非一時的なコンピュータ可読記憶媒体。A non-transitory computer-readable storage medium according to technical proposal 131.
Claims (15)
会話内の複数のメッセージを受信することと、
前記会話内のユーザ入力が、トピックを示す情報を含むと判定することと、
前記トピックを示す情報と前記会話との間の関連付けを格納することであって、前記トピックは前記会話に関連付けられた属性として格納されることと、
前記会話の複数の参加者に関連付けられた複数のメッセージングアプリケーションに前記トピックの指示をプッシュして、前記トピックの前記指示を表示することと、
前記トピックの前記指示に関連付けられる選択を示す、前記複数の参加者における第1の参加者からの入力を受け取ることに応じて、前記複数のメッセージの少なくともサブセットを表示させるために、前記複数のメッセージの前記少なくともサブセットを前記第1の参加者に関連付けられる第1のメッセージングアプリケーションに送信すること、
を含む、方法。 1. A method comprising:
Receiving multiple messages in a conversation;
determining that a user input in the conversation includes information indicative of a topic;
storing an association between information indicative of the topic and the conversation , the topic being stored as an attribute associated with the conversation ;
pushing an indication of the topic to a plurality of messaging applications associated with a plurality of participants of the conversation to display the indication of the topic;
in response to receiving an input from a first participant in the plurality of participants indicating a selection associated with the indication of the topic, sending at least the subset of the plurality of messages to a first messaging application associated with the first participant for displaying at least the subset of the plurality of messages;
A method comprising:
前記会話の前記複数の参加者を決定するために、前記少なくとも1つのデータベースにクエリすることによるルックアップを実行する、performing a lookup by querying the at least one database to determine the plurality of participants of the conversation;
請求項1に記載の方法。The method of claim 1.
前記トピックが新しいと判定すると、前記トピックを示す情報を前記データベースに格納することと、
をさらに含み、
前記トピックを示す前記情報は、前記トピックを示す文字列の少なくとも一部を含む、
請求項1に記載の方法。 determining that the topic is new by searching a database containing information related to the topic;
if the topic is determined to be new, storing information indicative of the topic in the database;
Further comprising:
the information indicating the topic includes at least a part of a character string indicating the topic;
The method of claim 1.
前記第2のユーザに前記会話へのアクセスを許可することと、
をさらに含む請求項1に記載の方法。 determining, based on analyzing a second message in the plurality of messaging applications , that the second message includes information identifying a second user;
granting the second user access to the conversation;
The method of claim 1 further comprising:
請求項4に記載の方法。 sending information indicative of the topic to a second messaging application associated with the second user to cause an indication of the topic to be displayed.
The method according to claim 4.
前記第3のメッセージを前記複数のメッセージに追加することと、
をさらに含む請求項4に記載の方法。 receiving a third message from the second user;
appending the third message to the plurality of messages;
The method of claim 4 further comprising:
請求項4に記載の方法。 and transmitting a notification to a first user device indicating the permission for the second user to access the plurality of messages.
The method according to claim 4.
請求項1に記載の方法。 The method of claim 1 , further comprising storing an association between the conversation and multiple participants of the conversation.
前記会話の前記複数の参加者を識別することと、
前記第3のメッセージを表示させるために、前記第3のメッセージを、前記複数の参加者に関連付けられる複数のメッセージングアプリケーションに送信することと、
をさらに含む請求項8に記載の方法。 receiving a third message in the conversation;
identifying the plurality of participants in the conversation;
sending the third message to a plurality of messaging applications associated with the plurality of participants for displaying the third message;
The method of claim 8 further comprising:
請求項1に記載の方法。 the character string includes an identifier for determining that the character string indicates the topic;
The method of claim 1.
第1の会話の複数の参加者に関連付けられた複数のメッセージングアプリケーションにトピックの指示をプッシュして、前記トピックの前記指示を表示することであって、前記トピックを示す情報と前記第1の会話との間の関連付けが格納され、前記トピックは前記第1の会話に関連付けられた属性として格納されることと、
前記第1の会話の第1の参加者に関連付けられるメッセージングアプリケーションから、複数のトピックの中から前記トピックを選択することを示す入力を受け取ることと、
前記第1の会話内の複数のメッセージの少なくともサブセットを表示させるために、前記第1の会話の少なくとも一部を前記メッセージングアプリケーションに送信することと
を含む、方法。 1. A method comprising:
pushing an indication of a topic to a plurality of messaging applications associated with a plurality of participants of a first conversation to display the indication of the topic, wherein an association between information indicative of the topic and the first conversation is stored, and the topic is stored as an attribute associated with the first conversation;
receiving an input from a messaging application associated with a first participant of the first conversation indicating a selection of the topic from among a plurality of topics;
sending at least a portion of the first conversation to the messaging application for displaying at least a subset of the messages in the first conversation;
A method comprising :
請求項11に記載の方法。 sending the other conversation associated with the selected topic to the messaging application for displaying at least a subset of messages in the other conversation.
The method of claim 11.
少なくとも1つのデータベースと、
前記少なくとも1つのデータベースと通信する少なくとも1つのコンピューティング装置であって、
会話内の複数のメッセージを受信することと、
前記会話内のユーザ入力が、トピックを示す情報を含むと判定することと、
前記トピックを示す情報と前記会話との間の関連付けを格納することであって、前記トピックは前記会話に関連付けられた属性として格納されることと、
前記会話の複数の参加者に関連付けられた複数のメッセージングアプリケーションに前記トピックの指示をプッシュして、前記トピックの前記指示を表示することと、
前記トピックの前記指示に関連付けられる選択を示す、前記複数の参加者における第1の参加者からの入力を受け取ることに応じて、前記複数のメッセージの少なくともサブセットを表示させるために、前記複数のメッセージの前記少なくともサブセットを前記第1の参加者に関連付けられる第1のメッセージングアプリケーションに送信すること、
を含む動作を実行するように構成された少なくとも1つのコンピューティング装置と、
を備えるシステム。 1. A system comprising:
At least one database;
at least one computing device in communication with the at least one database,
Receiving multiple messages in a conversation ;
determining that a user input in the conversation includes information indicative of a topic;
storing an association between information indicative of the topic and the conversation , the topic being stored as an attribute associated with the conversation ;
pushing an indication of the topic to a plurality of messaging applications associated with a plurality of participants of the conversation to display the indication of the topic;
in response to receiving an input from a first participant in the plurality of participants indicating a selection associated with the indication of the topic, sending at least the subset of the plurality of messages to a first messaging application associated with the first participant for displaying at least the subset of the plurality of messages;
At least one computing device configured to perform operations including:
A system comprising:
少なくとも1つのデータベースと、
前記少なくとも1つのデータベースと通信する少なくとも1つのコンピューティング装置であって、
第1の会話の複数の参加者に関連付けられた複数のメッセージングアプリケーションにトピックの指示をプッシュして、前記トピックの前記指示を表示することであって、前記トピックを示す情報と前記第1の会話との間の関連付けが格納され、前記トピックは前記第1の会話に関連付けられた属性として格納されることと、
前記第1の会話の第1の参加者に関連付けられるメッセージングアプリケーションから、複数のトピックの中から前記トピックを選択することを示す入力を受け取ることと、
前記第1の会話内の複数のメッセージの少なくともサブセットを表示させるために、前記第1の会話の少なくとも一部を前記メッセージングアプリケーションに送信することと、
を含む動作を実行するように構成された少なくとも1つのコンピューティング装置と、
を備えるシステム。 1. A system comprising:
At least one database;
at least one computing device in communication with the at least one database,
pushing an indication of a topic to a plurality of messaging applications associated with a plurality of participants of a first conversation to display the indication of the topic, wherein an association between information indicative of the topic and the first conversation is stored, and the topic is stored as an attribute associated with the first conversation;
receiving an input from a messaging application associated with a first participant of the first conversation indicating a selection of the topic from among a plurality of topics;
sending at least a portion of the first conversation to the messaging application for displaying at least a subset of messages in the first conversation;
At least one computing device configured to perform operations including:
A system comprising :
Applications Claiming Priority (13)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/939,489 | 2020-07-27 | ||
US16/939,306 | 2020-07-27 | ||
US16/939,634 | 2020-07-27 | ||
US16/939,569 US11343114B2 (en) | 2020-07-27 | 2020-07-27 | Group management in a messaging service |
US16/939,279 US11539648B2 (en) | 2020-07-27 | 2020-07-27 | Data model of a messaging service |
US16/939,489 US11645466B2 (en) | 2020-07-27 | 2020-07-27 | Categorizing conversations for a messaging service |
US16/939,569 | 2020-07-27 | ||
US16/939,491 US11922345B2 (en) | 2020-07-27 | 2020-07-27 | Task management via a messaging service |
US16/939,634 US11349800B2 (en) | 2020-07-27 | 2020-07-27 | Integration of an email, service and a messaging service |
US16/939,306 US11290409B2 (en) | 2020-07-27 | 2020-07-27 | User device messaging application for interacting with a messaging service |
US16/939,491 | 2020-07-27 | ||
US16/939,279 | 2020-07-27 | ||
PCT/CN2021/106945 WO2022022305A1 (en) | 2020-07-27 | 2021-07-16 | Messaging service |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2023535173A JP2023535173A (en) | 2023-08-16 |
JP7478898B2 true JP7478898B2 (en) | 2024-05-07 |
Family
ID=80037554
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023504037A Active JP7478898B2 (en) | 2020-07-27 | 2021-07-16 | Messaging Services |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP4176576A4 (en) |
JP (1) | JP7478898B2 (en) |
CN (1) | CN116235483A (en) |
WO (1) | WO2022022305A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116319643B (en) * | 2023-02-17 | 2024-07-19 | 北京奇艺世纪科技有限公司 | Message storage and message display method and device, electronic equipment and storage medium |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050262199A1 (en) | 2004-05-20 | 2005-11-24 | International Business Machines Corporation | System and method for in-context, topic-oriented instant messaging |
JP2014099146A (en) | 2012-10-19 | 2014-05-29 | Konami Digital Entertainment Co Ltd | Reservation support device, method for controlling reservation support device, and program of reservation support device |
US20150261773A1 (en) | 2012-07-04 | 2015-09-17 | Qatar Foundation | System and Method for Automatic Generation of Information-Rich Content from Multiple Microblogs, Each Microblog Containing Only Sparse Information |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030126089A1 (en) * | 2001-12-28 | 2003-07-03 | Fujitsu Limited | Conversation method, device, program and computer-readable recording medium on which conversation program is recorded |
US10050918B2 (en) * | 2015-03-27 | 2018-08-14 | International Business Machines Corporation | Dynamic thread management for online conversations |
CN106202085B (en) * | 2015-04-30 | 2019-08-20 | 阿里巴巴集团控股有限公司 | The method, apparatus and electronic equipment of information search are carried out according to specific subject |
US10021059B1 (en) * | 2016-05-09 | 2018-07-10 | Sanjay K. Rao | Messaging content and ad insertion in channels, group chats, and social networks |
US10585956B2 (en) * | 2017-09-20 | 2020-03-10 | International Business Machines Corporation | Media selection and display based on conversation topics |
US10951566B2 (en) | 2017-11-10 | 2021-03-16 | International Business Machines Corporation | Management of communications based on topic drift |
CN109873745B (en) * | 2017-12-01 | 2021-08-24 | 腾讯科技(深圳)有限公司 | Communication control method, communication control device and storage medium |
-
2021
- 2021-07-16 WO PCT/CN2021/106945 patent/WO2022022305A1/en unknown
- 2021-07-16 JP JP2023504037A patent/JP7478898B2/en active Active
- 2021-07-16 EP EP21851340.6A patent/EP4176576A4/en active Pending
- 2021-07-16 CN CN202180061385.0A patent/CN116235483A/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050262199A1 (en) | 2004-05-20 | 2005-11-24 | International Business Machines Corporation | System and method for in-context, topic-oriented instant messaging |
US20150261773A1 (en) | 2012-07-04 | 2015-09-17 | Qatar Foundation | System and Method for Automatic Generation of Information-Rich Content from Multiple Microblogs, Each Microblog Containing Only Sparse Information |
JP2014099146A (en) | 2012-10-19 | 2014-05-29 | Konami Digital Entertainment Co Ltd | Reservation support device, method for controlling reservation support device, and program of reservation support device |
Also Published As
Publication number | Publication date |
---|---|
EP4176576A1 (en) | 2023-05-10 |
CN116235483A (en) | 2023-06-06 |
JP2023535173A (en) | 2023-08-16 |
WO2022022305A1 (en) | 2022-02-03 |
EP4176576A4 (en) | 2024-01-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11366838B1 (en) | System and method of context-based predictive content tagging for encrypted data | |
US10462087B2 (en) | Tags in communication environments | |
US8793324B1 (en) | Discussion-topic, social network systems | |
US10896191B2 (en) | Creation of real-time conversations based on social location information | |
US9299060B2 (en) | Automatically suggesting groups based on past user interaction | |
JP5905017B2 (en) | Content sharing interface for sharing content within social networks | |
WO2018166361A1 (en) | Session filtering method and device | |
US9800529B2 (en) | Organizing conversation threads based on social information | |
US20230394395A1 (en) | Conversation-based messaging method and system | |
US11343114B2 (en) | Group management in a messaging service | |
CA2999572A1 (en) | Systems and methods for converting emails to chat conversations | |
US11722856B2 (en) | Identifying decisions and rendering decision records in a group-based communication interface | |
JP4826177B2 (en) | Program, method, and apparatus for collaborative workplace creation support | |
US11290409B2 (en) | User device messaging application for interacting with a messaging service | |
US11645466B2 (en) | Categorizing conversations for a messaging service | |
JP7478898B2 (en) | Messaging Services | |
US11349800B2 (en) | Integration of an email, service and a messaging service | |
WO2016106279A1 (en) | System and method of personalized message threading for a multi-format, multi-protocol communication system | |
US11539648B2 (en) | Data model of a messaging service | |
US11876771B2 (en) | Message display method and apparatus, computer device, storage medium, and program product | |
US11755629B1 (en) | System and method of context-based predictive content tagging for encrypted data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230119 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230119 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20231121 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240221 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20240402 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240422 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7478898 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |