(57)【特許請求の範囲】
【請求項１】
強制型グループ通信におけるコンピューティングデバイスのユーザからの応答を要請するための協調ツールを提供するための方法であって、
ユーザからの要求をコンピューティングデバイスにおいて受信するステップと、
前記要求に対する応答を要請する表示を複数のコンピューティングデバイスに描画させる勧誘メッセージを前記コンピューティングデバイスから前記複数のコンピューティングデバイスに送信するステップと、
前記要求に関連する応答メッセージを前記複数のコンピューティングデバイスのうちの少なくとも1つから前記コンピューティングデバイスにおいて受信するステップと、
前記受信された応答メッセージが前記要求を満足するかどうかを前記コンピューティングデバイスによって決定するステップと、
前記受信された応答メッセージが前記要求を満足しないと決定することに応答して、前記要求の要求された情報の満足されない部分に対応する補足要求を前記コンピューティングデバイスによって生成するステップと、
前記受信された応答メッセージが前記要求を満足すると決定することに応答して、取り消しメッセージを前記コンピューティングデバイスから前記複数のコンピューティングデバイスに送信するステップとを含み、前記取り消しメッセージが、前記要求に対する前記応答を要請する前記表示を自動的に消去するための動作を前記複数のコンピューティングデバイスに実行させるように構成される、方法。
【請求項２】
前記受信された応答メッセージが前記要求を満足すると決定することに応答して、前記要求が満足されていることを示すために、ローカルデータに対する消去動作を前記コンピューティングデバイスにおいて自動的に実行するステップをさらに含む、請求項1に記載の方法。
【請求項３】
前記要求が、前記複数のコンピューティングデバイスと関連付けられた受信者によって回答されるべき質問、または前記複数のコンピューティングデバイスと関連付けられた前記受信者によって完了されるべきタスクのうちの少なくとも1つである、請求項1に記載の方法。
【請求項４】
前記要求に対する前記応答を要請する前記表示が、前記要求に関連する応答メッセージを送信するために前記複数のコンピューティングデバイスに対して好適な応答モードを示す、請求項1に記載の方法。
【請求項５】
前記コンピューティングデバイスが、サーバまたはモバイルコンピューティングデバイスのうちの1つである、請求項1に記載の方法。
【請求項６】
前記受信された応答メッセージが前記要求を満足しないと決定することに応答して、前記補足要求に対する応答を要請する更新された勧誘メッセージを前記コンピューティングデバイスから前記複数のコンピューティングデバイスに送信するステップをさらに含む、請求項1に記載の方法。
【請求項７】
前記受信された応答メッセージが前記要求を満足しないと決定することに応答して、前記補足要求に対する応答を要請する更新された勧誘メッセージを前記コンピューティングデバイスから前記複数のコンピューティングデバイスに送信するステップが、
前記要求に関連する前記応答メッセージを送信した前記複数のコンピューティングデバイスの中のデバイスの第1のセットを、前記コンピューティングデバイスによって識別するステップと、
前記要求に対する前記応答を要請する前記表示を自動的に消去するための前記動作をデバイスの前記第1のセットに実行させるように構成された前記取り消しメッセージを前記コンピューティングデバイスからデバイスの前記第1のセットに送信するステップと、
前記要求に関連する応答メッセージを送信していない前記複数のコンピューティングデバイスの中のデバイスの第2のセットを、前記コンピューティングデバイスによって識別するステップと、
前記更新された勧誘メッセージを前記コンピューティングデバイスからデバイスの前記第2のセットに送信するステップとを含む、請求項6に記載の方法。
【請求項８】
前記要求を確証するためにデータ源から情報を取得するステップであって、前記情報が、現在時刻、位置情報、および前記要求が関連したままであるかどうかを前記コンピューティングデバイスが決定することを可能にする情報のうちの少なくとも1つを含み、前記データ源が、時間測定ユニット、位置情報の源、ローカル情報データベース、およびインターネットリソースのうちの少なくとも1つを含む、取得するステップと、
前記取得された情報に基づいて、前記要求が依然として有効であるかどうかを決定するステップとをさらに含み、
前記受信された応答メッセージが前記要求を満足すると決定することに応答して、取り消しメッセージを前記コンピューティングデバイスから前記複数のコンピューティングデバイスに送信するステップが、前記受信された応答メッセージが前記要求を満足すると決定することに応答して、または前記取得された情報に基づいて前記要求がもはや有効ではないものと決定することに応答して、取り消しメッセージを前記コンピューティングデバイスから前記複数のコンピューティングデバイスに送信するステップを含む、請求項1に記載の方法。
【請求項９】
実行されたとき請求項1乃至8の何れか1項に記載の方法を実施する動作を実行するようにプロセッサ実行可能命令で構成されたプロセッサを備えた、コンピューティングデバイス。
【請求項１０】
請求項1乃至8の何れか1項に記載の方法を実施する動作をコンピューティングデバイスのプロセッサに実行させるように構成されたプロセッサ実行可能命令を記憶した非一時的プロセッサ可読記憶媒体。
【請求項１１】
コンピューティングデバイスと、
複数のコンピューティングデバイスとを備え、
前記コンピューティングデバイスが、
ユーザから要求を受信するステップと、
前記要求に対する応答を要請する表示を前記複数のコンピューティングデバイスに描画させる勧誘メッセージを前記複数のコンピューティングデバイスに送信するステップとを含む動作を実行するように、プロセッサ実行可能命令で構成され、
前記複数のコンピューティングデバイスの各々が、
前記コンピューティングデバイスから前記勧誘メッセージを受信するステップと、
前記受信された勧誘メッセージに基づいて、前記要求に対する前記応答を要請する前記表示を描画するステップと、
前記表示を描画することに応答して、前記要求に関連するユーザ入力を受信するステップと、
前記受信されたユーザ入力を含む応答メッセージを前記コンピューティングデバイスに送信するステップとを含む動作を実行するように、プロセッサ実行可能命令で構成され、
前記コンピューティングデバイスが、
前記要求に関連する前記応答メッセージを前記複数のコンピューティングデバイスのうちの少なくとも1つから受信するステップと、
前記受信された応答メッセージが前記要求を満足するかどうかを決定するステップと、
前記受信された応答メッセージが前記要求を満足しないと決定することに応答して、前記要求の要求された情報の満足されない部分に対応する補足要求を生成するステップと、
前記受信された応答メッセージが前記要求を満足すると決定することに応答して、取り消しメッセージを前記複数のコンピューティングデバイスに送信するステップとをさらに含む動作を実行するように、プロセッサ実行可能命令で構成され、前記取り消しメッセージが、前記要求に対する前記応答を要請する前記表示を自動的に消去するための動作を前記複数のコンピューティングデバイスに実行させるように構成され、
前記複数のコンピューティングデバイスの各々が、
前記コンピューティングデバイスから前記取り消しメッセージを受信するステップと、
前記取り消しメッセージを受信することに応答して、前記要求に対する前記応答を要請する前記表示を自動的に消去するステップとをさらに含む動作を実行するように、プロセッサ実行可能命令で構成される、強制型グループ通信向け通信システム。
【請求項１２】
前記コンピューティングデバイスが、前記受信された応答メッセージが前記要求を満足すると決定することに応答して、前記要求が満足されていることを示すために、ローカルデータに対して消去動作を自動的に実行するステップをさらに含む動作を実行するように、プロセッサ実行可能命令で構成され、
前記複数のコンピューティングデバイスの各々が、
前記コンピューティングデバイスから更新された勧誘メッセージを受信するステップと、
前記更新された勧誘メッセージに基づいて、前記ユーザからの別の応答を要請するために前記表示を自動的に調整するステップとをさらに含む動作を実行するようにプロセッサ実行可能命令で構成される、請求項11に記載の通信システム。
【請求項１３】
前記複数のコンピューティングデバイスの中のデバイスの第1のセットと、
前記複数のコンピューティングデバイスの中のデバイスの第2のセットとをさらに備え、
前記受信された応答メッセージが前記要求を満足しないと決定することに応答して、前記補足要求に対する応答を要請する更新された勧誘メッセージを前記複数のコンピューティングデバイスに送信するステップが、
前記要求に関連する前記応答メッセージを送信した、前記複数のコンピューティングデバイスの中のデバイスとして、前記複数のコンピューティングデバイスの中のデバイスの前記第1のセットを識別するステップと、
前記要求に対する前記応答を要請する前記表示を自動的に消去するための前記動作をデバイスの前記第1のセットに実行させるように構成された前記取り消しメッセージをデバイスの前記第1のセットに送信するステップと、
前記要求に関連する応答メッセージを送信していない、前記複数のコンピューティングデバイスの中のデバイスとして、前記複数のコンピューティングデバイスの中のデバイスの前記第2のセットを識別するステップと、
前記更新された勧誘メッセージをデバイスの前記第2のセットに送信するステップとを含むような動作を実行するように、前記コンピューティングデバイスがプロセッサ実行可能命令で構成される、請求項12に記載の通信システム。
【請求項１４】
前記コンピューティングデバイスが、前記受信された応答メッセージに基づいて、前記要求の部分的満足を示すメッセージを前記複数のコンピューティングデバイスのうちの少なくとも1つに送信するステップをさらに含む動作を実行するように、プロセッサ実行可能命令で構成される、請求項12に記載の通信システム。
【請求項１５】
前記取り消しメッセージを受信することに応答して、前記要求に対する前記応答を要請する前記表示を自動的に消去するステップが、前記表示を非表示にするステップ、前記表示を削除するステップ、前記要求が満足されていることを示すように前記表示を調整するステップ、および前記要求が変更された優先度を有することを示すように前記表示を調整するステップのうちの1つを含むような動作を実行するように、前記複数のコンピューティングデバイスの各々がプロセッサ実行可能命令で構成される、請求項11に記載の通信システム。
【発明の詳細な説明】
【背景技術】
【０００１】
強制型のグループ通信(たとえば、プッシュツートーク、すなわち「PTT」、電子メール、MMSテキストなど)は、特に些細な話題に対して過剰に使用される場合、受信者を混乱させる場合がある。たとえば、ある質問を多くのユーザに尋ねるためにプッシュツートーク通信を使用することは、単一のユーザが十分な応答を与え得る場合には、集中を妨げ、不必要なものであり得る。別の例として、多くの受信者に電子メールを送ることは、不要なメール、受信者による面倒な不要データ消去を引き起こし、また、媒体の非同期なフォーマットにより冗長な応答をもたらし得る。既存の技法は、グループ通信に対するプレゼンス情報を使用し得るが、プレゼンス情報は、常に新しくしておくことは難しく、十分に機能しない。
【発明の概要】
【課題を解決するための手段】
【０００２】
様々な実施形態は、ユーザからの応答を要請するための協調ツールを提供するための方法、デバイス、システム、および非一時的プロセッサ可読記憶媒体を提供する。一実施形態の方法は、ユーザからの要求をコンピューティングデバイスにおいて受信するステップと、要求に対する応答を要請する表示を複数のコンピューティングデバイスに描画させる勧誘メッセージをコンピューティングデバイスから複数のコンピューティングデバイスに送信するステップと、複数のコンピューティングデバイスのうちの少なくとも1つから要求に関連する応答メッセージをコンピューティングデバイスにおいて受信するステップと、受信された応答メッセージが要求を満足するかどうかを決定するために受信された応答メッセージをコンピューティングデバイスによって評価するステップと、受信された応答メッセージが要求を満足すると決定することに応答して、取り消しメッセージをコンピューティングデバイスから複数のコンピューティングデバイスに送信するステップとに対する動作を含み得、取り消しメッセージは、要求に対する応答を要請する表示を自動的に消去するための動作を、複数のコンピューティングデバイスに実行させるように構成される。
【０００３】
一実施形態では、方法は、受信された応答メッセージが要求を満足すると決定することに応答して、要求が満足されていることを示すためにローカルデータに対する消去動作をコンピューティングデバイスにおいて自動的に実行するステップをさらに含み得る。一実施形態では、要求は、複数のコンピューティングデバイスと関連付けられた受信者によって回答されるべき質問、または複数のコンピューティングデバイスと関連付けられた受信者によって完了されるべきタスクのうちの少なくとも1つであり得る。一実施形態では、要求に対する応答を要請する表示は、要求に関連する応答メッセージを送信するために複数のコンピューティングデバイスに対して好適な応答モードを示し得る。一実施形態では、方法を実行するコンピューティングデバイスは、サーバまたはモバイルコンピューティングデバイスのうちの1つであり得る。
【０００４】
一実施形態では、方法は、受信された応答メッセージが要求を満足しないと決定することに応答して、要求の満足されなかった部分に対応する補足要求をコンピューティングデバイスによって生成するステップと、受信された応答メッセージが要求を満足しないと決定することに応答して、補足要求に対する応答を要請する更新された勧誘メッセージをコンピューティングデバイスから複数のコンピューティングデバイスに送信するステップとをさらに含み得る。一実施形態では、更新された勧誘メッセージを送信するステップは、要求に関連する応答メッセージを送信した複数のコンピューティングデバイスの中のデバイスの第1のセットをコンピューティングデバイスによって識別するステップと、要求に対する応答を要請する表示を自動的に消去するための動作をデバイスの第1のセットに実行させるように構成された取り消しメッセージをコンピューティングデバイスからデバイスの第1のセットに送信するステップと、要求に関連する応答メッセージを送信しなかった複数のコンピューティングデバイスの中のデバイスの第2のセットをコンピューティングデバイスによって識別するステップと、更新された勧誘メッセージをコンピューティングデバイスからデバイスの第2のセットに送信するステップとを含み得る。
【０００５】
一実施形態では、方法は、要求を確証するためにデータ源から情報を取得するステップと、時間ベース情報、位置情報、および要求が関連したままであるかどうかをコンピューティングデバイスが決定または推測することを可能にする情報のうちの少なくとも1つを含み得る、取得された情報に基づいて、要求が依然として有効であるかどうかを決定するステップとをさらに含み得る。データ源は、時間測定ユニット、位置情報の源(たとえば、全地球測位システム(GPS)ユニットまたは他のユニット、位置情報サービスを提供するモジュールまたはサービス)、ローカル情報データベース、およびインターネットリソースのうちの少なくとも1つを含み得る。この実施形態では、受信された応答メッセージが要求を満足すると決定することに応答して、取り消しメッセージをコンピューティングデバイスから複数のコンピューティングデバイスに送信するステップは、受信された応答メッセージが要求を満足すると決定することに応答して、または取得された情報に基づいて要求はもはや有効ではないものと決定することに応答して、取り消しメッセージをコンピューティングデバイスから複数のコンピューティングデバイスに送信するステップを含み得る。
【０００６】
さらなる実施形態は、上記で説明した方法の動作を実行するようにプロセッサ実行可能命令で構成された、サーバまたはモバイルデバイスなどのパーソナルコンピューティングデバイスであり得るコンピューティングデバイスを含む。
【０００７】
さらなる実施形態は、上記で説明した方法の動作の機能を実行するための手段を有する、サーバまたはモバイルデバイスなどのパーソナルコンピューティングデバイスであり得るコンピューティングデバイスを含む。
【０００８】
さらなる実施形態は、上記で説明した方法の動作を、サーバまたはパーソナルコンピューティングデバイスのプロセッサに実施させるように構成されたプロセッサ実行可能命令が記憶されている非一時的プロセッサ可読媒体を含む。
【０００９】
本明細書に組み込まれ、本明細書の一部を構成する添付図面は、本発明の例示的な実施形態を示し、上記の一般的な説明および以下の詳細な説明とともに、本発明の特徴を説明するのに役立つ。
【図面の簡単な説明】
【００１０】
【図１】様々な実施形態とともに使用するのに適した通信システムの構成要素ブロック図である。
【図２Ａ】受信者からの応答を要請する勧誘に関連する例示的な表示を示すコンピューティングデバイスの図である。
【図２Ｂ】受信者からの応答を要請する勧誘に関連する例示的な表示を示すコンピューティングデバイスの図である。
【図２Ｃ】受信者からの応答を要請する勧誘に関連する例示的な表示を示すコンピューティングデバイスの図である。
【図２Ｄ】受信者からの応答を要請する勧誘に関連する例示的な表示を示すコンピューティングデバイスの図である。
【図２Ｅ】受信者からの応答を要請する勧誘に関連する例示的な表示を示すコンピューティングデバイスの図である。
【図２Ｆ】受信者からの応答を要請する勧誘に関連する例示的な表示を示すコンピューティングデバイスの図である。
【図３Ａ】要求に対する応答を要請する、受信された勧誘メッセージに応答して描画された例示的な表示を示すコンピューティングデバイスの図である。
【図３Ｂ】要求に対する応答を要請する、受信された勧誘メッセージに応答して描画された例示的な表示を示すコンピューティングデバイスの図である。
【図３Ｃ】要求に対する応答を要請する、受信された勧誘メッセージに応答して描画された例示的な表示を示すコンピューティングデバイスの図である。
【図４Ａ】ユーザによって所望される応答(たとえば、情報)を要請するためのユーザから受信者コンピューティングデバイスへの要求に基づいて勧誘メッセージを送信するための、コンピューティングデバイスに対する実施形態の方法を示すプロセスフロー図である。
【図４Ｂ】ユーザによって所望される応答(たとえば、情報)を要請するためのユーザから受信者コンピューティングデバイスへの要求に基づいて勧誘メッセージを送信するための、コンピューティングデバイスに対する実施形態の方法を示すプロセスフロー図である。
【図４Ｃ】ユーザによって所望される応答(たとえば、情報)を要請するためのユーザから受信者コンピューティングデバイスへの要求に基づいて勧誘メッセージを送信するための、コンピューティングデバイスに対する実施形態の方法を示すプロセスフロー図である。
【図４Ｄ】ユーザによって所望される応答(たとえば、情報)を要請するためのユーザから受信者コンピューティングデバイスへの要求に基づいて勧誘メッセージを送信するための、コンピューティングデバイスに対する実施形態の方法を示すプロセスフロー図である。
【図４Ｅ】ユーザによって所望される応答(たとえば、情報)を要請するためのユーザから受信者コンピューティングデバイスへの要求に基づいて勧誘メッセージを送信するための、コンピューティングデバイスに対する実施形態の方法を示すプロセスフロー図である。
【図５Ａ】受信された勧誘メッセージに基づいて要求に対する応答を要請する表示を描画するための、コンピューティングデバイスに対する実施形態の方法を示すプロセスフロー図である。
【図５Ｂ】受信された勧誘メッセージに基づいて要求に対する応答を要請する表示を描画するための、コンピューティングデバイスに対する実施形態の方法を示すプロセスフロー図である。
【図６Ａ】一実施形態による、ユーザからの要求に対応する、ユーザコンピューティングデバイスと受信者コンピューティングデバイスとの間の様々な通信を示すコールフロー図である。
【図６Ｂ】一実施形態による、ユーザからの要求に対応する、ユーザコンピューティングデバイスと受信者コンピューティングデバイスとサーバコンピューティングデバイスとの間の様々な通信を示すコールフロー図である。
【図６Ｃ】一実施形態による、ユーザからの要求に対応する、ユーザコンピューティングデバイスと受信者コンピューティングデバイスとサーバコンピューティングデバイスとの間の様々な通信を示すコールフロー図である。
【図７】様々な実施形態とともに使用するのに適した例示的なラップトップコンピューティングデバイスの構成要素ブロック図である。
【図８】一実施形態において使用するのに適したモバイルコンピューティングデバイスの構成要素ブロック図である。
【図９】一実施形態において使用するのに適したサーバコンピューティングデバイスの構成要素ブロック図である。
【発明を実施するための形態】
【００１１】
添付の図面を参照しながら様々な実施形態を詳細に説明する。可能なときはいつでも、同一また同様の部分を参照するのに、図面全体を通じて同一の参照番号が使用される。特定の例および実装に対する参照は例示のためであり、本発明または特許請求の範囲を限定するものではない。
【００１２】
「例示的」という言葉は、「例、事例、または例示として役立つ」ことを意味するように本明細書において使用される。「例示的」として本明細書で説明されるいずれの実装形態も、必ずしも他の実装形態よりも好ましいか、または有利であると解釈されるべきではない。
【００１３】
本明細書では「モバイルコンピューティングデバイス」または「コンピューティングデバイス」という用語は、セルラー電話、スマートフォン(たとえば、iPhone（登録商標）)、ウェブパッド、タブレットコンピュータ、インターネット対応セルラー電話、WiFi対応電子デバイス、携帯情報端末(PDA)、ラップトップコンピュータ、パーソナルコンピュータ、および少なくとも1つのプロセッサおよびネットワークトランシーバを装備された同様の電子通信デバイスのうちの任意の1つまたはすべてを指すために使用される。様々な実施形態では、そのようなデバイスは、他のデバイスと通信するために、ワイドエリアネットワーク(WAN)またはローカルエリアネットワーク(LAN)接続(たとえば、LTE、3Gまたは4Gワイヤレスワイドエリアネットワークトランシーバ、インターネットとの有線接続、またはWiFi)を確立するためにネットワークトランシーバを含むように構成されてもよい。
【００１４】
「サーバ」という用語は、マスタ交換サーバ、ウェブサーバ、メールサーバ、ドキュメントサーバ、およびサーバ機能を実行するためにソフトウェアを用いて構成されたパーソナルまたはモバイルのコンピューティングデバイス(たとえば、「ライトサーバ」)など、サーバとして機能することが可能な任意のコンピューティングデバイスを指すのに使用される。サーバは、専用コンピューティングデバイスであっても、または(たとえば、コンピューティングデバイスをサーバとして動作させることができるアプリケーションを動作させる)サーバモジュールを含むコンピューティングデバイスであってもよい。サーバモジュール(または、サーバアプリケーション)は、全機能搭載サーバモジュールであっても、またはコンピューティングデバイス上の動的データベース間の同期サービスを実現するように構成されたライトサーバモジュールもしくは2次サーバモジュール(たとえば、ライトサーバアプリケーションまたは2次サーバアプリケーション)であってもよい。ライトサーバまたは二次サーバは、スマートフォンなどのパーソナルまたはモバイルのコンピューティングデバイス上で実施することができ、それによって本明細書において説明する機能を実現するのに必要であるような限られた程度に、パーソナルまたはモバイルのコンピューティングデバイスをインターネットサーバ(たとえば、エンタープライズ電子メールサーバ)として機能させるのを可能にするサーバ型機能のスリムダウンバージョンであってもよい。
【００１５】
以下の説明では、「ユーザコンピューティングデバイス」という用語は、要求を受信者のグループに提示するユーザによって使用されるコンピューティングデバイス(たとえば、スマートフォン、ラップトップ、など)を指すために使用され得る。「受信者コンピューティングデバイス」という用語は、ユーザの要求に関連するメッセージを交換するために、別のユーザまたは「受信者」によって使用されるコンピューティングデバイスを指すために使用され得る。ユーザコンピューティングデバイスと受信者コンピューティングデバイスの両方は、複数のコンピューティングデバイスの中にあり得る。
【００１６】
様々な実施形態は、不必要な応答または他の中断を回避するために、受信者コンピューティングデバイスにおいて動的に表示される継続的要求に対する応答をユーザが要請することを可能にするための方法、デバイス、システム、および非一時的プロセッサ可読記憶媒体を提供する。ユーザコンピューティングデバイスによって受信者コンピューティングデバイスに送信された勧誘メッセージは、受信者によって応答されるべき質問またはタスクなど、ユーザの要求を示し得る。勧誘メッセージを受信することに応答して、受信者コンピューティングデバイスは、たとえば受信者によって回答されるべき未解決の質問が存在することを示すPTTアプリケーション内のグラフィカル要素を描画することによって、ユーザの要求を示す表示を描画し得る。
【００１７】
ユーザコンピューティングデバイスは、要求が満足されている(または満たされている)かどうかを決定するために、受信者コンピューティングデバイスからの応答メッセージを処理および評価し得る。たとえば、ユーザコンピューティングデバイスは、勧誘メッセージによって提出された質問に回答する、受信された応答メッセージ内のいくつかの情報を識別するために、音声またはテキスト分析ルーチン、ソフトウェアまたは他の動作を実行し得る。応答メッセージが、要求を満足する情報を含む(たとえば、質問が、応答メッセージのテキストコンテンツなどによって十分に回答される)とき、ユーザコンピューティングデバイスは、ユーザの要求を示す表示を自動的に消去させる追加のメッセージ(すなわち、取り消しメッセージ)を受信者コンピューティングデバイスに送信し得る。たとえば、ユーザの要求が、他からの受信された応答によって完全に満足されている(たとえば、質問が回答されている)ものと決定されるとき、表示は、自動的に削除され、非表示にされ、またはさもなければ要求が満たされてもはやアクティブでないことを示すように調整され得る。別の例として、要求の期限切れ鮮度条件によってユーザの要求がもはや有効でないものと決定されるとき、要求は期限切れであることまたはもはや有効ではないことを示すように、表示が調整され得る(たとえば、「期限切れ」、「無効」、「無関係」、など)。一実施形態では、ユーザコンピューティングデバイスは、同様に、たとえば要求が完全に満足されたものと決定することに応答してローカルデータベース内のエントリを削除することによって、消去動作を自動的に実行するように構成され得る。
【００１８】
ユーザコンピューティングデバイスが、受信者コンピューティングデバイスからの受信された応答メッセージに基づいて要求が完全には満足されていないものと決定するとき、ユーザコンピューティングデバイスは、補足要求とともに更新された勧誘メッセージを送信し得る。たとえば、応答メッセージが、ユーザによって提出された初期質問に回答しないとき、ユーザコンピューティングデバイスは、前に受信された応答によって提供されなかった情報を要請するように意図された新しい、再定義された、または書き換えられた質問とともに更新された勧誘メッセージを送信し得る。そのような更新された勧誘メッセージは、受信者コンピューティングデバイス上のディスプレイが、元の要求に関連する情報を自動的に更新することを生じさせ得る。たとえば、グラフィカル要素は、元の要求は部分的に回答されたが依然として完全には満足されていないことを示すテキスト、ラベル、色などを含み得る。一実施形態では、要求は部分的に回答されていることを示すメッセージが、送信され得る。
【００１９】
一例として、ユーザは、第1の都市から第2の都市にある企業キャンパス内の建物への道順を要求する勧誘メッセージ(たとえば、「ロスアンゼルスからサンディエゴにあるキャンパスの貴社の研究室へどうしたら行けるか」)を受信する複数の受信者コンピューティングデバイスを選択し得る。勧誘メッセージを受信することに応答して、複数の受信者コンピューティングデバイスの各々は、第1の都市からキャンパスまでの道順に対するアクティブ要求を示す表示を描画し得る。ユーザコンピューティングデバイスは、第1の応答メッセージを受信し得、第1の応答メッセージのテキストに対して自然言語処理動作を実行した後、応答は、単に、第1の都市から第2の都市内のキャンパスへの道順(たとえば、「州間高速道路5に乗って出口XYZを出てキャンパスに着く」)だけを提供しており、したがって、要求を部分的に満足(または回答)しているにすぎないと決定し得る。それに応答して、ユーザコンピューティングデバイスは、第2の都市からキャンパスならびに建物自体への道順を提供するように受信者に要求する更新された勧誘メッセージ(たとえば、「キャンパスのメインゲートから貴社の研究室の建物までの道順を提供してください」)を送信し得る。更新された勧誘メッセージを受信することに応答して、複数の受信者コンピューティングデバイスの各々は、要求が、キャンパスのメインゲートから建物までの道順を要請しているにすぎないことを示すために、それらの表示を自動的に更新し得る。ユーザコンピューティングデバイスは、最終的に、キャンパスのメインゲートから建物までの歩行の道順を含む第2の応答メッセージを受信し得、ユーザコンピューティングデバイスは、取り消しメッセージをすべての受信者コンピューティングデバイスに送信し得る。それに応答して、受信者コンピューティングデバイスの各々は、クエリの表示を自動的に消去(たとえば、除去)し得る。
【００２０】
一実施形態では、勧誘メッセージはまた、要求のステータスおよび/または要求に関連するユーザのステータス/アクティビティを説明する情報など、プレゼンス指示を含み得る。たとえば、ユーザコンピューティングデバイスは、質問を同僚のグループに提出し、質問が依然として未回答であることを示すフラグを含む勧誘メッセージを送信し得る。そのようなプレゼンス指示は、条件が変化したときおよび/または応答メッセージを受信することに応答して送信される更新された勧誘メッセージなど、ユーザコンピューティングデバイスからの様々なメッセージを介して通信され得る。たとえば、ユーザコンピューティングデバイスが、メッセージに十分に回答する応答メッセージを第1の受信者コンピューティングデバイスから受信したとき、ユーザコンピューティングデバイスは、要求はもはやアクティブでない(たとえば、「満たされている」、など)ことを報告するように、第2の受信者コンピューティングデバイスの表示を変更させるメッセージを送信し得る。
【００２１】
ユーザコンピューティングデバイスは、受信者コンピューティングデバイスがいかにして要求に対して最良に応答し得るか(すなわち、好ましい応答モード)を示す勧誘メッセージを送信し得る。たとえば、ユーザコンピューティングデバイスは、応答メッセージがPTTアプリケーションまたはSMS/MMSテキストメッセージを介して送られ得ることを示すコードを含む勧誘メッセージを送信し得る。別の例として、ユーザが電話呼を開始するか、全地球測位システム(GPS)座標もしくは他の位置情報に基づいて所定の位置に入るか、またはローカルに記憶されたスケジュールもしくはカレンダー情報に基づいて「待機状態」にあるものと決定されるとき、ユーザコンピューティングデバイスは、応答メッセージはもはやPTTアプリケーションを介して送信され得ず、代わりにSMS/MMSテキストメッセージを介して送られなければならないことを示すように、受信者コンピューティングデバイス上の表示を変更させるメッセージを送信し得る。一実施形態では、受信者コンピューティングデバイス上のディスプレイは、要求に対する勧誘メッセージ内で示される現在の好ましい応答モードに基づいて動的に変化する、ボタンなどのグラフィカルユーザインターフェース(GUI)要素を含み得る。
【００２２】
一実施形態では、ユーザコンピューティングデバイスは、異なる受信者に対して異なる好ましい応答モードを含む勧誘メッセージを送信し得る。たとえば、ユーザコンピューティングデバイスは、応答メッセージはSMSテキストメッセージとしてフォーマットされるべきであることを示す、要求に対する第1の勧誘メッセージ(たとえば、「誰が今家にいるか」)を第1の受信者コンピューティングデバイスに送信し得、また、応答メッセージがPTTアプリケーション内で使用するためにフォーマットされ得ることを示す、要求に対する第2の勧誘メッセージを、第2の受信者コンピューティングデバイスに送信し得る。さらに、ユーザコンピューティングデバイスは、異なる要求に対して異なる好ましい応答モードを利用し得る。たとえば、ユーザコンピューティングデバイスは、SMSメッセージの好ましい応答モード(またはフォーマット)を示す、第1の要求に対応する第1の勧誘メッセージ(たとえば、「ホテルの住所は何か」)を送信し得、また、PTTメッセージングの好ましい応答モード(またはフォーマット)を示す、第2の要求に対応する第2の勧誘メッセージ(たとえば、「上司の名前は何か」)を送信し得る。これは、この好ましい応答モードは、同時に、様々なアクティブ要求の間で異なることがあり、またさらに、一般の通信(すなわち、アクティブ要求に関連しない通信)に対する好ましいモードと異なることがあるので関連性があり得る。
【００２３】
様々な実施形態では、勧誘メッセージ内に含まれる好ましい応答モードは、応答メッセージが、他の受信者コンピューティングデバイスに送信され得るか、またはユーザコンピューティングデバイスに排他的に送信され得るかを示し得る。たとえば、複数の受信者コンピューティングデバイスに送信された勧誘メッセージは、要求に関与するすべての受信者コンピューティングデバイスに応答をブロードキャストするのとは対照的に、すべての応答をユーザコンピューティングデバイスだけに向けるコードを含み得る。すべての受信者コンピューティングデバイスは、ユーザコンピューティングデバイスだけによって受信される応答メッセージの評価に基づいて更新され得る。言い換えれば、応答メッセージが部分的にまたは完全に要求を満足するとき、ユーザコンピューティングデバイスは、受信者コンピューティングデバイスそれぞれの表示を自動的に調整させ得る(たとえば、要求を除去する、要求を変更する、など)更新された勧誘メッセージおよび/または取り消しメッセージをすべての受信者コンピューティングデバイスに送信し得る。
【００２４】
受信者コンピューティングデバイスは、ユーザコンピューティングデバイスのプレゼンスをアクティブに追跡するように構成されていないが、代わりに、要請された要求(およびユーザについての情報)を経時的に動的に更新する勧誘メッセージを単に受信することができる。言い換えれば、パッシブプレゼンス(または「リバース」プレゼンス)方式が、様々な実施形態によって可能にされ、その実施形態では、受信者コンピューティングデバイスは、ユーザコンピューティングデバイスから勧誘メッセージを受信することに基づいて要求のステータスに効率的に登録される(subscribe)。
【００２５】
様々な実施形態の技法は、PTTアプリケーション通信、テキストメッセージング、および電子メールメッセージングなど、様々な通信プラットフォームに適用され得る。たとえば、受信者コンピューティングデバイスは、自動的に更新され、削除され、非表示にされ、またはさもなければコンピューティングデバイスからの後続の勧誘メッセージに基づいて変更され得る電子メール、テキストメッセージ、またはPTTメッセージとして勧誘メッセージを受信するように構成され得る。一実施形態では、受信者コンピューティングデバイスは、関連する要求が満足されたものとユーザコンピューティングデバイスが決定することに応答して送信された取り消しメッセージを受信することに応答して、電子メールメッセージを削除するためにリコール機能を利用し得る。
【００２６】
一実施形態では、クラウドサーバまたは中央サービスコンピューティングデバイスなどのサーバは、ユーザコンピューティングデバイスと受信者コンピューティングデバイスとの間で勧誘メッセージおよび応答メッセージを経路指定または中継するように構成され得る。さらに、サーバは、情報(たとえば、調整された/更新された要求および/または好ましい応答モード、など)をプッシュするように構成されてよく、または代替として、様々な他のコンピューティングデバイスによって周期的にアクセスされる、ローカルに記憶されたデータを更新するように構成されてもよい。言い換えれば、要求しているデバイスから初期要求を受信することに応答して、サーバは、複数の受信者コンピューティングデバイスが、サーバからこれらの要求を最終的に受信するためにポーリング機構を使用することを可能にする場合がある。たとえば、サーバは、要求が満足されたかどうかを決定するために、受信者コンピューティングデバイスによってアクセスされ得るアクティブ要求を記述する一時的コード(たとえば、ローカルに記憶されたデータフィールドへのURLまたは他のリンク、など)を利用するように構成され得る。サーバはまた、受信者コンピューティングデバイス上の表示をどのように、いつリフレッシュするかを示すコードだけでなく、アクティブ要求に関する情報にどのようにアクセスするかを示すコードを(たとえば、プッシュ通知、SMSメッセージ、などを介して)プッシュするように構成され得る。たとえば、サーバは、コードを使用するアクティブ要求の表示を、受信者コンピューティングデバイスに更新させるアプリケーションにおいて使用するようにフォーマットされたメッセージを送信し得る。
【００２７】
様々な実施形態は、ウェブページまたは他のウェブサービスを利用するように意図されていないことに留意されたい。たとえば、サーバによって受信者コンピューティングデバイスにプッシュまたは利用可能にされる、任意のローカルに記憶されたデータは、アクティブ要求に対してのみ関連したデータであると見なされるべきであり、ブラウザによって一般的に使用されるウェブページデータまたは他のコンテンツであると見なされるべきではない。
【００２８】
様々な実施形態は、それらが、回答、情報、アクション、および他のデバイスユーザからの他の応答に対する便利で中断させない要請のための協調ツールをデバイスユーザに提供し得るという点で有利である。実施形態の技法を用いると、そのような要求の動作を自動的に更新および消去することで、期限切れの、冗長な、または無関係の要請が回避され得るので、ユーザは、他からの応答のための要求を、より自由にプッシュアウトする(push out)ことができる。実施形態の技法は、電子メールに対する開封確認メッセージ、またはリモート電話サービス上の削除メッセージを使用するために知られている技法とは異なり、代わりに、ユーザからの要求が完全に満足されているものと決定されると、表示を遅滞なく除去する自動消去動作をトリガするためのメッセージングを利用する。さらに、様々な実施形態によって可能にされるフレームワークは、グループリモート補助要求など、他の拡張機能において使用され得る。
【００２９】
図1は、様々な実施形態において使用するのに適した通信システム100を示す。通信システム100は、インターネット115への接続151を有するセルラーまたは他のワイドエリアネットワーク155(たとえば、LTE、3G、CDMA、など)と関連付けられた通信タワー150(または基地局)への接続103(たとえば、ワイヤレス接続)を介して接続され得るユーザコンピューティングデバイス102(たとえば、スマートフォンモバイルコンピューティングデバイス、など)を含み得る。一実施形態では、ユーザコンピューティングデバイス102は、インターネット115への接続121を有するローカルエリアネットワーク125(またはLAN)と関連付けられたルータ120(たとえば、WiFiルータ)に、接続104を介して接続され得る。別の実施形態では、ユーザコンピューティングデバイス102は、接続181を介してインターネット115に接続される受信者コンピューティングデバイス180(たとえば、スマートフォン、など)に、近距離ワイヤレス接続105(たとえば、Bluetooth（登録商標）、Zigbee、WiFi Direct、RF、など)を介して接続され得る。通信システム100はまた、インターネット115への接続111を有するサーバコンピューティングデバイス110ばかりでなく、インターネット115への接続186を有するラップトップコンピューティングデバイス185をも含み得る。
【００３０】
受信者コンピューティングデバイス180、サーバコンピューティングデバイス110、ラップトップコンピューティングデバイス185、およびユーザコンピューティングデバイス102は、プロセッサ、メモリ、およびトランシーバ(図示せず)など、それらのそれぞれの構成要素を介して様々なアプリケーションを実行するように構成され得る。たとえば、ユーザコンピューティングデバイス102および受信者コンピューティングデバイス180は、ともに、他のデバイスと通信するために、チャットアプリケーション、電子メールクライアントアプリケーション、SMS/MMSテキスティングソフトウェア、および/またはプッシュツートーク(PTT)アプリケーションを実行するように構成され得る。
【００３１】
様々な接続を用いて、コンピューティングデバイス102、110、180、185は、たとえばインターネットプロトコルを介して、互いに通信を交換することができる。特に、ユーザコンピューティングデバイス102は、電子メール、SMS/MMSテキストメッセージ、および/またはPTT通信を介して勧誘メッセージおよび取り消しメッセージなどのメッセージを、様々な接続103、104、105を介して送信するように構成され得る。たとえば、ユーザコンピューティングデバイス102は、接続104を介してクエリ(たとえば、質問、タスク、など)に関連する勧誘メッセージをルータ120に送信し得、ルータ120は、インターネット115上で勧誘メッセージをサーバコンピューティングデバイス110に中継し得る。一実施形態では、サーバコンピューティングデバイス110は、デバイス102、180、185の間でメッセージを中継することによって、プロキシとして働くように構成され得る。別の実施形態では、サーバコンピューティングデバイス110は、たとえば勧誘メッセージ、取り消しメッセージを送信し、応答メッセージを処理することによって、要求に関連する通信を処理またはさもなければ促進するように構成された、クラウドサーバまたは他の中央サーバデバイスであり得る。たとえば、サーバコンピューティングデバイス110は、ユーザ間で要求を共有するために使用されるPTTアプリケーションと関連付けられ得る。
【００３２】
図2A〜図2Fは、受信者からの応答を要請する勧誘メッセージに関連する表示を描画するモバイルコンピューティングデバイスを示す。図2Aに示すように、ユーザコンピューティングデバイス102は、通信アプリケーションと関連付けられた連絡先(contact)のグラフィカル表現またはリストを含むそのスクリーン812上の表示202を生成するためのプッシュツートーク(PTT)アプリケーション(たとえば、Qチャット(QChat)、他)などの通信アプリケーションまたはソフトウェアを実行するように構成され得る。たとえば、表示202は、通信アプリケーションを利用するように同様に構成されたモバイルコンピューティングデバイスを有する同僚、友人および/または親族の名前および写真を有する住所録を表し得る。ユーザコンピューティングデバイス102のユーザは、要求に対する適切な受信者を見つけるために、表示202を閲覧し得る。たとえば、ユーザは、ユーザが有する質問(たとえば、「我々が月次報告をフォローアップしたかどうかを誰か知っているか」)に回答するために接触され得る従業員を見つけるために表示202を使用し得る。
【００３３】
図2Bに示すように、ユーザは、要求を満足する(たとえば、質問に回答する、タスクを行う、PTTアプリケーションを介してコールする、など)ための応答を要請する勧誘メッセージに対する受信者を選択し得る。特に、彼/彼女の指226を使用して、ユーザは、彼/彼女が要求をアドレス指定するために招きたいと欲する連絡先またはデバイスの描画されたグラフィカル要素222、223に対応するユーザ入力(たとえば、タッチ入力)を与え得る。たとえば、ユーザは、第1の連絡先(図2A〜図2Bにおいて「クリス」と呼ばれる)と関連付けられた第1のグラフィカル要素222上をタップすることによって第1の受信者を選択し、第2の連絡先(図2A〜図2Bにおいて「マーク」と呼ばれる)と関連付けられた第2のグラフィカル要素223上をタップすることによって第2の受信者を選択することができる。ユーザからの選択入力に基づいて、勧誘メッセージは、ユーザコンピューティングデバイス102によって受信者コンピューティングデバイス(すなわち、選択された受信者のコンピューティングデバイス)に送信され得る。そのような勧誘メッセージは、彼/彼女がPTTアプリケーションを介して受信者と話をするというユーザの要求を示し得る(たとえば、彼/彼女がクリスおよびマークからの連絡を欲しているとユーザが述べるなど)。様々な他の実施形態では、勧誘メッセージは、ユーザの要求についての追加の情報(たとえば、受信者によって提供されるべき特定の情報または回答、など)を含み得る。
【００３４】
図2Cに示すように、受信者コンピューティングデバイス180は、ユーザコンピューティングデバイス102から勧誘メッセージを受信することに応答して、そのスクリーン250上にアクティブ要求の表示252を描画し得る。表示252は、1つまたは多くの動的要素が受信者に提示されることを可能にするユーザインターフェースであり得る。特に、受信された勧誘メッセージに基づいて、表示252は、たとえば満足される必要のある各アクティブ要求に対するグラフィカル要素253を追加することによって自動的に更新することができる。たとえば、受信者コンピューティングデバイス180は、ユーザが、PTTアプリケーションを介してコールするための受信者を要求していることを示すグラフィカル要素253を描画し得る。一実施形態では、表示252は、チャットプログラムのためのインターフェースなど、PTTアプリケーションと関連付けられ得る。
【００３５】
図2Dに示すように、ユーザコンピューティングデバイス102は、受信者がユーザの要求に応答することに応答してPTTセッションに関与することができる。ユーザコンピューティングデバイス102は、勧誘メッセージに応答した受信者を含むPTTセッションプレゼンテーション270をスクリーン812上に描画し得る。受信者とのPTTセッションに応答して、ユーザの要求は満足され得、ユーザコンピューティングデバイス102は、要求はもはやアクティブではないことを示す取り消しメッセージを受信者コンピューティングデバイスに送信し得る。
【００３６】
取り消しメッセージを受信すると、図2Eに示すように、受信者コンピューティングデバイス180上の表示252は、要求表示要素を削除、非表示、またはさもなければ除去するために自動的に更新(または消去)され得る。代替として、図2Fに示すように、表示252は、要求がPTTセッションに基づいて満足されたことを示す、自動的に調整されるグラフィカル要素293(たとえば、「満たされた」、グレーアウト、など)を提示し得る。
【００３７】
図3A〜図3Bは、要求に対する応答を要請する勧誘メッセージを受信することに応答して、受信者コンピューティングデバイス180上に描画された例示的な表示の図である。図3Aは、受信者コンピューティングデバイス180が勧誘メッセージに関連するメッセージを完全に表示するように構成されたPTTアプリケーション(たとえば、Qチャット、など)を実行しているときに提示され得る、スクリーン250上に描画された表示302を示す。特に、表示302は、ユーザ名(たとえば、キャメロンX)、ユーザの位置、およびユーザに関連する他の条件または特性(たとえば、ユーザ付近の現在の天候、他)など、受信された勧誘メッセージを送信したユーザについての情報の表現304を含み得る。表示302は、ユーザによって提出された質問306(たとえば、「皆さん、開発とスケジュールの状況はどうですか?」)など、ユーザからの要求についての情報をさらに含み得る。表示302は、応答メッセージ(たとえば、回答を有するSMSテキストメッセージ)を送信するための第1のボタン310、および要求と関連付けられたユーザとのPTTセッションを開始するための第2のボタン308などのユーザインターフェースボタンを含み得る。一実施形態では、勧誘メッセージは、受信者コンピューティングデバイス180が、標準のPTTアプリケーションには存在しない追加のプラグインまたは他の追加の機能を用いて構成されるときに、完全に表示され得る。
【００３８】
図3Bは、受信者コンピューティングデバイス180が、受信された勧誘メッセージの完全な表示を描画することができないPTTアプリケーション(たとえば、Qチャット、など)を実行しているときに提示され得る、受信者コンピューティングデバイス180のスクリーン250上に描画される表示320を示す。特に、表示320は、要求に対する応答を要請する勧誘メッセージを送信したユーザについての情報の制限された表現322を含み得る。たとえば、表示320は、要求を発行したユーザの名前および画像だけを提示し得る。表示320は、表示320を却下するための第1のボタン326および要求と関連付けられたユーザとのPTTセッションを開始するための第2のボタン324などのユーザインターフェースボタンを含み得る。一実施形態では、そのような表示320は、受信者コンピューティングデバイス180が、PTTアプリケーションだけを用いて(すなわち、追加のプラグインが利用されずに)構成されるときに提示され得る。一実施形態では、表示320は、ポップアップダイアログボックスなどの警報であり得る。
【００３９】
図3Cは、受信者コンピューティングデバイス180が、PTTアプリケーション(たとえば、Qチャット、など)を実行するように構成されないときに提示され得る、受信者コンピューティングデバイス180のスクリーン250上に描画された別の表示350を示す。特に、表示350は、SMS/MMSテキストメッセージビューアなど、他の機能を用いて情報を描画し得る。特に、表示350は、ユーザによって提出された質問354など、ユーザからの要求についての情報ばかりでなく、要求を有する勧誘メッセージを送信したユーザについての情報の表現352を含み得る。表示350は、表示350を閉じるための第1のボタン358および要求および/または勧誘メッセージに関連するより多くの情報を閲覧するための第2のボタン356などのユーザインターフェースボタンを含み得る。
【００４０】
図4A〜図4Eは、要求に対する応答を要請する勧誘メッセージを送信するためのコンピューティングデバイスに対する実施形態の方法400、450、470、490、495を示す。簡単のために、以下の説明は、方法400、450、470、490、495の動作を実行するようなコンピューティングデバイスを参照する。しかしながら、コンピューティングデバイスは、モバイルコンピューティングデバイス(たとえば、ユーザによって利用されるスマートフォン)またはサーバ(たとえば、通信サービスまたはチャットアプリケーションと関連付けられた中央サーバ)など、任意のコンピューティングデバイスであってよいことを諒解されたい。様々な実施形態では、方法400、450、470、490、495の動作の任意の組合せが、1つまたは複数のコンピューティングデバイスによって実行され得る。たとえば、ユーザのスマートフォンのモバイルコンピューティングデバイスは、タッチスクリーン上のユーザ入力から初期クエリを受信するように構成され得、サーバは、初期クエリに基づいて勧誘メッセージを様々なデバイスに送信するように構成され得る。別の例として、受信者コンピューティングデバイスからの応答メッセージの意味またはコンテンツを決定するための評価動作は、勧誘メッセージを受信者コンピューティングデバイスに直接送信するかまたはその逆に送信するように構成されたユーザのスマートフォンのモバイルコンピューティングデバイスを用いてサーバにオフロードされ得る。
【００４１】
図4Aは、ユーザによって所望される応答(たとえば、情報、タスク、アクション、など)を要請するためのユーザから受信者コンピューティングデバイスへの要求に基づいて勧誘メッセージを送信するための、コンピューティングデバイスに対する実施形態の方法400を示す。ブロック402において、コンピューティングデバイスのプロセッサは、初期要求を受信し得る。初期要求は、ユーザからのクエリまたは質問であってよい。たとえば、初期要求は、テキストの質問「いつ会議が開始するかを誰か知っているか?」であってよい。代替として、初期要求は、タスク、目的、任務、および/またはアクションの要求であってよい。たとえば、初期要求は、同僚または友人に、事務所または部屋から品物を取り出しに行ってもらう要求を含んでよい。初期要求はまた、質問に回答する勧誘を受信すべき連絡先を住所録から選択することなど、対応する勧誘メッセージに対する予定受信者を示し得る。受信者(および受信者コンピューティングデバイス)は、図2Bを参照しながら上記で説明するように、ユーザによる選択入力に基づく場合がある。代替として、受信者は、ブロック406における動作を参照して以下で説明するように、要求のコンテンツまたは話題の分析に基づいて識別され得る。初期要求は、センサ(たとえば、マイクロフォン、カメラ、タッチスクリーンなど)を介して、周辺入力(たとえば、マウス、キーボードなどを介して)、および/またはメッセージを介してコンピューティングデバイスによって受信され得る。たとえば、コンピューティングデバイスは、バーチャルキーボードまたはソフトキーボード上のタッチ入力を介してアプリケーションに入ったテキストの質問(text interrogatory)として初期要求を受信し得る。別の例として、コンピューティングデバイスは、要求(たとえば、同僚のグループに対する質問を提出するSMSテキストメッセージなど)を含むプロプライエタリアプリケーションメッセージ、SMSテキストメッセージ、PTT音声メッセージ、電子メール、または他の通信を、別のデバイスから受信する場合がある。
【００４２】
ブロック404において、コンピューティングデバイスのプロセッサは、現在の要求を初期要求として設定し得る。設定動作は、現在の要求のコンテンツを示すために、システム変数値を調整するステップ、フラグもしくはビットを設定するステップ、または任意の他の情報を記憶するステップを含み得る。たとえば、コンピューティングデバイスは、ユーザの質問「我々のプロジェクトの状態はどうか?」を表すテキストストリングまたは音声サンプルを記憶し得る。様々な実施形態では、コンピューティングデバイスは、異なる受信者グループに対する未回答の質問またはタスクなど、各ユーザに対する複数の現在の要求を維持するように構成され得る。たとえば、コンピューティングデバイスは、ユーザの親族に対する現在未解決のクエリ、同僚に対する現在のタスク、きょうだいに対するPTTセッションへの参加についての現在の勧誘を記憶し得る。
【００４３】
ブロック406において、コンピューティングデバイスのプロセッサは、現在の要求に対する応答を要請する勧誘メッセージを複数のコンピューティングデバイス(すなわち、受信者コンピューティングデバイス)に送信し得る。勧誘メッセージは、提出されるべきユーザの目的または質問を説明するテキストなど、現在の要求の表現を含み得る。たとえば、コンピューティングデバイスがサーバであるとき、サーバは、ユーザモバイルデバイスからの送信において受信された初期要求に基づいて、勧誘メッセージを受信者コンピューティングデバイスに送信し得る。別の例として、コンピューティングデバイスがユーザのモバイルデバイスであるとき、モバイルデバイスは、勧誘メッセージを近傍のデバイスにP2P通信などを使用して送信し得る。さらに、勧誘メッセージは、受信者コンピューティングデバイスが、応答メッセージをコンピューティングデバイスに送信するために使用すべき好ましい応答モードを含み得る。たとえば、勧誘メッセージは、応答メッセージが、PTTアプリケーション、SMS/MMSテキストメッセージ、電子メール、または他のメッセージフォーマットを介して送信されるべきかどうかを示すコード、シンボル、変数、ビット、または他の情報を含み得る。好ましい応答モードはまた、IPアドレス、電話番号など、宛先アドレスまたは連絡先情報を含み得る。
【００４４】
様々な実施形態では、応答メッセージに対する好ましい応答モードは、音声呼、GPS座標、カレンダーイベント、またはユーザ入力など、コンピューティングデバイスの現在の動作または条件に基づいて、コンピューティングデバイスによって動的に決定され得る。たとえば、コンピューティングデバイスは、ローカルに記憶されるカレンダー内に示されるように、ユーザが音声呼に関与している(またはまもなく関与する予定である)とき、SMSテキストメッセージだけが応答メッセージとして送られるべきであることを、勧誘メッセージの中で示し得る。好ましい応答モードは、経時的に変化する場合があり、したがって、1つの勧誘メッセージから次の勧誘メッセージにかけて異なる場合がある。たとえば、初期の勧誘メッセージにおいて、コンピューティングデバイスは、任意のタイプの応答メッセージフォーマットが使用されてよいことを示すデータを含む場合があるが、後続の更新された勧誘メッセージ(以下で説明される)は、ユーザが彼/彼女の車内にいるときには、PTTアプリケーションメッセージだけが受け入れ可能であることを示すデータを含む場合がある。一実施形態では、位置または天候の情報など、要求を開始するコンピューティングデバイスおよび/またはユーザの条件または状態についての他の情報が、勧誘メッセージ中に含まれる場合がある。勧誘メッセージはまた、PTTアプリケーションなど、受信者コンピューティングデバイス上で実行する特定のアプリケーションとの関連を示すデータ(たとえば、メタデータ、ヘッダ情報、など)を含む場合があり、別のユーザからの要求の存在を示すデータを含む場合もある。たとえば、勧誘メッセージは、要求が受信されていることを受信者コンピューティングデバイスが認識し得るようにフォーマットされ得る。
【００４５】
コンピューティングデバイスは、ユーザ名、電話番号、IPアドレス、または受信された初期要求の中に示される他の連絡先情報に基づいて勧誘メッセージを受信者に送信し得る。たとえば、コンピューティングデバイスは、受信された初期要求の中に示されるユーザ名と関連付けられるモバイルコンピューティングデバイスに勧誘メッセージを送信し得、ユーザ名はまた、PTTアプリケーションの連絡先リストなど、ローカルに記憶される住所録の中で相互参照される。一実施形態では、コンピューティングデバイスはまた、送信された勧誘メッセージおよび/または現在の要求を識別するために、アレイ、システム変数など、ローカルデータ構造内のコードまたは他の識別子を記憶し得る。この記憶された情報は、受信者コンピューティングデバイスからの応答メッセージを識別するために着信メッセージと比較され得る。
【００４６】
勧誘メッセージは、P2P技法、インターネットプロトコル、および/または送信の任意の他の手段を介してコンピューティングデバイスによって送信され得る。たとえば、コンピューティングデバイスは、勧誘メッセージを第1の受信者コンピューティングデバイスに送信するためにBluetooth（登録商標）通信リンクを利用し得、勧誘メッセージを第2の受信者コンピューティングデバイスに送信するためにセルラーネットワークWANを利用し得る。さらに、勧誘メッセージは、様々なフォーマット、タイプ、および/または構造において構成され得る。たとえば、勧誘メッセージは、電子メール、受信者コンピューティングデバイス上で実行するソフトウェアによって利用されるプロプライエタリメッセージ(たとえば、PTTアプリケーション)、SMS/MMSテキストメッセージ、などとしてコンピューティングデバイスによって送信され得る。一実施形態では、コンピューティングデバイスは、異なるメッセージフォーマットにおける冗長メッセージを複数のコンピューティングデバイスに送信し得る。たとえば、コンピューティングデバイスは、勧誘メッセージが、最も便利にまたは効率的に受信者コンピューティングデバイスによって受信されることを確実にするために、電子メールとPTTアプリケーションメッセージの両方で勧誘メッセージを第1の受信者コンピューティングデバイスに送信し得る。
【００４７】
別の実施形態では、コンピューティングデバイスは、初期要求のコンテンツ、話題、または目的に基づいて勧誘メッセージを受信し得る受信者コンピューティングデバイスを決定し得る。言い換えれば、コンピューティングデバイスは、要求に対する応答を要請する勧誘メッセージに対して最も適切な受信者を識別するために、ユーザから受信された初期要求の中のテキスト、音声、または他の情報を処理し得る。たとえば、質問は仕事のプロジェクトに関連し、したがってユーザの記憶された連絡先リスト中の、要求に応答するのに適切であり得る同僚を識別し得るものと決定するために、コンピューティングデバイスは、初期要求の中のテキストの質問について自然言語処理を実行し得る。
【００４８】
ブロック408において、コンピューティングデバイスのプロセッサは、複数のコンピューティングデバイスのうちの1つまたは複数から応答メッセージを受信し得る。たとえば、コンピューティングデバイスは、勧誘メッセージを受信した様々な受信者コンピューティングデバイスからの着信PTTアプリケーションメッセージを識別するために着信メッセージバッファをモニタし得る。コンピューティングデバイスは、着信メッセージが、送信された勧誘メッセージおよび現在の要求に対する応答メッセージであるかどうかを決定するために着信メッセージ内のデータを評価し得る。特に、コンピューティングデバイスは、着信メッセージのメタデータまたはヘッダ情報内のコード、タイムスタンプ、識別子または他の情報と、勧誘メッセージおよび/または現在の要求に関連するローカルに記憶された情報とを比較し得る。別の実施形態では、コンピューティングデバイスは、着信メッセージのコンテンツ処理に基づいて、着信メッセージが、送信された勧誘メッセージに対応する応答メッセージであるものと決定し得る。たとえば、着信電子メールは、その電子メール内のテキストの解釈された意味に基づいて、勧誘メッセージに対する応答メッセージであるものと決定され得る(たとえば、電子メールは、勧誘メッセージの要求に対して、アドレス指定、回答、または補足を行うことができる)。
【００４９】
ブロック410において、コンピューティングデバイスのプロセッサは、受信された応答メッセージが現在の要求を満足するかどうかを決定するために受信された応答メッセージを評価し得る。コンピューティングデバイスは、受信された応答メッセージのコンテンツおよび意味を処理および解釈するために、自然言語処理および/または音声認識ルーチンなど、様々な処理ルーチンまたはソフトウェア命令を実行し得る。たとえば、コンピューティングデバイスは、受信された音声応答メッセージに対する音声テキスト化処理を実行し、取得されたテキストに対して、同じく自然言語処理ルーチンを実行し得る。別の例として、コンピューティングデバイスは、受信された電子メール応答メッセージのテキストの、文法構造、句読法、表現法、慣用的含意、文脈上の意味、および他の情報を分析するための動作を実行し得る。別の例として、コンピューティングデバイスは、受信者の受信された音声応答メッセージから意味を推測するために、言葉のピッチ、抑揚、タイミング、および発音を評価し得る。
【００５０】
コンピューティングデバイスは、応答メッセージが、本当に、現在の要求に対して適切な回答を与えるかどうかを決定するために、受信された応答メッセージの推測された意味と、勧誘メッセージによって示された現在の要求とを比較し得る。たとえば、コンピューティングデバイスは、現在の要求が、同僚からの会合の時間を要請する質問を含むときに、応答メッセージが時間(たとえば、「正午」)を含むかどうかを評価し得る。別の例として、現在の要求が電話番号を要請するとき、コンピューティングデバイスは、応答メッセージが実際に電話番号であり得る10桁を表す情報を含むかどうかを決定するために応答メッセージを評価し得る。別の例として、コンピューティングデバイスは、質問を含む現在のクエリに応答して宣言を与える代わりに、受信された応答メッセージが補足質問を提出している(たとえば、疑問符で終わるテキストを含む、など)ことを検出し得る。一例として、コンピューティングデバイスは、第1の質問「誰が事務所にいるのか?」を提出する現在の要求が、第2の質問「あなたはどちらの事務所について話しているのか?」を含む応答メッセージによって満足されないものと決定し得る。一実施形態では、コンピューティングデバイスは、アクションを実行するための受信者に対する現在の要求が首尾よく完了したかどうかを決定するために応答メッセージを評価し得る。たとえば、現在の要求が、同僚に事務所から文書を取り出させる指示であるとき、コンピューティングデバイスは、事務所のドアがロックされていることを示す応答メッセージ(たとえば、「ごめん、ドアがロックされていて入れない。」)が、現在の要求を満足しないと決定し得る。
【００５１】
評価に基づいて、決定ブロック412において、コンピューティングデバイスのプロセッサは、現在の要求が受信された応答メッセージによって完全に満足されるかどうかを決定し得る。現在の要求が受信された応答メッセージによって完全には満足(または回答)されないことが決定される場合(すなわち、決定ブロック412=「No」)、ブロック414において、コンピューティングデバイスのプロセッサは、現在の要求の満足されない(または回答されない)部分に対応する補足要求を生成し得る。言い換えれば、補足要求は、受信者から追加の情報、アクション、または応答を要請するための追加のクエリ、ステートメント、および/または命令を含み得る。たとえば、送信された勧誘メッセージによって示される現在の要求が2部の質問(たとえば、「誰が事務所内にいて、あなたはどれほど長くその辺にいるか?」)を含んでおり、応答メッセージは1部だけに回答した(たとえば、「私はここにいる。」)ものとコンピューティングデバイスが決定したとき、コンピューティングデバイスは、受信者に対して、欠落した回答を要請する補足質問(たとえば、「了解、どれほど長くあなたはそこにいるのか?」)を生成し得る。別の例として、現在の要求がタスク(たとえば、「どうか、私の事務所からファイルを持ってきて。」)を含み、受信された応答メッセージがタスクを満足しない(たとえば、「ごめん、事務所はロックされている。」)ものとコンピューティングデバイスが決定するとき、コンピューティングデバイスは、補足タスク(たとえば、「了解、どうか、事務所のキーを持っているはずの事務所管理者に会って、ファイルを持ってきて。」)を生成し得る。
【００５２】
ブロック416において、コンピューティングデバイスのプロセッサは、たとえばシステム変数または現在の要求を示す他の記憶された情報を更新することによって、現在の要求を補足要求として設定し得る。随意のブロック418において、コンピューティングデバイスのプロセッサは、受信された応答メッセージに基づいて部分的満足を示すメッセージをユーザデバイスに送信し得る。たとえば、応答メッセージは受信されたが、現在の要求によって提出された質問に対して部分的な回答しか含まれていなかったものとコンピューティングデバイスが決定すると、部分的回答は、ディスプレイ上に描画され得るか、または通信(たとえば、電子メール、SMS/MMSテキストメッセージ、音声メッセージ、またはPTTアプリケーションメッセージ)として送信され得る。様々な実施形態では、ユーザデバイスは、コンピューティングデバイス自体(たとえば、コンピューティングデバイスがディスプレイ上にメッセージを描画し得る)、受信者コンピューティングデバイス、またはサーバであってよい。次いで、コンピューティングデバイスは、新しい現在の要求を示す次の(または更新された)勧誘メッセージを送信するためにブロック406における動作を継続し得る。
【００５３】
現在の要求が受信された応答メッセージによって完全に満足されることが決定される場合(すなわち、決定ブロック412=「Yes」)、ブロック420において、コンピューティングデバイスのプロセッサは、現在の要求に対する応答を要請する表示を消去(たとえば、除去)するようにデバイスに指示するデータを含む取り消しメッセージを複数のコンピューティングデバイスに送信し得る。言い換えれば、コンピューティングデバイスは、勧誘メッセージを受信した受信者コンピューティングデバイスに、それらのそれぞれの表示を除去、削除、非表示、またはさもなければ調整する消去動作を実行させるメッセージを送信し得る。たとえば、取り消しメッセージは、現在の要求と関連付けられたデータベースおよび/またはグラフィカル要素におけるエントリを自動的に削除、非表示、または調整するために受信者コンピューティングデバイス上で実行するアプリケーションによって使用され得るコード、スクリプト、または他のデータを含み得る。このようにして、受信者コンピューティングデバイスは、受信者ユーザに、すでに満足された現在の要求に対して働くかまたはさもなければ応答することを行わせるインジケータを除去するように指示され得る。様々な実施形態では、ブロック420における動作とともに送信された取り消しメッセージはまた、現在の要求の完全な満足に関連する回答または他の情報を含み得る。たとえば、すべての受信者コンピューティングデバイスは、現在の要求を「完了」または「満足」とマークするためのコードとともに、現在の要求の質問に対する回答を受信し得る。
【００５４】
随意のブロック422において、コンピューティングデバイスのプロセッサは、現在の要求が完全に満足されていることを示すために、ローカルデータに対する消去動作を自動的に実行し得る。随意のブロック422における動作は、コンピューティングデバイスが、様々なデバイスに供給され得る現在の要求と関連付けられたデータを記憶するように構成されるときに利用され得る。たとえば、コンピューティングデバイスは、現在の要求と関連付けられたデータベースおよび/またはグラフィカル要素におけるエントリを除去、非表示、または調整し得る。一実施形態では、コンピューティングデバイスがサーバであるとき、随意のブロック422における動作は、受信者コンピューティングデバイスによって周期的にプッシュまたはダウンロードされる情報を更新するステップを含み得る。たとえば、コンピューティングデバイスは、現在の要求に対応するステータスデータを無効化、削除、またはさもなければゼロ設定し得、それによって現在の要求が受信者コンピューティングデバイスユーザに表示、またはさもなければ示されることを無効にする。ブロック424において、コンピューティングデバイスのプロセッサは、受信された応答メッセージに基づいて要求が完全に満足されたことを示すメッセージをユーザデバイスに送信し得る。たとえば、応答メッセージは受信され、現在の要求において提出された質問に完全に回答されたものとコンピューティングデバイスが決定すると、回答は、ディスプレイ上に描画され得るか、または通信(たとえば、または電子メール、SMS/MMSテキストメッセージ、音声メッセージ、またはPTTアプリケーションメッセージ)として送信され得る。
【００５５】
図4Bは、ユーザによって所望される応答(たとえば、情報、タスク、アクション、など)を要請するためのユーザから受信者コンピューティングデバイスへの要求に基づいて勧誘メッセージを送信するための、コンピューティングデバイスに対する実施形態の方法450を示す。方法450は、勧誘メッセージに応答した受信者コンピューティングデバイスと勧誘メッセージに応答しなかった受信者コンピューティングデバイスとの間を区別するための動作を含み、それによってコンピューティングデバイスが、元の要求に応答しなかったそれらのデバイスだけに更新された勧誘メッセージを送信することができる点を除いて、方法450は、上記で説明した方法400と同様である。このようにして、すでに表されたか、またはすでに要求に関与した受信者に対する冗長メッセージが回避され得る。たとえば、ユーザが、彼の仕事の同僚から何らかの情報(たとえば、「サンドイッチを持ってくる男の名前は何だったか?」)を要望するとき、不確定な情報(たとえば、「思い出せない」、「確かそれは「S」で始まる」)で返答する勧誘メッセージの受信者は、再び連絡されることはない。
【００５６】
上記で説明したように、ブロック402において、コンピューティングデバイスのプロセッサは、初期要求を受信し得る。ブロック404において、コンピューティングデバイスのプロセッサは、現在の要求を初期要求として設定し得る。ブロック406において、コンピューティングデバイスのプロセッサは、現在の要求に対する応答を要請する勧誘メッセージを複数のコンピューティングデバイス(すなわち、受信者コンピューティングデバイス)に送信し得る。ブロック408において、コンピューティングデバイスのプロセッサは、複数のコンピューティングデバイスのうちの1つまたは複数から応答メッセージを受信し得る。ブロック410において、コンピューティングデバイスのプロセッサは、受信された応答メッセージが現在の要求を満足するかどうかを決定するために受信された応答メッセージを評価し得る。
【００５７】
評価に基づいて、決定ブロック412において、コンピューティングデバイスのプロセッサは、現在の要求が受信された応答メッセージによって完全に満足されるかどうかを決定し得る。現在の要求が受信された応答メッセージによって完全には満足(または回答)されないことが決定される場合(すなわち、決定ブロック412=「No」)、ブロック414において、コンピューティングデバイスのプロセッサは、現在の要求の満足されない(または回答されない)部分に対応する補足要求を生成し得る。ブロック416において、コンピューティングデバイスのプロセッサは、たとえばシステム変数または現在の要求を示す他の記憶された情報を更新することによって、現在の要求を補足要求として設定し得る。随意のブロック418において、コンピューティングデバイスのプロセッサは、受信された応答メッセージに基づいて部分的満足を示すメッセージをユーザデバイスに送信し得る。
【００５８】
随意のブロック452において、コンピューティングデバイスのプロセッサは、現在の要求に対する応答メッセージを送信した複数のコンピューティングデバイスにおけるデバイスの第1のセットを識別し得る。たとえば、コンピューティングデバイスは、現在の要求に対して受信された応答メッセージと関連付けられる受信者コンピューティングデバイスの識別子のリストを識別し得る。随意のブロック454において、コンピューティングデバイスのプロセッサは、現在の要求に対する応答を要請する表示を消去する(たとえば、除去する)ようにデバイスの第1のセットに指示するデータを含む取り消しメッセージをデバイスの第1のセットに送信し得る。たとえば、デバイスの第1のセットが、現在の要求に回答しない応答メッセージ(たとえば、「すまないが、私は回答を知らない。」)と関連付けられるとき、コンピューティングデバイスは、これらのデバイスを、現在の要求に関連するさらなる通信から除去し、それらの表示から現在の要求を自動的に非表示にするかまたは削除するようにそれらのデバイスに指示することができる。
【００５９】
一実施形態では、コンピューティングデバイスはまた、デバイスの第1のセットから応答メッセージを受信することに応答して、デバイスの第1のセットに関連してローカルに記憶されたデータに対して自動消去動作を実行するように構成され得る。たとえば、現在の要求がその受信者に対して有効でないことを示す応答メッセージを受信者コンピューティングデバイスが送信するとき、コンピューティングデバイスは、その受信者に対して記憶された通知を除去すること、および/またはその受信者が現在の要求に対する受信者のリスト上にもはや載っていないことを示すようにデータ表を更新することを行い得る。これは、勧誘メッセージがある受信者デバイスに誤って送られた(たとえば、受信者がビジネス関連の質問に適切でない連絡先である、受信者が現在の要求に関連する建物の中にもはやいない、など)ことを示す応答メッセージが受信されたときに、有益であり得る。
【００６０】
ブロック456において、コンピューティングデバイスのプロセッサは、現在の要求に対する応答メッセージを送信しなかった複数のコンピューティングデバイスにおけるデバイスの第2のセットを識別し、ブロック458において、現在の要求に対する応答を要請する更新された勧誘メッセージをデバイスの第2のセットに送信することができる。たとえば、更新された勧誘メッセージは、それらが何らかの情報を知っているかどうかをいまだ応答していないそれらの連絡先に送られ得る。加えて、更新された勧誘メッセージは、デバイスの第1のセットからすでに受信されている応答メッセージに基づいて決定された関連した結論または追加の情報を含み得る。たとえば、更新された勧誘メッセージは、部分的応答を提示し、現在の要求の反復(たとえば、「皆さん、私たちは、サンドイッチ男の名前を「S」で始まる名前にまで絞り込んだが、依然としてその名前はわからない。どうか助けて!」)を行うことができる。次いで、コンピューティングデバイスは、更新された勧誘メッセージに応答する後続の応答メッセージを受信するためにブロック408における動作を継続し得る。
【００６１】
現在の要求が受信された応答メッセージによって完全に満足されることが決定される場合(すなわち、決定ブロック412=「Yes」)、ブロック420において、コンピューティングデバイスのプロセッサは、現在の要求に対する応答を要請する表示を消去(たとえば、除去)するようにデバイスに指示するデータを含む取り消しメッセージを複数のコンピューティングデバイスに送信し得る。随意のブロック422において、コンピューティングデバイスのプロセッサは、現在の要求が完全に満足されたことを示すために、ローカルデータに対する消去動作を自動的に実行し得る。ブロック424において、コンピューティングデバイスのプロセッサは、受信された応答メッセージに基づいて要求が完全に満足されたことを示すメッセージをユーザデバイスに送信し得る。
【００６２】
図4Cは、ユーザによって所望される応答(たとえば、情報、タスク、アクション、など)を要請するためのユーザから受信者コンピューティングデバイスへの要求に基づいて勧誘メッセージを送信するための、コンピューティングデバイスに対する実施形態の方法470を示す。それらの応答メッセージに基づいて受信者が現在の要求(たとえば、クエリ)を調整することを可能にする動作を方法470が含み得ることを除いて、方法470は、上記で説明した方法400と同様である。たとえば、同僚に事務所からファイルを持ってこさせる要求に応答して、応答メッセージは、「事務所のキーはどこにあるのか?」という質問を含み得る。そのような応答に基づいて、コンピューティングデバイスは、前の応答によって提起された質問を含めるように要求を調整し得る。
【００６３】
上記で説明したように、ブロック402において、コンピューティングデバイスのプロセッサは、初期要求を受信し得る。ブロック404において、コンピューティングデバイスのプロセッサは、現在の要求を初期要求として設定し得る。ブロック406において、コンピューティングデバイスのプロセッサは、現在の要求に対する応答を要請する勧誘メッセージを複数のコンピューティングデバイス(すなわち、受信者コンピューティングデバイス)に送信し得る。ブロック408において、コンピューティングデバイスのプロセッサは、複数のコンピューティングデバイスのうちの1つまたは複数から応答メッセージを受信し得る。
【００６４】
決定ブロック472において、コンピューティングデバイスのプロセッサは、追加の要求(たとえば、質問、タスク、など)が受信された応答メッセージ中に含まれるかどうかを決定し得る。たとえば、コンピューティングデバイスは、句読法またはスピーチの抑揚(たとえば、「私は助けることができるが、あなたは事務所のドアのキーを持っているの?」)に基づいて質問を検出するために、テキストまたは音声応答を分析し得る。別の例として、コンピューティングデバイスは、彼/彼女が、現在の要求を満足するための追加の情報または支援を必要としている(たとえば、「私は私のために事務所をロック解除する人を必要としている。」)ことを示しているかどうかを決定するために、受信されたPTTメッセージに対する自然言語処理を実行し得る。受信された応答メッセージ中に追加の要求があるものと決定される場合(すなわち、決定ブロック472=「Yes」)、ブロック474において、コンピューティングデバイスのプロセッサは、受信された応答メッセージからの追加の要求を含めるように現在の要求を調整し得る。言い換えれば、コンピューティングデバイスは、追加の制限、質問、タスクなどを現在の要求に添付し得る。たとえば、事務所のドアがロックされていることを示す応答メッセージに基づいて、コンピューティングデバイスは、誰かが事務所のドアをロック解除するタスクを同様に含めるために、同僚に事務所からファイルを取り出させる現在の要求を調整し得る。このようにして、現在の要求によって要請されるクエリ、質問、タスク、および他の情報の範囲は、応答によって修正され得る。
【００６５】
一例として、ユーザからの初期要求は、同僚に事務所内のコンピュータを起動させるタスクであり得る。コンピューティングデバイスによって送信された関連する勧誘メッセージに応答する第1の応答メッセージは、事務所がロックされていてキーが必要である(たとえば、「誰が事務所のキーを持っているか?」)ことを示し得る。第2の応答メッセージは、受信者がコンピュータの起動の仕方を知らないが、彼は他の人たちが事務所に入るのを助けることができる(たとえば、「ごめん、私はコンピュータについて何もわからないが、誰かがキーを必要とするならば、私は事務所のキーを持っている。」)ことを示し得る。次いで、コンピューティングデバイスは、同僚に、事務所をロック解除することとコンピュータファイルを取り出すことの両方を行うように要求する(たとえば、「トム、あなたはキーを持っているので、事務所でジャックに会ってほしい、そうすれば彼がコンピュータを起動できる。」)ように現在の要求を調整し得る。
【００６６】
受信された応答メッセージ中に追加の要求がないことが決定される(すなわち、決定ブロック472=「No」)かまたはブロック474における動作がすでに実行された場合、ブロック410において、コンピューティングデバイスのプロセッサは、受信された応答メッセージが現在の要求を満足するかどうかを決定するために、受信された応答メッセージを評価し得る。評価に基づいて、決定ブロック412において、コンピューティングデバイスのプロセッサは、現在の要求が受信された応答メッセージによって完全に満足されるかどうかを決定し得る。現在の要求が受信された応答メッセージによって完全には満足(または回答)されないことが決定される場合(すなわち、決定ブロック412=「No」)、ブロック414において、コンピューティングデバイスのプロセッサは、現在の要求の満足(または回答)されない部分に対応する補足要求を生成し得る。ブロック416において、コンピューティングデバイスのプロセッサは、たとえばシステム変数または現在の要求を示す他の記憶された情報を更新することによって、現在の要求を補足要求として設定し得る。随意のブロック418において、コンピューティングデバイスのプロセッサは、受信された応答メッセージに基づいて部分的満足を示すメッセージをユーザデバイスに送信し得る。次いで、コンピューティングデバイスは、新しい現在の要求を示す次の(または更新された)勧誘メッセージを送信するためにブロック406における動作を継続し得る。
【００６７】
現在の要求が受信された応答メッセージによって完全に満足されることが決定される場合(すなわち、決定ブロック412=「Yes」)、ブロック420において、コンピューティングデバイスのプロセッサは、現在の要求に対する応答を要請する表示を消去(たとえば、除去)するようにデバイスに指示するデータを含む取り消しメッセージを複数のコンピューティングデバイスに送信し得る。随意のブロック422において、コンピューティングデバイスのプロセッサは、現在の要求が完全に満足されたことを示すために、ローカルデータに対する消去動作を自動的に実行し得る。ブロック424において、コンピューティングデバイスのプロセッサは、受信された応答メッセージに基づいて要求が完全に満足されたことを示すメッセージをユーザデバイスに送信し得る。
【００６８】
図4Dは、ユーザによって所望される応答(たとえば、情報、タスク、アクション、など)を要請するためのユーザから受信者コンピューティングデバイスへの要求に基づいて勧誘メッセージを送信するための、コンピューティングデバイスに対する実施形態の方法490を示す。有効でなくなる現在の要求を終了させるための動作を方法490が含み得る点を除いて、方法490は、上記で説明した方法400と同様である。たとえば、現在の要求は、午後4時のフライトのためにユーザを空港に送ることを進んで行うことを親族に要求することを含み、現在時刻が午後5時であるとき、現在の要求は、もはや有効ではなく、したがって受信者コンピューティングデバイスの表示から自動的に除去され得る。言い換えれば、満たされた(または満足された)要求を取り扱うことに加えて、方法490は、特に、関連する応答がコンピューティングデバイスにおいて受信されていないときに、無効、無関係、期限切れ、および/または無意味である要求に関連して、自動的消去動作をトリガすることを実行され得る。
【００６９】
上記で説明したように、ブロック402において、コンピューティングデバイスのプロセッサは、初期要求を受信し得る。初期要求は、タッチ入力を介してアプリケーションに入力されるテキストの質問など、ユーザからのクエリまたは質問であり得る。ブロック404において、コンピューティングデバイスのプロセッサは、現在の要求を初期要求として設定し得る。ブロック406において、コンピューティングデバイスのプロセッサは、現在の要求に対する応答を要請する勧誘メッセージを複数のコンピューティングデバイス(すなわち、受信者コンピューティングデバイス)に送信し得る。
【００７０】
ブロック491において、コンピューティングデバイスのプロセッサは、時間測定ユニット、位置情報源(たとえば、GPSユニット、または位置情報サービスを提供する他のユニット、モジュールもしくはサービス)、ローカル情報データベース、および/またはインターネットリソースからなど、現在の要求の確証に使用するためにデータ源から情報を取得し得る。たとえば、コンピューティングデバイスは、ローカルに記憶されたデータ(たとえば、記憶されたカレンダー、住所録、電子メールクライアントに関連するデータ、記憶されたテキストメッセージ、ソーシャルネットワーキングプロファイルデータ、など)にアクセスすること、および/またはインターネットを介して様々なウェブサイトからデータを取り出すための動作を実行することができる。関連した情報もまた、タッチスクリーン上のタッチ入力など、ユーザ入力を介して取得され得る。さらに、現在の要求に対する質問、ステートメント、または他の情報の意味を決定するために、たとえば電子メールまたはSMSのテキストメッセージに対して自然言語処理ルーチンを実行することによって、現在の要求および/または勧誘メッセージのコンテンツを処理することに基づいて、情報が取得され得る。たとえば、現在の要求が「誰が正午に事務所にいるか?」を尋ねるとき、コンピューティングデバイスは、要求が、現在時刻に基づいて依然として有効であるかどうかを決定するために、時間測定ユニット(たとえば、システムクロック、など)から現在時刻を取得し得る。この例では、コンピューティングデバイスは、正午過ぎの何らかの時刻までにはその要求はもはや関連性がないので、その要求をその時刻に自動的に消去または削除し得る。
【００７１】
一実施形態では、コンピューティングデバイスは、現在の要求に基づいて自然言語またはキーワードクエリを提出し、現在の要求の継続的な関連性を確証または決定するのに使用され得るデータを取り出すために、Google(登録商標)、Bing(登録商標)など、ウェブ検索形式を利用するように構成され得る。たとえば、現在の要求が、スポーツのチームについての意見(たとえば、「Xチームは彼らのコーチを解雇すべきだと誰が思っているのか?」)を友人(すなわち、受信者)に尋ねるとき、コンピューティングデバイスは、スポーツチームについてのキーワード(たとえば、「コーチ」、「解雇」、「Xチーム」、など)を使用するインターネット探索を提出し、現在の要求に対する関連した任意の探索結果(たとえば、チームまたはコーチについての記事、など)を評価することができる。この実施形態では、コンピューティングデバイスは、たとえばソースウェブサイトを知られているかまたは信頼できるウェブサイトアドレスと比較することによって、インターネット探索を介して取得された任意のデータの信ぴょう性を査定するために、任意の探索結果を処理するための追加の動作を実行し得る。たとえば、コンピューティングデバイスは、スポーツニュースウェブサイトまたはスポーツチーム自体の公式ウェブサイトのような、検証されたスポーツ源から来る、スポーツチームに関連するデータに対する記事だけを分析し得る。一実施形態では、コンピューティングデバイスは、現在の要求の有効性を決定するために評価され得るニュースフィードまたは他のライブデータをダウンロードすることができる。たとえば、コンピューティングデバイスは、近い将来に行われるフットボールの試合に関連する現在の要求の中の言語を解釈することに応答して、デジタルテレビジョンガイドおよび/またはニュース放送にアクセスおよび/またはダウンロードすることができる。
【００７２】
決定ブロック492において、コンピューティングデバイスのプロセッサは、たとえばウェブ検索から取得された情報を使用することによって、現在の要求が依然として有効であるかどうかを決定し得る。言い換えれば、コンピューティングデバイスは、現在の要求は非現実的か、またはさもなければ現在の要求とともに勧誘メッセージを受信した受信者コンピューティングデバイスによって適切に満足もしくは回答され得ないかを決定するために、ウェブ検索から取得された情報を現在の要求に対して評価し得る。言い換えれば、コンピューティングデバイスは、ユーザが依然として満足されるべき要求を必要としているかどうかを決定するために、現在の要求中に含まれる質問またはタスクの条件または詳細を評価し得る。たとえば、提出された質問が目下非現実的かまたは回答が目下公然の知識であることがウェブ検索で明らかになった場合、コンピューティングデバイスは、現在の要求はもはや有効でないものと推断し、受信者コンピューティングデバイスにおいて自動的消去動作を実行させる(たとえば、「期限切れ」インジケータを表示する、など)。
【００７３】
決定ブロック492における動作では、コンピューティングデバイスは、要求、勧誘メッセージ、および/または応答メッセージ中の言語または文脈上の情報を解釈し、要求が依然としてフレッシュまたはさもなければ有効であるかどうかを決定(または推測)するために取得された情報と比較されるべき語法、コード、および/またはシンボルを識別することができる。たとえば、コンピューティングデバイスは、今度の会議に関連する現在の要求が、その会議に対してアクティブなカレンダー事象(calendar event)が存在するときに依然として有効であるものと決定するために、記憶されたカレンダー(たとえば、ビジネス予定表、他)など、ユーザに関連するローカルに記憶されたまたはアクセス可能なデータを評価し得る。別の例として、コンピューティングデバイスは、「却下」機能に対応するPTTアプリケーション中のグラフィカル要素上のタッチ入力など、後で受信されたユーザ入力が、現在の要求はもはや有効でないこと、またはユーザは現在の要求を満足することをもはや望んでいないことを示しているものと決定し得る。
【００７４】
様々な実施形態では、コンピューティングデバイスは、有効性の決定を行うときに、現在の要求中に包含または含意された時間的制約のある(または時間ベースの)条件または要因を利用し得る。特に、コンピューティングデバイスは、現在の要求が時刻または日に対して関連があるかまたはそれに依存するかどうかをその言語(たとえば、時刻、日、週、月などへの口頭またはテキストの言及)上で決定し、現在の要求が依然として有効であるかどうかを決定するために、取得された情報(たとえば、システムクロックからの現在時刻、など)からの現在時刻データを比較することができる。たとえば、要求はある時刻より前の情報を要求している(たとえば、「今朝何時に会議が始まるか?」)ことと、時刻はすでに過ぎている(たとえば、現在時刻はすでに午後2時である)ことの両方を決定することに応答して、要求は無効であるものとコンピューティングデバイスが決定し得、受信者コンピューティングデバイスにおいて自動的消去動作を実行させる(たとえば、「期限切れ」インジケータを表示する、など)。別の例として、現在の要求が「誰か、今日私と一緒に昼食に行きたいか?」と尋ねるとき、現在時刻が典型的な昼食時間を過ぎている(たとえば、現在正午を数分/数時間過ぎている)ものとコンピューティングデバイスが決定するとき、現在の要求は無効であるものとコンピューティングデバイスは決定し得る。そのような時間的制約のある条件は、限定的な時刻(たとえば、午後1時、他)など、明確な時刻表または終点を含まないが、代わりに、制約のないイベントに関連する場合がある。たとえば、「今夜の大きなフットボールの試合で誰が勝つだろうか?」と友人に訪ねる現在の要求は、フットボールの試合はそれらの予定された終了時刻を過ぎて継続することが多いので、確定できない期間の間、有効である場合がある。このようにして、コンピューティングデバイスは、要求の時間ベースの品質、特性、質問、または他の要素が、応答メッセージなしに時間とともに受動的に解決されているかどうかに基づいて、要求を無効にするかまたはさもなければ閉じるように構成され得る。
【００７５】
一実施形態では、有効性の決定は、受信された初期要求および/または他のユーザ入力中に含まれるなど、現在の要求と関連付けられた生存時間(time-to-live)(TTL)情報を利用し得る。たとえば、初期要求は、新鮮さしきい値、または秒、分、日などの量を含み得、その間に、コンピューティングデバイスは、応答メッセージを受信し、現在の要求を満足することを継続し得る。別の例として、ユーザ定義のTTL条件(たとえば、タッチ入力などを介する)は、要求を満足する任意の応答メッセージを受信する前に期限が切れており、要求はもはや有効でない(たとえば、「期限が切れている」)ものと、コンピューティングデバイスに決定させる場合がある。
【００７６】
様々な実施形態では、コンピューティングデバイスは、有効性の決定を行うときに要求が関連したままであるかどうかをコンピューティングデバイスが決定することを可能にする、様々なデータ源から取得された情報に対して、現在の要求中に含まれる妥当性、および文脈上の条件または要因を評価し得る。たとえば、「チームは彼らのコーチを解雇すると誰が思っているのか?」と友人に尋ねる現在の要求の言語分析に基づいて、コンピューティングデバイスは、コーチはすでに解雇されたか、すでに新しい契約に署名したか、などを決定するために、ニュースフィードおよび/または自動インターネット検索を介して取得されたニュース記事またはプレスリリース中のチームおよび/またはコーチについての情報を比較し得る。
【００７７】
様々な実施形態では、コンピューティングデバイスは、有効性の決定を行うときに、現在の要求の位置ベースの条件または要因を利用し得る。特に、コンピューティングデバイスは、現在の要求が位置に関連または依存するかどうかを決定し得、この決定は、要求の言語(たとえば、所在地住所に対する口頭またはテキストの言及、知られている位置の名前、GPS座標、など)、または要求と関連付けられ他のデータ(たとえば、ユーザ定義のGPSマーカまたは他の地理的位置情報)に基づいて行われる。コンピューティングデバイスは、現在の要求が依然として有効であるかどうかを決定するために、位置の源から取得された情報からの現在の位置データ(たとえば、コンピューティングデバイス内のGPSユニットからの、またはGPSを使用しない位置情報源からの現在のGPS座標、など)を比較し得る。たとえば、友人にショッピングモールにおいて要求元と会ってもらうという現在の要求を無効にするために、コンピューティングデバイスがモールから離れて移動し始めたかどうかを決定するために、コンピューティングデバイスは、位置追跡ソフトウェアをポーリングし得る。別の例として、コンピューティングデバイスがサーバであるとき、サーバは、初期要求メッセージを介して現在の要求の要求元のGPS座標を受信し得、現在の有効性(たとえば、要求元の現在位置が、依然として彼/彼女が他の人たちと一緒に昼食を食べたいと思っている街の中にいるのか?)を決定するために、それらの座標と現在の要求とを比較し得る。要求が位置関連条件を有するとき、時間制限はないが、代わりに、現在の要求を確証するかまたは無効にするために、位置追跡がコンピューティングデバイスによって使用され得る。
【００７８】
時間ベースの条件または応答など、要求および/または応答メッセージ中の情報の任意のタイプまたは組合せは、現在の要求の有効性を決定するために、決定ブロック492における動作の一部としてコンピューティングデバイスによって評価され得ることを諒解されたい。
【００７９】
現在の要求が依然として有効であるものとコンピューティングデバイスのプロセッサが決定する場合(すなわち、決定ブロック492=「Yes」)、決定ブロック494において、コンピューティングデバイスのプロセッサは、応答メッセージが受信されたかどうかを決定し得る。決定ブロック494の動作は、ブロック408を参照して上記で説明した動作と同様であり得る。たとえば、コンピューティングデバイスは、勧誘メッセージを受信した様々な受信者コンピューティングデバイスからの着信PTTアプリケーションメッセージを識別するために着信メッセージバッファをモニタし得る。応答メッセージが受信されていないものとコンピューティングデバイスのプロセッサが決定する場合(すなわち、決定ブロック494=「No」)、プロセッサは、データ源から情報を取得するためにブロック491における動作を継続し得る。随意に、ブロック406において、コンピューティングデバイスのプロセッサは、冗長な後続の勧誘メッセージを送信することによって継続し得る。
【００８０】
少なくとも1つの応答メッセージが受信された場合(すなわち、決定ブロック494=「Yes」)、ブロック410において、コンピューティングデバイスのプロセッサは、受信された応答メッセージが現在の要求を満足するかどうかを決定するために受信された応答メッセージを評価し得る。評価に基づいて、決定ブロック412において、コンピューティングデバイスのプロセッサは、現在の要求が受信された応答メッセージによって完全に満足されるかどうかを決定し得る。現在の要求が受信された応答メッセージによって完全には満足(または回答)されないことが決定される場合(すなわち、決定ブロック412=「No」)、ブロック414において、コンピューティングデバイスのプロセッサは、現在の要求の満足(または回答)されない部分に対応する補足要求を生成し得る。ブロック416において、コンピューティングデバイスのプロセッサは、たとえばシステム変数または現在の要求を示す他の記憶された情報を更新することによって、現在の要求を補足要求として設定し得る。随意のブロック418において、コンピューティングデバイスのプロセッサは、受信された応答メッセージに基づいて部分的満足を示すメッセージをユーザデバイスに送信し得る。次いで、コンピューティングデバイスは、新しい現在の要求を示す次の(または更新された)勧誘メッセージを送信するためにブロック406における動作を継続し得る。
【００８１】
現在の要求が受信された応答メッセージによって完全に満足されることが決定される場合(すなわち、決定ブロック412=「Yes」)、または現在の要求がもはや有効でないことが決定される場合(すなわち、決定ブロック492=「No」)、ブロック420において、コンピューティングデバイスのプロセッサは、現在の要求に対する応答を要請する表示を消去(たとえば、除去)するようにデバイスに指示するデータを含む取り消しメッセージを複数のコンピューティングデバイスに送信し得る。随意のブロック422において、コンピューティングデバイスのプロセッサは、現在の要求が完全に満足されたことを示すために、ローカルデータに対する消去動作を自動的に実行し得る。ブロック424において、コンピューティングデバイスのプロセッサは、受信された応答メッセージに基づいて要求が完全に満足されたことを示すメッセージをユーザデバイスに送信し得る。
【００８２】
図4Eは、ユーザによって所望される応答(たとえば、情報、タスク、アクション、など)を要請するためのユーザから受信者コンピューティングデバイスへの要求に基づいて勧誘メッセージを送信するための、コンピューティングデバイスに対する実施形態の方法495を示す。現在の要求がもはやそれらのそれぞれの受信者ユーザに対して有効でないものと個別に決定した受信者コンピューティングデバイスからの応答メッセージを処理するための動作を方法495が含み得る点を除いて、方法495は、上記で説明した方法400と同様である。無効性のそのような指示を受信することに応答して、コンピューティングデバイス(またはサーバ)のプロセッサは、現在の要求が有効または無効であると決定したそれらの受信者のアカウンティング(たとえば、カウンタ、「アクティビティ履歴」またはログ、など)を示すデータを維持し、さらに、それらの表示から要求を除去するために、取り消しメッセージをそのような受信者に選択的に送信することができる。方法495は、随意のフィルタリングおよび/または消去動作が個別の受信者の選択において実行されることを可能にすることにおいて有益であり得る。
【００８３】
上記で説明したように、ブロック402において、コンピューティングデバイスのプロセッサは、初期要求を受信し得る。ブロック404において、コンピューティングデバイスのプロセッサは、現在の要求を初期要求として設定し得る。ブロック406において、コンピューティングデバイスのプロセッサは、現在の要求に対する応答を要請する勧誘メッセージを複数のコンピューティングデバイス(すなわち、受信者コンピューティングデバイス)に送信し得る。ブロック408において、コンピューティングデバイスのプロセッサは、複数のコンピューティングデバイスのうちの1つまたは複数から応答メッセージを受信し得る。
【００８４】
決定ブロック496において、コンピューティングデバイスのプロセッサは、現在の要求が受信者に対して無効であることを受信された応答が示すかどうかを決定し得る。プロセッサは、現在の要求がそのそれぞれの受信者に対してもはや有効でないものと、応答メッセージを送信した受信者コンピューティングデバイスが決定したことを示す、任意のコードの、シンボルの、テキストの、口頭の、または他の情報を識別するために、受信された応答メッセージを評価し得る。たとえば、応答メッセージは、メタデータ中に「無効な」数値コードを含み得、または代替として、「ごめん、あなたの要求または質問は私には無関係である。」と述べるテキストの応答であり得る。受信者コンピューティングデバイスからのそのような応答メッセージを、以下でさらに説明する。
【００８５】
現在の要求が受信者に対して無効であることを受信された応答が示すものとコンピューティングデバイスのプロセッサが決定する場合(すなわち、決定ブロック496=「Yes」)、随意のブロック497において、プロセッサは、現在の要求が無効であったことを示す応答メッセージを送信した受信者コンピューティングデバイス(すなわち、受信者)に、表示を消去するようにデバイスに指示するデータを含む取り消しメッセージを送信し得る。言い換えれば、コンピューティングデバイスは、現在の要求が無効であることを示す受信者コンピューティングデバイスだけに、自動消去動作を実行するように指示するためのメッセージを送信し得る。随意のブロック497'において、コンピューティングデバイスのプロセッサは、たとえば受信者はもはや現在の要求に関連する通信を受信すべきでないことを示すためにデータフィールドを更新することによって、応答する受信者に関連するローカルデータに対する消去動作を自動的に実行し得る。ブロック498において、コンピューティングデバイスのプロセッサは、応答メッセージを送信した受信者に対する無効性の決定を示す記憶されたデータ(たとえば、カウンタ、アクティビティログ、など)を更新し得る。決定ブロック499において、コンピューティングデバイスのプロセッサは、記憶されたデータに基づいて、現在の要求に関連する勧誘メッセージを受信したすべての複数のコンピューティングデバイス(すなわち、受信者)に対して、現在の要求が無効であるかどうかを決定し得る。たとえば、現在の要求は、すべての受信者に対して無効であり、したがって現在の要求は完全に無効にされるべきであるかどうかを決定するために、プロセッサは、カウンタの値と受信者の数とを比較し得る。現在の要求はすべての複数の受信者コンピューティングデバイスに対して無効であるものとコンピューティングデバイスのプロセッサが決定する場合(すなわち、決定ブロック499=「No」)、プロセッサは、ブロック410における動作を継続し得る。
【００８６】
ブロック410において、コンピューティングデバイスのプロセッサは、受信された応答メッセージが現在の要求を満足するかどうかを決定するために受信された応答メッセージを評価し得る。評価に基づいて、決定ブロック412において、コンピューティングデバイスのプロセッサは、現在の要求が受信された応答メッセージによって完全に満足されるかどうかを決定し得る。現在の要求が受信された応答メッセージによって完全には満足(または回答)されないものとプロセッサが決定する場合(すなわち、決定ブロック412=「No」)、ブロック414において、コンピューティングデバイスのプロセッサは、現在の要求の満足(または回答)されない部分に対応する補足要求を生成し得る。ブロック416において、コンピューティングデバイスのプロセッサは、たとえばシステム変数または現在の要求を示す他の記憶された情報を更新することによって、現在の要求を補足要求として設定し得る。随意のブロック418において、コンピューティングデバイスのプロセッサは、受信された応答メッセージに基づいて部分的満足を示すメッセージをユーザデバイスに送信し得る。次いで、コンピューティングデバイスは、新しい現在の要求を示す次の(または更新された)勧誘メッセージを送信するためにブロック406における動作を継続し得る。現在の要求が受信された応答メッセージによって完全に満足されるものとプロセッサが決定する場合(すなわち、決定ブロック412=「Yes」)、または現在の要求がすべての受信者に対して無効であるものとプロセッサが決定する場合(すなわち、決定ブロック499=「Yes」)、ブロック420において、コンピューティングデバイスのプロセッサは、現在の要求に対する応答を要請する表示を消去(たとえば、除去)するようにデバイスに指示するデータを含む取り消しメッセージを複数のコンピューティングデバイスに送信し得る。随意のブロック422において、コンピューティングデバイスのプロセッサは、現在の要求が完全に満足されたことを示すために、ローカルデータに対する消去動作を自動的に実行し得る。ブロック424において、コンピューティングデバイスのプロセッサは、受信された応答メッセージに基づいて要求が完全に満足されたことを示すメッセージをユーザデバイスに送信し得る。
【００８７】
一実施形態では、現在の要求が無効であるものと、受信者のすべて(または大半もしくは所定の複数、など)が個別に決定したとき、コンピューティングデバイスは、取り消しメッセージを送信することを決定し得る。たとえば、所定の数または割合の受信者が、現在の要求は有効でないことをコンピューティングデバイスに送信したとき、コンピューティングデバイスは、ローカル消去動作を実行すること、および/または様々な受信者コンピューティングデバイスにおいて自動消去動作をトリガするために取り消しメッセージを送信することができる。
【００８８】
図5Aは、受信された勧誘メッセージに基づいて要求に対する応答を要請する表示を描画するための、受信者コンピューティングデバイスに対する実施形態の方法500を示す。簡単のために、以下の説明は、方法500の動作を実行するような受信者コンピューティングデバイスを参照する。さらに、受信者コンピューティングデバイスのユーザは、「受信者」と呼ばれる。受信者コンピューティングデバイスは、モバイルコンピューティングデバイス(たとえば、ユーザによって利用されるスマートフォン)など、任意のコンピューティングデバイスであり得ることを諒解されたい。様々な実施形態では、方法500の動作の任意の組合せが、1つまたは複数のコンピューティングデバイスによって実行され得る。
【００８９】
ブロック502において、受信者コンピューティングデバイスのプロセッサは、現在の要求に対する応答を要請する勧誘メッセージを受信して処理することができる。たとえば、受信者コンピューティングデバイスは、(たとえば、P2P通信、LAN、Bluetooth（登録商標）信号、WiFi Direct、などを介して)別のユーザのコンピューティングデバイスから、または(たとえば、セルラーネットワーク接続を介する、など)WANを介するPTT通信サービスサーバから直接、勧誘メッセージを受信し得る。受信者コンピューティングデバイスは、現在の要求の特性および詳細を識別するために、受信された勧誘メッセージに対して様々な構文解析、復号、および分析の動作を実行し得る。たとえば、受信者コンピューティングデバイスは、送信者のアイデンティティ、任意の含まれる質問、応答に対する好ましい応答モード(またはフォーマット)、要求されるタスク、タイムスタンプ情報、新鮮さまたは生存時間(TTL)データ、などを識別するために、受信された勧誘メッセージ中のテキスト情報、特殊ビット、シンボル、スクリプト、またはコードを評価し得る。
【００９０】
ブロック504において、受信者コンピューティングデバイスのプロセッサは、受信された勧誘メッセージに基づいてユーザからの応答(たとえば、情報、タスク、など)を要請する表示を描画し得る。たとえば、受信者コンピューティングデバイスは、図3A〜図3Cを参照しながら上記で説明したようなPTTアプリケーションまたは他のグラフィカル表示の中にダイアログボックスを描画し得る。表示は、テキストのクエリ/質問、タスクに対する口頭命令の音声サンプル、ピクチャ、図、または現在の要求の目的および対象物を示し得る他の情報など、勧誘メッセージの送信者によって好まれる応答タイプまたは応答メッセージフォーマット(すなわち、好ましい応答モード)の表現を含み得る。そのような好ましい応答モード情報は、受信された勧誘メッセージ中に示される選好情報に基づいてよく、さらに、要求に関連する後続の勧誘メッセージの受信を用いて動的に調整され得る。たとえば、第1の要求に対する表示は、最初に、テキスト応答が要求されていることを示し得るが、更新された勧誘メッセージを受信することに応答して、受信者コンピューティングデバイスは、PTTアプリケーションメッセージだけが要求に対して応答するために送信され得ることを示す表示を描画する場合がある。
【００９１】
一実施形態では、描画された表示は、受信者コンピューティングデバイスによって受信されたすべてのアクティブ要求のリストであり得る。たとえば、描画された表示は、様々な時刻における様々なユーザからのメッセージのリストであってよく、各々は、受信者コンピューティングデバイスを使用して受信者によって回答されるべき質問を示す。一実施形態では、表示は、現在の要求に対する優先度、ステータス、および/または好ましい応答モードを示すグラフィカル要素(たとえば、フラグ、番号、色、他)などの動的インジケータを含み得る。たとえば、受信者コンピューティングデバイス上に描画された表示は、現在の要求が依然としてアクティブである(すなわち、応答によって完全には満足されていない)ときに点滅する(flashing)グラフィカル要素を含み得る。
【００９２】
随意のブロック506において、受信者コンピューティングデバイスのプロセッサは、現在の要求に対応するユーザ入力を受信し得る。ユーザ入力は、現在の要求の全部または一部を満足し得る。たとえば、受信者コンピューティングデバイスは、勧誘メッセージからの現在の要求によって提出されたクエリに対する正しい回答(たとえば、「今日事務所内に誰かいるか?」の現在の要求に対する「いいえ」の回答)を提供するテキストデータを、ユーザ入力から受信し得る。ユーザ入力は、回答、ステートメント、または質問であり得る。たとえば、ユーザ入力は、受信者は情報に対する現在の要求に適切に応答することができないことを示す応答であり得る。別の例として、ユーザ入力は、受信者からの補足質問(たとえば、「私は、述べられているあなたの質問に回答できない。あなたは事務所Aについて話しているのか、または事務所Bについて話しているのか?」)を含む音声データであり得る。受信者が描画された表示を見ないとき、またはさもなければ現在の要求に関与しないことを選択するとき、随意のブロック506における動作は実行されない。
【００９３】
随意のブロック508において、受信者コンピューティングデバイスのプロセッサは、受信されたユーザ入力を含む応答メッセージを送信し得る。応答メッセージは、あるフォーマットで、または受信された勧誘メッセージ中で説明される通信方法を使用して送信され得る。たとえば、受信者コンピューティングデバイスは、応答メッセージを、IPアドレス、電話番号、または受信された勧誘メッセージのメタデータ中に示される他の宛先に送信し得る。一実施形態では、応答メッセージは、サーバに、または勧誘メッセージを送ったユーザによって使用されるコンピューティングデバイスに直接、送信され得る。
【００９４】
決定ブロック510において、受信者コンピューティングデバイスのプロセッサは、取り消しメッセージが受信されたかどうかを決定し得る。たとえば、受信者コンピューティングデバイスは、現在の要求に対する取り消しメッセージに対応するヘッダを含むメッセージが受信されるときを検出するために、着信メッセージバッファをモニタすることができる。受信者コンピューティングデバイスは、たとえばPTTアプリケーションに対してフォーマットされたメッセージのメタデータ中に示される一意の要求識別子を比較することによって、受信されたメッセージが現在の要求と関連付けられているかどうかを決定するために、様々な受信されたメッセージ中のコードを評価し得る。代替として、受信者コンピューティングデバイスは、メッセージが取り消しメッセージであることを示すデータ、コード、または他の情報を、これらのメッセージが含むかどうかを決定するために、PTTアプリケーションと関連付けられたすべてのメッセージなど、すべての着信メッセージを分析し得る。取り消しメッセージが受信されたことが決定される場合(すなわち、決定ブロック510=「Yes」)、ブロック516において、受信者コンピューティングデバイスのプロセッサは、受信された勧誘メッセージの現在の要求に対応する、ユーザからの応答を要請する表示を自動的に消去(または除去)し得る。たとえば、受信者コンピューティングデバイスは、現在の要求と関連付けられたデータベースエントリを除去することによって表示を削除し、現在の要求はもはや受信者コンピューティングデバイスのユーザに提示されないようにPTTアプリケーションを再描画する(または新しくする)ことができる。様々な実施形態では、受信者コンピューティングデバイスは、表示を非表示にするため、またはさもなければ、現在の要求に関連する表示を見えなくするように構成するために、現在の要求と関連付けられたデータを調整し得る。たとえば、受信者コンピューティングデバイスは、現在の要求の質問の表現を含まないように提示を構成し得るが、受信され、満足された要求の記憶されたリスト中の質問を依然として保持し得る。一実施形態では、受信者コンピューティングデバイスは、表示を調整するか、あるいはさもなければ、現在の要求が満たされていること、または変更された優先度、ランク、ステータス、もしくは重要性を有することを示す情報を描画することができる。たとえば、表示は、カラーコード、チェックボックス、ラベル(たとえば、「満足された!」、「回答済み」、「あなたの補足質問に対する応答を待機中」、など)、または現在の要求はもはやアクティブでないことを示す他の証印を含み得る。
【００９５】
取り消しメッセージが受信されないことが決定された場合(すなわち、決定ブロック510=「No」)、決定ブロック512において、受信者コンピューティングデバイスのプロセッサは、更新された勧誘メッセージが受信されたかどうかを決定し得る。たとえば、受信者コンピューティングデバイスは、現在の要求に対応する(補足要求を有する)後続の勧誘メッセージが受信されているかどうかを検出するために、着信メッセージバッファをモニタすることができる。更新された勧誘メッセージが受信されなかったことが決定された場合(すなわち、決定ブロック512=「No」)、受信者コンピューティングデバイスは、決定ブロック510における動作を実行することによって、後続のメッセージをモニタすることを継続し得る。しかしながら、更新された勧誘メッセージが受信されたことが決定される場合(すなわち、決定ブロック512=「Yes」)、ブロック514において、受信者コンピューティングデバイスのプロセッサは、更新された勧誘メッセージに基づいてユーザからの応答を要請するために表示を自動的に調整し得る。たとえば、受信者コンピューティングデバイスは、別の応答を要請するために、更新された勧誘メッセージを介して受信された言語または追加の質問を明確にするステップを含むために現在の要求の描画された質問を変更し得る。随意のブロック506において、受信者コンピューティングデバイスは、別の応答に対するユーザ入力を受信するための動作を継続し得る。
【００９６】
図5Bは、受信された勧誘メッセージに基づいて要求に対する応答を要請する表示を描画するための、受信者コンピューティングデバイスに対する実施形態の方法550を示す。受信者コンピューティングデバイスに関連する情報に基づいて現在の要求が依然として有効であるかどうかを決定するために、受信者コンピューティングデバイスに対する動作を方法550が含む点を除いて、方法550は上記で説明した方法500と同様である。特に、受信者コンピューティングデバイスは、時間ベースの情報(たとえば、時間測定ユニットからの現在時刻、日、など)、位置情報の源から取得された位置ベースの情報(たとえば、GPSユニットから、GPSを使用しない位置情報源またはサービスから取得された受信者コンピューティングデバイスのGPS座標、など)、および関連性ベースの情報(たとえば、受信者は仕事中かまたは休暇中か、など)を使用して様々な確証動作を実行することに応答して、自動消去動作を実行するように構成され得る。受信者コンピューティングデバイスのそのような確証動作は、図4Dを参照しながら上記で説明した決定ブロック492におけるコンピューティングデバイスの動作と同様であり得る。
【００９７】
簡単のために、以下の説明は、方法550の動作を実行するような受信者コンピューティングデバイスのプロセッサを参照する。さらに、受信者コンピューティングデバイスのユーザは、「受信者」と呼ばれる。受信者コンピューティングデバイスは、モバイルコンピューティングデバイス(たとえば、ユーザによって利用されるスマートフォン)など、任意のコンピューティングデバイスであり得ることを諒解されたい。様々な実施形態では、方法550の動作の任意の組合せが、1つまたは複数のコンピューティングデバイスによって実行され得る。
【００９８】
上記で説明したように、ブロック502において、受信者コンピューティングデバイスのプロセッサは、現在の要求に対する応答を要請する勧誘メッセージを受信して処理することができる。ブロック504において、受信者コンピューティングデバイスのプロセッサは、受信された勧誘メッセージに基づいてユーザからの応答(たとえば、情報、タスク、など)を要請する表示を描画し得る。随意のブロック506において、受信者コンピューティングデバイスのプロセッサは、現在の要求に対応するユーザ入力を受信し得る。随意のブロック508において、受信者コンピューティングデバイスのプロセッサは、受信されたユーザ入力を含む応答メッセージを送信し得る。
【００９９】
ブロック552において、受信者コンピューティングデバイスのプロセッサは、時間測定ユニット、位置情報源(たとえば、GPSユニット、または位置情報を提供する他の源もしくはサービス)、ローカル情報データベース、および/またはインターネットリソースからなど、現在の要求の確証に使用するためにデータ源から情報を取得し得る。たとえば、受信者コンピューティングデバイスは、ローカルに記憶されたデータ(たとえば、住所録、電子メールクライアント、記憶されたテキストメッセージ、ソーシャルネットワーキングプロファイルデータ、など)にアクセスすること、および/またはインターネットを介して様々なウェブサイトからデータを取り出すための動作を実行することができる。現在の要求に対する質問、ステートメント、または他の情報の意味を決定するために、たとえば電子メールまたはSMSテキストメッセージに対して自然言語処理ルーチンを実行することによって、現在の要求および/または勧誘メッセージのコンテンツを処理することに基づいて、情報が取得され得る。たとえば、受信された勧誘メッセージが「誰が正午に事務所にいるか?」を尋ねるとき、受信者コンピューティングデバイスは、要求が、現在時刻に基づいて依然として有効であるかどうかを決定するために、時間測定ユニット(たとえば、システムクロック、など)から現在時刻を取得し得る。別の例として、現在の要求が、「私が今、私の事務所に入るのを誰が助けることができるか?」と尋ねるとき、受信者コンピューティングデバイスの受信者が事務所の中にいて要求者を助けるのに適しているかどうかを示す情報を取得するために、受信者コンピューティングデバイスは、GPSユニットからの現在のGPS座標にアクセスすること、および/またはローカルに記憶されたカレンダーデータにアクセスすることを行い得る。
【０１００】
随意のブロック554において、受信者コンピューティングデバイスのプロセッサは、リモートデバイス(たとえば、サーバ、要求者デバイス、など)による確証に使用するために取得された情報を送信し得る。たとえば、位置情報(または他のプレゼンス情報)は、現在の要求が依然として有効であるかどうかを決定するための処理のためにサーバコンピューティングデバイスに送信され得る。
【０１０１】
決定ブロック556において、受信者コンピューティングデバイスのプロセッサは、取得された情報に基づいて、現在の要求が全体的に有効であるかどうかを決定し得る。言い換えれば、受信者コンピューティングデバイスは、現在の要求は非現実的か、またはさもなければ現在の要求とともに勧誘メッセージを受信した受信者コンピューティングデバイスまたは他のデバイスによって適切に満足もしくは回答され得ないかを決定するために、取得された情報および現在の要求を評価し得る。たとえば、受信者コンピューティングデバイスは、現在時刻(たとえば、午後4時)が、時間依存性支援に対する現在の要求を無意味なものにしている(たとえば、「誰が昼食を食べたいか?」)かどうかを決定し得る。要求は全体的に有効でないものとプロセッサが決定する場合(すなわち、決定ブロック556=「No」)、ブロック558において、受信者コンピューティングデバイスのプロセッサは、現在の要求はもはや有効でないことを示す応答メッセージを送信し(たとえば、応答メッセージを要求者のコンピューティングデバイスまたはサーバに送信し)、ブロック516において、現在の要求に対応するユーザからの応答を要請する表示を自動的に消去し、他の勧誘メッセージを受信および処理するためにブロック502における動作を継続することができる。ブロック558における動作を用いて送信された応答メッセージは、コンピューティングデバイス(たとえば、サーバ、など)によって受信され、処理されて、勧誘メッセージを受信した他のデバイスに、現在の要求はもはや有効でないことを通知する取り消しメッセージを送信することができる。
【０１０２】
しかしながら、要求は依然として全体的に有効であるものとプロセッサが決定する場合(すなわち、決定ブロック556=「Yes」)、受信者コンピューティングデバイスのプロセッサは、随意の決定ブロック560において、取得された情報に基づいて現在の要求が受信者に対して有効であるかどうかを決定し得る。言い換えれば、受信者コンピューティングデバイスは、要求が、依然として、受信者でない誰かによって回答または満足される可能性があるかどうかを決定するために現在の要求を評価し得る。たとえば、受信者コンピューティングデバイスは、受信者が事務所の建物の中にいて、したがって要求者が彼の事務所空間内に入るのを支援するために現在の要求を満足するのを助けるのに適しているかどうかを決定するために、その現在のGPS座標と知られている事務所の建物とを比較し得る。別の例として、受信者コンピューティングデバイスは、受信者が次の数時間の間会議中であることを示す、ローカルに記憶されたカレンダー情報を比較して、受信者は、次の5分間マーケットに行くという現在の要求を満足できないものと決定することができる。一実施形態では、決定ブロック556における決定は、彼または彼女は現在の要求に関与すること(またはさらなる関連通知を受信すること)に関心がないことを示すためのユーザ指定のボタン押下など、ユーザ入力に基づく場合がある。
【０１０３】
要求は受信者に対して有効でないものとプロセッサが決定する場合(すなわち、随意の決定ブロック560=「No」)、随意のブロック562において、受信者コンピューティングデバイスのプロセッサは、たとえば応答メッセージを受信者コンピューティングデバイスおよび/またはサーバに送信することによって、現在の要求はもはや受信者に対して有効でないことを示す応答メッセージを送信し得る。ブロック516において、受信者コンピューティングデバイスのプロセッサは、現在の要求に対応するユーザからの応答を要請する表示を自動的に消去し、他の勧誘メッセージを受信および処理するために、ブロック502における動作を継続することができる。
【０１０４】
しかしながら、要求は依然として受信者に対して有効であるものとプロセッサが決定する場合(すなわち、随意の決定ブロック560=「Yes」)、決定ブロック510において、受信者コンピューティングデバイスのプロセッサは、取り消しメッセージが受信されたかどうかを決定し得る。取り消しメッセージが受信されたものとプロセッサが決定する場合(すなわち、決定ブロック510=「Yes」)、ブロック516において、受信者コンピューティングデバイスのプロセッサは、受信された勧誘メッセージの現在の要求に対応するユーザからの応答を要請する表示を自動的に消去(または除去)し得る。
【０１０５】
取り消しメッセージが受信されないものとプロセッサが決定する場合(すなわち、決定ブロック510=「No」)、決定ブロック512において、受信者コンピューティングデバイスのプロセッサは、更新された勧誘メッセージが受信されたかどうかを決定し得る。更新された勧誘メッセージが受信されないものとプロセッサが決定する場合(すなわち、決定ブロック512=「No」)、受信者コンピューティングデバイスのプロセッサは、決定ブロック510における動作を実行することによって、後続のメッセージをモニタすることを継続し得る。しかしながら、更新された勧誘メッセージが受信されたものとプロセッサが決定する場合(すなわち、決定ブロック512=「Yes」)、ブロック514において、受信者コンピューティングデバイスのプロセッサは、更新された勧誘メッセージに基づいてユーザからの応答を要請するために表示を自動的に調整し得る。随意のブロック506において、受信者コンピューティングデバイスのプロセッサは、別の応答に対するユーザ入力を受信するための動作を継続し得る。
【０１０６】
図6Aは、ユーザからの要求に対応する、ユーザコンピューティングデバイス102と受信者コンピューティングデバイス180との間の例示的な通信を示す図600である。図600に示す様々な通信は、ユーザコンピューティングデバイス102と受信者コンピューティングデバイス180との間の直接の通信またはシグナリングと見なされてよい。たとえば、デバイス102、180は、短距離シグナリング(たとえば、Bluetooth（登録商標）、WiFi Direct、など)を介して、またはLAN(たとえば、WiFiルータを介して送信されるデータ)を介してP2P通信を交換するように構成され得る。さらに、様々な通信は、102、180の両デバイス上で実行するアプリケーションに対応するプロプライエタリメッセージング、SMS/MMSテキストメッセージ、PTT通信、および/またはデバイス102、180によってサポートされるメッセージング技法またはフォーマットの任意の組合せであり得る。
【０１０７】
ユーザコンピューティングデバイス102は、たとえば質問を表すかまたはアクションが他人によって実行されることを要求するテキストデータを受信すること、および/または現在の要求に対する所望の受信者を示す入力(たとえば、PTTアプリケーションの住所録中の連絡先のグラフィカル要素上へのタッチ入力、など)を受信することによって、現在の要求を識別するために動作602を実行し得る。ユーザコンピューティングデバイス102は、現在の要求に基づいて勧誘メッセージ604を受信者コンピューティングデバイス180に送信するための動作を実行し得る。受信者コンピューティングデバイス180は、受信者ユーザから応答入力を受信するばかりでなく、受信された勧誘メッセージ604中に示される現在の要求を処理および描画するために動作606を実行し得る。受信者コンピューティングデバイス180は、勧誘メッセージ604の中で提出される質問に対応する回答、質問、または他の情報を示すテキストまたは音声のメッセージなど、応答メッセージ608をユーザコンピューティングデバイス102に送信し得る。
【０１０８】
ユーザコンピューティングデバイス102は、現在のクエリに関連する応答メッセージ608の中のコンテンツを識別するために、たとえばテキスト分析、音声テキスト化処理、または他のルーチンを実行することによって、応答メッセージ608を処理するために動作610を実行し得る。一実施形態では、ユーザコンピューティングデバイス102は、たとえば現在の要求は応答メッセージ608によって満足されていることを示すためにローカルに記憶されたデータベース情報を除去または変更することによって、現在の要求に対応するデータを除去またはさもなければ消去するための動作を実行し得る。
【０１０９】
現在の要求が満足されない(たとえば、未解決の質問が応答メッセージ608からの情報によって十分に回答されない)ものと決定されるとき、ユーザコンピューティングデバイス102は、随意の更新された勧誘メッセージ612を送信し、受信者コンピューティングデバイスは、受信者ユーザから応答入力を受信するばかりでなく、随意の更新された勧誘メッセージ612中の情報を処理および描画するために随意の動作606'を実行し得る。受信者コンピューティングデバイス180は、随意の応答メッセージ608'をユーザコンピューティングデバイス102に送信し得る。ユーザコンピューティングデバイス102は、随意の応答メッセージ608'を処理するために随意の動作610'を実行し得る。
【０１１０】
現在の要求が満足されている(たとえば、未解決の質問が応答メッセージ608または随意の応答メッセージ608'からの情報を用いて十分に回答される)ものと決定されるとき、ユーザコンピューティングデバイス102は、取り消しメッセージ614を受信者コンピューティングデバイス180に送信し得る。受信者コンピューティングデバイス180は、たとえば現在の要求および/または勧誘メッセージ604に関連するローカルに記憶された情報を除去、非表示、またはさもなければ調整する自動消去動作を実行することによって、取り消しメッセージ614を処理するために動作616を実行し得る。たとえば、動作616は、現在の要求と関連付けられたデータベースエントリを削除すること、または代替として、エントリからのデータがPTTアプリケーションによって提示され得るかどうかを制御する、データベースエントリ中の変数を設定することを行うルーチンを実行するステップを含み得る。
【０１１１】
図6B〜図6Cは、ユーザからの要求に対応する、ユーザコンピューティングデバイス102と、受信者コンピューティングデバイス180と、サーバコンピューティングデバイス110との間の例示的な通信を示す図650、図670である。図650、図670は、ユーザコンピューティングデバイス102および受信者コンピューティングデバイス180が互いに直接通信するのではなく、メッセージングがサーバコンピューティングデバイス110を介して経路指定される点を除いて、図6Aを参照しながら上記で説明した図600と同様である。たとえば、サーバコンピューティングデバイス110は、ユーザコンピューティングデバイス102と受信者コンピューティングデバイス180の両方において実行するPTTアプリケーションと関連付けられた通信を容易にするように構成されたデバイスであり得る。サーバコンピューティングデバイス110と、デバイス102、180との間で交換される様々な通信は、WAN(たとえば、セルラーネットワーク、インターネット、など)および/またはLAN(たとえば、WiFiルータによって可能にされる建物内のLAN)を介して送信され得る。たとえば、ユーザコンピューティングデバイス102は、WiFi接続を介してサーバコンピューティングデバイス110と通信し得、受信者コンピューティングデバイス180は、インターネットを介してサーバコンピューティングデバイス110とメッセージを交換し得、その逆も同様である。さらに、サーバコンピューティングデバイス110は、異なるタイプのフォーマットのメッセージを受信および送信するように構成され得る。たとえば、サーバコンピューティングデバイス110は、PTTアプリケーションと関連付けられたPTTメッセージをユーザコンピューティングデバイス102と交換し、SMS/MMSテキストメッセージまたは電子メールを受信者コンピューティングデバイス180と交換するように構成され得、その逆も同様である。
【０１１２】
図6Bは、サーバコンピューティングデバイス110が、ユーザコンピューティングデバイス102と受信者コンピューティングデバイス180との間のメッセージングに対する単なるルータであるシナリオを示す。特に、ユーザコンピューティングデバイス102は、現在の要求を識別し、現在の要求に基づいて勧誘メッセージ604をサーバコンピューティングデバイス110に送信する動作602を実行し得る。サーバコンピューティングデバイス110は、中継された勧誘メッセージ654を受信者コンピューティングデバイス180に送信し得る。中継された勧誘メッセージ654は、勧誘メッセージ604と同一であり得るか、または代替として、受信者コンピューティングデバイス180による使用に好適な異なるメッセージフォーマットにフォーマットされ得る。受信者コンピューティングデバイス180は、受信者ユーザから応答入力を受信するばかりでなく、中継された勧誘メッセージ654中に示される現在の要求を処理および描画するために動作606を実行し得る。受信者コンピューティングデバイス180は、応答メッセージ608をサーバコンピューティングデバイス110に送信し、サーバコンピューティングデバイス110は、中継された応答メッセージ658をユーザコンピューティングデバイス102に送信することができる。中継された応答メッセージ658は、応答メッセージ608と同一であり得るか、または代替として、ユーザコンピューティングデバイス102による使用に好適な異なるメッセージフォーマットにフォーマットされ得る。
【０１１３】
ユーザコンピューティングデバイス102は、現在のクエリに関連する中継された応答メッセージ658の中のコンテンツを識別するために、たとえばテキスト分析、音声テキスト化処理、または他のルーチンを実行することによって、中継された応答メッセージ658を処理するために動作610を実行し得る。現在の要求が満足されない(たとえば、未解決の質問が中継された応答メッセージ658からの情報によって十分に回答されない)ものと決定されるとき、ユーザコンピューティングデバイス102は、随意の更新された勧誘メッセージ612をサーバコンピューティングデバイス110に送信し、随意の更新された勧誘メッセージ612は、随意の中継された更新された勧誘メッセージ662として受信者コンピューティングデバイス180に送信され得る。受信者コンピューティングデバイスは、受信者ユーザから応答入力を受信するばかりでなく、随意の中継された更新された勧誘メッセージ662中の情報を処理および描画するために随意の動作606'を実行し得る。受信者コンピューティングデバイス180は、随意の応答メッセージ608'をサーバコンピューティングデバイス110に送信し、サーバコンピューティングデバイス110は、今度は、随意の中継された応答メッセージ658'をユーザコンピューティングデバイス102に送信することができる。ユーザコンピューティングデバイス102は、随意の中継された応答メッセージ658'を処理するために随意の動作610'を実行し得る。
【０１１４】
現在の要求が満足されている(たとえば、未解決の質問が応答メッセージ608または随意の中継された応答メッセージ658'からの情報を用いて十分に回答される)ものと決定されるとき、ユーザコンピューティングデバイス102は、取り消しメッセージ614をサーバコンピューティングデバイス110に送信し、サーバコンピューティングデバイス110は、中継された取り消しメッセージ664を受信者コンピューティングデバイス180に送信することができる。中継された取り消しメッセージ664は、取り消しメッセージ614と同一であり得るか、または代替として、受信者コンピューティングデバイス180による使用に好適な異なるメッセージフォーマットにフォーマットされ得る。受信者コンピューティングデバイス180は、たとえば現在の要求および/または中継された勧誘メッセージ654に関連するローカルに記憶された情報を除去、非表示、またはさもなければ調整する自動消去動作を実行することによって、中継された取り消しメッセージ664を処理するために動作616を実行し得る。
【０１１５】
図6Cは、ユーザの要求が満足されているかどうかを決定するために、サーバコンピューティングデバイス110が、応答メッセージを評価するシナリオを示す。図6Bを参照しながら上記で説明したものとは異なり、図670において、サーバコンピューティングデバイス110は、要求が満足されており、したがってユーザコンピューティングデバイス102および/または受信者コンピューティングデバイス180の中で消去され得るかどうかを決定するために、様々な通信を処理するように構成され得る。
【０１１６】
特に、ユーザコンピューティングデバイス102は、現在の要求を識別し、現在の要求に基づいて勧誘メッセージ604をサーバコンピューティングデバイス110に送信するために動作602を実行し得る。サーバコンピューティングデバイス110は、中継された勧誘メッセージ654を受信者コンピューティングデバイス180に送信し得る。中継された勧誘メッセージ654は、勧誘メッセージ604と同一であり得るか、または代替として、受信者コンピューティングデバイス180による使用に好適な異なるメッセージフォーマットにフォーマットされ得る。受信者コンピューティングデバイス180は、受信者ユーザから応答入力を受信するばかりでなく、中継された勧誘メッセージ654中に示される現在の要求を処理および描画するために動作606を実行し得る。受信者コンピューティングデバイス180は、応答メッセージ608をサーバコンピューティングデバイス110に送信し、サーバコンピューティングデバイス110は、たとえば応答メッセージ608中のコンテンツを識別するためにテキスト分析、音声テキスト化処理、または他のルーチンを実行することによって、応答メッセージ608を処理するために動作672を実行することができる。動作672は、上記で説明したように、ユーザコンピューティングデバイス102によって実行される動作610と同様であり得る。
【０１１７】
一実施形態では、サーバコンピューティングデバイス110は、初期要求の時点で中継された勧誘メッセージ654を介して初期要求をプッシュするように構成されてよく、または代替として、ある持続時間の間に初期要求の情報を記憶するために随意の動作681を実行してもよい。受信者コンピューティングデバイス180から随意の取出し要求メッセージ681'を受信することに応答して、サーバコンピューティングデバイス110は、中継された勧誘メッセージ654および/または随意の更新された勧誘メッセージ676を送信し得る。これは、受信者コンピューティングデバイス180が、サーバコンピューティングデバイス110などの記憶位置から要求に応じて未解決の初期要求を取り出す(または更新する)ことを可能にする。
【０１１８】
現在の要求が満足されない(たとえば、未解決の質問が応答メッセージ608からの情報によって十分に回答されない)ものと決定されるとき、サーバコンピューティングデバイス110は、応答メッセージ608から識別された現在の要求に対する部分応答(または部分回答)を示す随意のメッセージ674を、ユーザコンピューティングデバイス102に送信し得る。サーバコンピューティングデバイス110はまた、随意の更新された勧誘メッセージ676を生成し、受信者コンピューティングデバイス180に送信し得る。受信者コンピューティングデバイスは、受信者ユーザから応答入力を受信するばかりでなく、随意の更新された勧誘メッセージ676中の情報を処理および描画するために随意の動作606'を実行し得る。受信者コンピューティングデバイス180は、随意の応答メッセージ608'をサーバコンピューティングデバイス110に送信し、サーバコンピューティングデバイス110は、今度は、随意の応答メッセージ608'を処理するために随意の動作672'を実行することができる。
【０１１９】
現在の要求が満足されている(たとえば、未解決の質問が応答メッセージ608または随意の応答メッセージ608'からの情報を用いて十分に回答されている)ものと決定されるとき、サーバコンピューティングデバイス110は、現在の要求が完全に満足されていることを示すメッセージ678をユーザコンピューティングデバイス102に送信し得る。ユーザコンピューティングデバイス102は、たとえばローカルデータベース上で消去動作を実行すること、または完了メッセージをユーザに対して表示することによって、メッセージ678を処理するために動作680を実行し得る。サーバコンピューティングデバイス110はまた、取り消しメッセージ682を受信者コンピューティングデバイス180に送信し得る。受信者コンピューティングデバイス180は、たとえば現在の要求および/または中継された勧誘メッセージ654に関連するローカルに記憶された情報を除去、非表示、またはさもなければ調整する自動消去動作を実行することによって、取り消しメッセージ682を処理するために動作616を実行し得る。
【０１２０】
パーソナルコンピュータおよびラップトップコンピュータを含む、他の形のコンピューティングデバイスは、様々な実施形態を実装するために使用され得る。そのようなコンピューティングデバイスは、通常、例示的なラップトップコンピューティングデバイス185を示す図7に示された構成要素を含む。多くのラップトップコンピュータは、コンピュータのポインティングデバイスとして働くタッチパッドタッチ面714を含み、したがってタッチスクリーンディスプレイを備え、上記で説明されたモバイルコンピューティングデバイス上で実装されるのと同様のドラッグ、スクロール、およびフリックジェスチャを受け取り得る。そのようなラップトップコンピューティングデバイス185は、一般に、揮発性内部メモリ702、およびディスクドライブ706などの大容量不揮発性メモリに結合されたプロセッサ701を含む。ラップトップコンピューティングデバイス185はまた、プロセッサ701に結合されたコンパクトディスク(CD)および/またはDVDドライブ708を含む場合がある。ラップトップコンピューティングデバイス185はまた、プロセッサ701をネットワークに結合するためのネットワーク接続回路などの、データ接続を確立し外部メモリデバイスを受け入れるための、プロセッサ701に結合されたいくつかのコネクタポート710を含む場合がある。ラップトップコンピューティングデバイス185は、本明細書で説明するワイヤレス信号を送信および受信するための1つまたは複数の短距離無線信号トランシーバ718(たとえば、Peanut(登録商標)、Bluetooth(登録商標)、Zigbee(登録商標)、RF無線)とアンテナ720とを有し得る。トランシーバ718およびアンテナ720は、様々なワイヤレス送信プロトコルスタック/インターフェースを実装するために、上記の回路とともに使用され得る。ラップトップまたはノートブック構成では、コンピュータのハウジングはタッチパッド714、キーボード712、およびディスプレイ716を含み得、すべてはプロセッサ701に結合される。ラップトップコンピューティングデバイス185の他の構成は、よく知られているように、(たとえば、USB入力を介して)プロセッサ701に結合されたコンピュータマウスまたはトラックボールを含んでよく、それらはまた、様々な実施形態とともに使用され得る。
【０１２１】
図8は、一実施形態のマルチコアデバイス800を示す。様々な実施形態では、マルチコアデバイス800は、タッチスクリーンコントローラ804および内部メモリ802に結合されたプロセッサ801を含むことができる。プロセッサ801は、汎用または特定の処理タスクに指定された1つまたは複数のマルチコアICであり得る。内部メモリ802は揮発性または不揮発性メモリであってもよく、また、安全保護および/もしくは暗号化メモリであっても、または非安全保護および/もしくは非暗号化メモリであっても、あるいはそれらの任意の組合せであってもよい。タッチスクリーンコントローラ804およびプロセッサ801は、抵抗感知タッチスクリーン、容量感知タッチスクリーン、赤外線感知タッチスクリーンなどの、スクリーン812に結合される場合もある。マルチコアデバイス800は、互いに結合され、かつ/またはプロセッサ801に結合された、送信および受信するための1つまたは複数の無線信号トランシーバ808(たとえば、Peanut(登録商標)、Bluetooth(登録商標)、Zigbee(登録商標)、Wi-Fi、RF無線など)、およびアンテナ810を有する場合がある。トランシーバ808およびアンテナ810は、様々なワイヤレス送信のプロトコルスタックおよびインターフェースを実装するために、上述の回路とともに使用される場合がある。マルチコアデバイス800は、セルラーネットワークを介する通信を可能にし、プロセッサに結合されたセルラーネットワークワイヤレスモデムチップ816を含む場合がある。マルチコアデバイス800は、プロセッサ801に結合された周辺デバイス接続インターフェース818を含む場合がある。周辺デバイス接続インターフェース818は、1つのタイプの接続を受け入れるように単独で構成される場合があるか、または、USB、FireWire、Thunderbolt、またはPCIeなどの様々なタイプの物理接続および通信接続を共通またはプロプライエタリに受け入れるように、複数で構成される場合がある。周辺デバイス接続インターフェース818は、同様に構成された周辺デバイス接続ポート(図示せず)に結合される場合もある。また、マルチコアデバイス800は、音声出力を提供するためのスピーカ814を含むことも可能である。また、マルチコアデバイス800は、プラスチック、金属または材料の組合せで構築された、本明細書において説明されている構成要素のすべて、またはいくつかを含むためのハウジング820を含むことも可能である。マルチコアデバイス800は、使い捨てまたは充電可能なバッテリなどの、プロセッサ801に結合された電源822を含む場合もある。充電可能なバッテリは、マルチコアデバイス800の外部にある電源から充電電流を受けるために、周辺デバイス接続ポートに結合される場合もある。
【０１２２】
様々な実施形態は、図9に示されたサーバコンピューティングデバイス110などの、様々な市販のサーバデバイスのいずれにも実装することができる。そのようなサーバコンピューティングデバイス110は、通常、揮発性メモリ902と、ディスクドライブ903などの大容量の不揮発性メモリとに結合されたプロセッサ901を含む。サーバコンピューティングデバイス110は、プロセッサ901に結合された、フロッピーディスクドライブ、コンパクトディスク(CD)またはDVDディスクドライブ906も含み得る。サーバコンピューティングデバイス110はまた、他のブロードキャストシステムコンピュータおよびサーバに結合されたローカルエリアネットワークのような、ネットワーク905とのデータ接続を確立するための、プロセッサ901に結合されたネットワークアクセスポート904を含み得る。
【０１２３】
プロセッサ701、801、および901は、上記で説明した様々な実施形態の機能を含む、様々な機能を実行するようにソフトウェア命令(アプリケーション)によって構成され得る、任意のプログラマブルマイクロプロセッサ、マイクロコンピュータ、または1つもしくは複数の多重プロセッサチップであり得る。様々なデバイスでは、1つのプロセッサをワイヤレス通信機能専用とし、1つのプロセッサを他のアプリケーションの実行専用とするなど、複数のプロセッサが設けられ得る。通常、ソフトウェアアプリケーションは、アクセスされてプロセッサ701、801、901内にロードされる前に、内部メモリ702、802、902内に記憶され得る。プロセッサ701、801、および901は、アプリケーションソフトウェア命令を記憶するのに十分な内部メモリを含み得る。多くのデバイスでは、内部メモリは、揮発性メモリ、もしくはフラッシュメモリなどの不揮発性メモリ、または両方の混合であり得る。本明細書では、メモリへの一般的な言及は、内部メモリまたは様々なデバイスに差し込まれるリムーバブルメモリと、プロセッサ701、801、および901の中のメモリとを含む、プロセッサ701、801、および901によってアクセス可能なメモリを指す。
【０１２４】
上述の方法の説明およびプロセスフロー図は、単に説明のための例として提供されており、様々な実施形態のステップが提示された順序で実行されなければならないことを要求または暗示することは意図されない。当業者は理解するであろうが、上記の実施形態でのステップの順序は、任意の順序で実施され得る。「その後で」、「次いで」、「次に」などの語は、ステップの順序を限定することを意図せず、これらの語は単に、方法の説明を通じて読者を誘導するために使用されるものである。さらに、たとえば冠詞「a」、「an」、または「the」を用いる、請求項要素に対する単数での任意の参照は、要素を単数に限定すると解釈されるべきではない。
【０１２５】
本明細書において開示された実施形態に関連して説明した様々な例示的な論理ブロック、モジュール、回路、およびアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、またはその両方の組合せとして実装されてよい。ハードウェアおよびソフトウェアのこの互換性を明確に説明するために、様々な例示的な構成要素、ブロック、モジュール、回路、およびステップは、それらの機能の観点から一般に上記で説明されている。そのような機能性が、ハードウェアまたはソフトウェアのどちらとして実施されるのかは、具体的な適用例と、システム全体に課せられる設計制約とによって決まる。当業者は、説明された機能を各々の特定の応用分野について様々な方式で実装し得るが、そのような実装判断は、本開示の範囲からの逸脱を引き起こすと解釈されるべきではない。
【０１２６】
本明細書で開示した実施形態に関して説明した様々な例示的な論理、論理ブロック、モジュール、および回路を実装するために使用されるハードウェアは、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)もしくは他のプログラマブル論理デバイス、個別ゲートもしくはトランジスタ論理、個別ハードウェア構成要素、または本明細書で説明した機能を実行するように設計されたそれらの任意の組合せを用いて実装または実施され得る。汎用プロセッサはマイクロプロセッサであり得るが、代替実施形態では、プロセッサは、任意の従来型プロセッサ、コントローラ、マイクロコントローラ、または状態機械であり得る。プロセッサは、コンピューティングデバイスの組合せ、たとえばDSPとマイクロプロセッサの組合せ、複数のマイクロプロセッサ、DSPコアと連結した1つもしくは複数のマイクロプロセッサ、または任意の他のそのような構成として実装されてもよい。あるいは、いくつかのステップまたは方法は、所与の機能に固有の回路によって実行され得る。
【０１２７】
1つまたは複数の例示的な実施形態では、説明した機能が、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装されてもよい。機能は、ソフトウェアで実装される場合、1つまたは複数の命令またはコードとして、非一時的プロセッサ可読、コンピュータ可読もしくはサーバ可読媒体、または非一時的プロセッサ可読記憶媒体上に記憶され、またはその上で送信され得る。本明細書で開示された方法またはアルゴリズムのステップは、非一時的コンピュータ可読記憶媒体、非一時的サーバ可読記憶媒体、および/または非一時的プロセッサ可読記憶媒体上に存在し得る、プロセッサ実行可能ソフトウェアモジュールまたはプロセッサ実行可能命令(またはソフトウェア命令)で具現化され得る。様々な実施形態では、そのような命令は、記憶されたプロセッサ実行可能命令または記憶されたプロセッサ実行可能ソフトウェア命令であり得る。有形の非一時的コンピュータ可読記憶媒体は、コンピュータによってアクセスされ得る任意の利用可能な媒体であってよい。限定ではなく例として、そのような非一時的コンピュータ可読媒体は、RAM、ROM、EEPROM、CD-ROMもしくは他の光ディスク記憶装置、磁気ディスク記憶装置もしくは他の磁気記憶デバイス、または、命令またはデータ構造の形式で所望のプログラムコードを記憶するために使用され得るとともに、コンピュータによってアクセスされ得る任意の他の媒体を含み得る。ディスク(disk)およびディスク(disc)は、本明細書において使用されるときに、コンパクトディスク(disc)(「CD」)、レーザディスク(disc)、光ディスク(disc)、デジタル多用途ディスク(disc)(「DVD」)、フロッピーディスク(disk)およびブルーレイディスク(disc)を含み、ディスク(disk)は通常、データを磁気的に再生し、一方、ディスク(disc)は、レーザを用いてデータを光学的に再生する。上記の組合せも、非一時的コンピュータ可読媒体の範囲内に含まれるべきである。加えて、方法またはアルゴリズムの動作は、コンピュータプログラム製品に組み込まれ得る、有形の非一時的プロセッサ可読記憶媒体および/またはコンピュータ可読媒体上のコードおよび/または命令の、1つもしくは任意の組合せ、またはそのセットとして存在し得る。
【０１２８】
開示した実施形態の先行する説明は、当業者が本発明を実施または使用することを可能にするために与えられる。これらの実施形態に対する様々な修正が当業者には直ちに明らかとなることになり、本明細書で定義される一般的原理は、本発明の精神または範囲から逸脱することなく他の実施形態に適用され得る。したがって、本発明は、本明細書で示される実施形態に限定されないものとし、以下の特許請求の範囲、および本明細書で開示した原理および新規な特徴に適合する最も広い範囲が与えられるべきである。
【符号の説明】
【０１２９】
100  通信システム
102  ユーザコンピューティングデバイス
103  接続
104  接続
105  近距離ワイヤレス接続
110  サーバコンピューティングデバイス
111  接続
115  インターネット
120  ルータ
121  接続
125  ローカルエリアネットワーク(LAN)
150  通信タワー
151  接続
155  ワイドエリアネットワーク(WAN)
180  受信者コンピューティングデバイス
181  接続
185  ラップトップコンピューティングデバイス
186  接続
202  表示
222  グラフィカル要素
223  グラフィカル要素
226  指
250  スクリーン
252  表示
253  グラフィカル要素
270  PTTセッションプレゼンテーション
293  グラフィカル要素
302  表示
304  表現
306  質問
308  第2のボタン
310  第1のボタン
320  表示
322  表現
324  第2のボタン
326  第1のボタン
350  表示
352  表現
354  質問
356  第2のボタン
358  第1のボタン
600  図
602  動作
604  勧誘メッセージ
606  動作
606'  随意の動作
608  応答メッセージ
608'  随意の応答メッセージ
610  動作
610'  随意の動作
612  随意の更新された勧誘メッセージ
614  取り消しメッセージ
616  動作
650  図
654  中継された勧誘メッセージ
658  中継された応答メッセージ
658'  随意の中継された応答メッセージ
662  随意の中継された更新された勧誘メッセージ
664  中継された取り消しメッセージ
670  図
672  動作
672'  随意の動作
676  随意の更新された勧誘メッセージ
678  メッセージ
680  動作
681  随意の動作
681'  随意の取出し要求メッセージ
682  取り消しメッセージ
701  プロセッサ
702  揮発性内部メモリ
706  ディスクドライブ
708  DVDドライブ
710  コネクタポート
712  キーボード
714  タッチパッド
716  ディスプレイ
718  トランシーバ
720  アンテナ
800  マルチコアデバイス
801  プロセッサ
802  内部メモリ
804  タッチスクリーンコントローラ
808  無線信号トランシーバ
810  アンテナ
812  スクリーン
814  スピーカ
816  セルラーネットワークワイヤレスモデムチップ
818  周辺デバイス接続インターフェース
820  ハウジング
822  電源
901  プロセッサ
902  揮発性メモリ、内部メモリ
903  ディスクドライブ
904  ネットワークアクセスポート
905  ネットワーク
906  DVDディスクドライブ
【図１】
0006469117.tif 000002
【図２Ａ】
0006469117.tif 000003
【図２Ｂ】
0006469117.tif 000004
【図２Ｃ】
0006469117.tif 000005
【図２Ｄ】
0006469117.tif 000006
【図２Ｅ】
0006469117.tif 000007
【図２Ｆ】
0006469117.tif 000008
【図３Ａ】
0006469117.tif 000009
【図３Ｂ】
0006469117.tif 000010
【図３Ｃ】
0006469117.tif 000011
【図４Ａ】
0006469117.tif 000012
【図４Ｂ】
0006469117.tif 000013
【図４Ｃ】
0006469117.tif 000014
【図４Ｄ】
0006469117.tif 000015
【図４Ｅ】
0006469117.tif 000016
【図５Ａ】
0006469117.tif 000017
【図５Ｂ】
0006469117.tif 000018
【図６Ａ】
0006469117.tif 000019
【図６Ｂ】
0006469117.tif 000020
【図６Ｃ】
0006469117.tif 000021
【図７】
0006469117.tif 000022
【図８】
0006469117.tif 000023
【図９】
0006469117.tif 000024