(57)【要約】      （修正有）【課題】モバイル・デバイス上のアプリケーションからリモート・ウェブ・クライアントを扱うための好適な技法を提供する。【解決手段】装置は、メッセージング・アプリケーションを含む。メッセージング・アプリケーションは、リモート・ウェブ・ブラウザがメッセージング・アプリケーションからメッセージング更新を受信するための要求を、リモート・ウェブ・ブラウザから受信する工程、メッセージング・アプリケーションとリモート・ウェブ・ブラウザとの間に暗号化された接続を確立する工程、メッセージング更新をメッセージング・アプリケーションで受信する工程およびメッセージング更新をメッセージング・アプリケーションからリモート・ウェブ・ブラウザに送信する工程を行う。【選択図】図５
2019149193.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータにより実行される方法であって、
モバイル・デバイス上のメッセージング・アプリケーションで、リモート・ウェブ・ブラウザから、該リモート・ウェブ・ブラウザが前記メッセージング・アプリケーションからメッセージング更新を受信するための要求を受信する工程と、
該メッセージング・アプリケーションと該リモート・ウェブ・ブラウザとの間に暗号化された接続を確立する工程と、
メッセージング更新を該メッセージング・アプリケーションで受信する工程と、
該メッセージング更新を該メッセージング・アプリケーションから該リモート・ウェブ・ブラウザに送信する工程と、を備える方法。
【請求項２】
前記暗号化された接続が、リモート・ウェブ・サーバを介して送信される、請求項１に記載の方法。
【請求項３】
前記メッセージング・アプリケーションが、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられ、
前記リモート・ウェブ・サーバが、今後のウェブ・ブラウザ・セッションのために該第１のユーザ・アカウントについてのメッセージング状態をキャッシュするように動作し、
前記リモート・ウェブ・サーバ上でキャッシュされたメッセージング状態へのアクセスが、前記モバイル・デバイス上のメッセージング・アプリケーションによって制御される、請求項２に記載の方法。
【請求項４】
前記メッセージング・アプリケーションが、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられ、
前記メッセージング更新が、該第１のユーザ・アカウントと第２のユーザ・アカウントとの間のメッセージング会話に対応し、
前記方法が、
該第１のユーザ・アカウントに関連付けられているメッセージング状態を、前記モバイル・デバイス上のローカル・ストアから取り出す工程であって、該メッセージング状態が、該第１のユーザ・アカウントについての連絡先リストの少なくとも一部分を含み、該メッセージング状態が、該第１のユーザ・アカウントと該第２のユーザ・アカウントとの間のメッセージング会話の履歴を含む、前記取り出す工程と、
該メッセージング状態を前記リモート・ウェブ・ブラウザに送信する工程と、をさらに備える、請求項１に記載の方法。
【請求項５】
前記第１のユーザ・アカウントについての連絡先リストを取り出す工程と、
前記連絡先リストにおける連絡先のメッセージング・アクティビティに基づいて、前記連絡先リストの少なくとも一部分を決定する工程と、をさらに備える請求項４に記載の方法。
【請求項６】
前記リモート・ウェブ・ブラウザによって表示されるマシン可読光ラベルを、前記モバイル・デバイスのカメラ・デバイスを使用して取り込む工程と、
該マシン可読光ラベルからウェブ・セッション識別子を抽出する工程と、
該ウェブ・セッション識別子に基づいて、前記暗号化された接続の確立のために前記リモート・ウェブ・ブラウザを識別する工程と、をさらに備える請求項１に記載の方法。
【請求項７】
前記メッセージング・アプリケーションが、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられ、
前記方法が、
該メッセージング・サービスの第２のユーザ・アカウントとのメッセージング会話に関連付けられている送出メッセージを、前記暗号化された接続上で前記リモート・ウェブ・ブラウザから受信する工程と、
該送出メッセージを、該第２のユーザ・アカウントに関連付けられている第２のメッセージング・アプリケーションに送信する工程と、をさらに備える請求項１に記載の方法。
【請求項８】
装置であって、
モバイル・デバイスのプロセッサ回路と、
メッセージング・アプリケーションであって、
リモート・ウェブ・ブラウザがメッセージング・アプリケーションからメッセージング更新を受信するための要求を、該リモート・ウェブ・ブラウザから受信する工程、
該メッセージング・アプリケーションと該リモート・ウェブ・ブラウザとの間に暗号化された接続を確立する工程、
メッセージング更新を該メッセージング・アプリケーションで受信する工程、
該メッセージング更新を該メッセージング・アプリケーションから該リモート・ウェブ・ブラウザに送信する工程、を行うように、前記プロセッサ回路上で動作する前記メッセージング・アプリケーションと、を備える装置。
【請求項９】
前記暗号化された接続が、リモート・ウェブ・サーバを介して送信される、請求項８に記載の装置。
【請求項１０】
前記メッセージング・アプリケーションが、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられ、
前記リモート・ウェブ・サーバが、今後のウェブ・ブラウザ・セッションのために該第１のユーザ・アカウントについてのメッセージング状態をキャッシュするように動作し、
前記リモート・ウェブ・サーバ上でキャッシュされたメッセージング状態へのアクセスが、前記モバイル・デバイス上の前記メッセージング・アプリケーションによって制御される、請求項９に記載の装置。
【請求項１１】
前記メッセージング・アプリケーションが、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられ、
前記メッセージング更新が、該第１のユーザ・アカウントと第２のユーザ・アカウントとの間のメッセージング会話に対応し、
前記メッセージング・アプリケーションがさらに、
該第１のユーザ・アカウントに関連付けられているメッセージング状態を、前記モバイル・デバイス上のローカル・ストアから取り出す工程であって、該メッセージング状態が、該第１のユーザ・アカウントについての連絡先リストの少なくとも一部分を含み、該メッセージング状態が、該第１のユーザ・アカウントと該第２のユーザ・アカウントとの間のメッセージング会話の履歴を含む、前記取り出す工程と、
該メッセージング状態を前記リモート・ウェブ・ブラウザに送信する工程と、を行うように動作する、請求項８に記載の装置。
【請求項１２】
前記メッセージング・アプリケーションがさらに、
前記第１のユーザ・アカウントについての連絡先リストを取り出す工程と、
前記連絡先リストにおける連絡先のメッセージング・アクティビティに基づいて、前記連絡先リストの少なくとも一部分を決定する工程と、を行うように動作する、請求項１１に記載の装置。
【請求項１３】
前記メッセージング・アプリケーションがさらに、
前記リモート・ウェブ・ブラウザによって表示されるマシン可読光ラベルを、前記モバイル・デバイスのカメラ・デバイスを使用して取り込む工程と、
該マシン可読光ラベルからウェブ・セッション識別子を抽出する工程と、
該ウェブ・セッション識別子に基づいて、前記暗号化された接続の確立のために前記リモート・ウェブ・ブラウザを識別する工程と、を行うように動作する、請求項８に記載の装置。
【請求項１４】
前記メッセージング・アプリケーションが、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられ、
前記メッセージング・アプリケーションがさらに、
該メッセージング・サービスの第２のユーザ・アカウントとのメッセージング会話に関連付けられている送出メッセージを、前記暗号化された接続上で前記リモート・ウェブ・ブラウザから受信する工程と、
該送出メッセージを、該第２のユーザ・アカウントに関連付けられている第２のメッセージング・アプリケーションに送信する工程と、を行うように動作する、請求項８に記載の装置。
【請求項１５】
実行されるとき、システムに、
モバイル・デバイス上のメッセージング・アプリケーションで、リモート・ウェブ・ブラウザから、該リモート・ウェブ・ブラウザが前記メッセージング・アプリケーションからメッセージング更新を受信するための要求を受信する工程と、
該メッセージング・アプリケーションと該リモート・ウェブ・ブラウザとの間に暗号化された接続を確立する工程と、
メッセージング更新を該メッセージング・アプリケーションで受信する工程と、
該メッセージング更新を該メッセージング・アプリケーションから該リモート・ウェブ・ブラウザに送信する工程と、を行わせる命令を備える少なくとも１つのコンピュータ可読記憶媒体。
【請求項１６】
前記暗号化された接続が、リモート・ウェブ・サーバを介して送信される、請求項１５に記載の少なくとも１つのコンピュータ可読記憶媒体。
【請求項１７】
前記メッセージング・アプリケーションが、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられ、
前記リモート・ウェブ・サーバが、今後のウェブ・ブラウザ・セッションのために該第１のユーザ・アカウントについてのメッセージング状態をキャッシュするように動作し、
前記リモート・ウェブ・サーバ上でキャッシュされたメッセージング状態へのアクセスが、前記モバイル・デバイス上のメッセージング・アプリケーションによって制御される、請求項１６に記載の少なくとも１つのコンピュータ可読記憶媒体。
【請求項１８】
前記メッセージング・アプリケーションが、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられ、
前記メッセージング更新が、該第１のユーザ・アカウントと第２のユーザ・アカウントとの間のメッセージング会話に対応し、
実行されるとき、システムに、
該第１のユーザ・アカウントについての連絡先リストを取り出す工程、
該連絡先リストにおける連絡先のメッセージング・アクティビティに基づいて、該連絡先リストの一部分を決定する工程、
該第１のユーザ・アカウントに関連付けられているメッセージング状態を、前記モバイル・デバイス上のローカル・ストアから取り出す工程であって、該メッセージング状態が、該第１のユーザ・アカウントについての連絡先リストの少なくとも一部分を含み、該メッセージング状態が、該第１のユーザ・アカウントと該第２のユーザ・アカウントとの間のメッセージング会話の履歴を含む、前記取り出す工程、
該メッセージング状態を前記リモート・ウェブ・ブラウザに送信する工程、を行わせる命令をさらに備える請求項１５に記載の少なくとも１つのコンピュータ可読記憶媒体。
【請求項１９】
実行されるとき、システムに、
前記リモート・ウェブ・ブラウザによって表示されるマシン可読光ラベルを、前記モバイル・デバイスのカメラ・デバイスを使用して取り込む工程と、
該マシン可読光ラベルからウェブ・セッション識別子を抽出する工程と、
該ウェブ・セッション識別子に基づいて、前記暗号化された接続の確立のために前記リモート・ウェブ・ブラウザを識別する工程と、を行わせる命令をさらに備える請求項１５に記載の少なくとも１つのコンピュータ可読記憶媒体。
【請求項２０】
前記メッセージング・アプリケーションが、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられ、
実行されるとき、システムに、
該メッセージング・サービスの第２のユーザ・アカウントとのメッセージング会話に関連付けられている送出メッセージを、暗号化された接続上で前記リモート・ウェブ・ブラウザから受信する工程と、
該送出メッセージを、該第２のユーザ・アカウントに関連付けられている第２のメッセージング・アプリケーションに送信する工程と、を行わせる命令をさらに備える請求項１５に記載の少なくとも１つのコンピュータ可読記憶媒体。
【請求項２１】
コンピュータにより実行される方法であって、
モバイル・デバイス上のメッセージング・アプリケーションで、リモート・ウェブ・ブラウザから、該リモート・ウェブ・ブラウザがメッセージング・アプリケーションからメッセージング更新を受信するための要求を受信する工程と、
該メッセージング・アプリケーションと該リモート・ウェブ・ブラウザとの間に暗号化された接続を確立する工程と、
メッセージング更新を該メッセージング・アプリケーションで受信する工程と、
該メッセージング更新を該メッセージング・アプリケーションから該リモート・ウェブ・ブラウザに送信する工程と、を備える方法。
【請求項２２】
前記暗号化された接続が、リモート・ウェブ・サーバを介して送信される、請求項２１に記載の方法。
【請求項２３】
前記メッセージング・アプリケーションが、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられ、
前記リモート・ウェブ・サーバが、今後のウェブ・ブラウザ・セッションのために該第１のユーザ・アカウントについてのメッセージング状態をキャッシュするように動作し、
前記リモート・ウェブ・サーバ上でキャッシュされたメッセージング状態へのアクセスが、前記モバイル・デバイス上の前記メッセージング・アプリケーションによって制御される、請求項２２に記載の方法。
【請求項２４】
前記メッセージング・アプリケーションが、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられ、
前記メッセージング更新が、該第１のユーザ・アカウントと第２のユーザ・アカウントとの間のメッセージング会話に対応し、
前記方法が、
該第１のユーザ・アカウントに関連付けられているメッセージング状態を、前記モバイル・デバイス上のローカル・ストアから取り出す工程であって、該メッセージング状態が、該第１のユーザ・アカウントについての連絡先リストの少なくとも部分を含み、該メッセージング状態が、該第１のユーザ・アカウントと該第２のユーザ・アカウントとの間のメッセージング会話の履歴を含む、前記取り出す工程と、
該メッセージング状態を前記リモート・ウェブ・ブラウザに送信する工程と、をさらに備える請求項２１乃至２３のいずれか１項に記載の方法。
【請求項２５】
前記第１のユーザ・アカウントについての連絡先リストを取り出す工程と、
前記連絡先リストにおける連絡先のメッセージング・アクティビティに基づいて、前記連絡先リストの少なくとも一部分を決定する工程と、をさらに備える請求項２４に記載の方法。
【請求項２６】
前記リモート・ウェブ・ブラウザによって表示されるマシン可読光ラベルを、前記モバイル・デバイスのカメラ・デバイスを使用して取り込む工程と、
該マシン可読光ラベルからウェブ・セッション識別子を抽出する工程と、
該ウェブ・セッション識別子に基づいて、前記暗号化された接続の確立のために前記リモート・ウェブ・ブラウザを識別する工程と、をさらに含む請求項２１乃至２５のいずれか１項に記載の方法。
【請求項２７】
前記メッセージング・アプリケーションが、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられ、
前記方法が、
該メッセージング・サービスの第２のユーザ・アカウントとのメッセージング会話に関連付けられている送出メッセージを、暗号化された接続上で前記リモート・ウェブ・ブラウザから受信する工程と、
該送出メッセージを、該第２のユーザ・アカウントに関連付けられている第２のメッセージング・アプリケーションに送信する工程と、をさらに備える、請求項２１乃至２６のいずれか１項に記載の方法。
【請求項２８】
実行されるとき、請求項２１乃至２７のいずれか１項に記載の方法を実行するように動作可能であるソフトウェアを実装する１つまたは複数のコンピュータ可読非一時的記憶媒体。
【請求項２９】
１つまたは複数のプロセッサと、該１つまたは複数のプロセッサに結合され、該１つまたは複数のプロセッサによって実行可能な命令を備える少なくとも１つのメモリと、を備えるシステムであって、該１つまたは複数のプロセッサが、該命令を実行するとき、請求項２１乃至２７のいずれか１項に記載の方法を実行するように動作可能である、システム。
【請求項３０】
好ましくはコンピュータ可読非一時的記憶媒体を含むコンピュータ・プログラム製品であって、データ処理システム上で実行されるとき、請求項２１乃至２７のいずれか１項に記載の方法を実行するように動作可能であるコンピュータ・プログラム製品。
【発明の詳細な説明】
【背景技術】
【０００１】
スマートフォンなどのモバイル・デバイスのユーザは、自分のモバイル・デバイスを使用して、アプリケーションを実行することができる。これらのアプリケーションは、そのユーザに代わって、通信およびネットワーク・タスクを実施することができる。アプリケーションは、ユーザ間でメッセージを送るためのメッセージング・アプリケーションを含むことがある。ユーザは、メッセージング・アプリケーションを使用して友達と会話することができ、メッセージング・アプリケーションにアクセスできることに価値を見出すことができる。
【発明の概要】
【課題を解決するための手段】
【０００２】
以下は、本明細書に記載されるいくつかの新規の実施形態の基本的な理解を提供するために、簡単な概要を提示する。この概要は、包括的な概観ではなく、本発明の主要／重要要素を特定することも、本発明の範囲を画定することも意図していない。この概要の唯一の目的は、後に提示されるより詳細な説明への前置きとして、いくつかの概念を簡単な形態で提示することである。
【０００３】
さまざまな実施形態は、一般に、モバイル・デバイス上のアプリケーションからリモート・ウェブ・クライアントを扱うための技法を対象とする。いくつかの実施形態は特に、モバイル・デバイス上のメッセージング・アプリケーションから、メッセージング・サービスのためにリモート・ウェブ・クライアントを扱うための技法を対象とし、ここでメッセージング・アプリケーションは、メッセージング・サービスとのユーザの対話のための信頼できる情報源である。１実施形態において、たとえば、装置が、メッセージング・アプリケーションを含むことができ、メッセージング・アプリケーションは、リモート・ウェブ・ブラウザがメッセージング・アプリケーションからメッセージング更新を受信するための要求を、リモート・ウェブ・ブラウザから受信する工程、メッセージング・アプリケーションとリモート・ウェブ・ブラウザとの間に暗号化された接続を確立する工程、メッセージング更新をメッセージング・アプリケーションで受信する工程、およびメッセージング更新をメッセージング・アプリケーションからリモート・ウェブ・ブラウザに送信する工程を行うように、プロセッサ回路上で動作する。他の実施形態が説明され、特許請求される。
【０００４】
上記を達成するために、および関連する目的のために、ある特定の例示的な態様が、以下の説明および添付の図面に関連して本明細書において記載される。これらの態様は、本明細書において開示される原理を実行することができる様々な方法を示し、全ての態様およびその均等物が、特許請求される主題の範囲内にあることが意図される。他の利点および新規の特徴は、以下の詳細な説明を図面と併せて検討することにより明らかとなるであろう。
【０００５】
本発明による実施形態は、特に、方法、記憶媒体、システム、およびコンピュータ・プログラム製品を対象とする添付の特許請求の範囲において開示され、１つの請求項のカテゴリ、たとえば、方法において言及される任意の特徴は、別の請求項のカテゴリ、たとえば、システムにおいても同様に特許請求され得る。添付の特許請求の範囲における従属関係またはそこに戻る参照は、形式的な理由のために選ばれているにすぎない。しかしながら、（特定の多数項従属関係において）任意の先行する請求項に戻る意図的な参照から生じる任意の主題も同様に特許請求されてよく、それにより、添付の特許請求の範囲において選ばれた従属関係に関わらず、請求項およびその特徴の任意の組合せが開示され、特許請求され得る。特許請求され得る主題は、添付の特許請求の範囲において述べられる特徴の組合せだけでなく、特許請求の範囲における特徴の任意の他の組合せもまた含み、特許請求の範囲において言及される各特徴は、特許請求の範囲における任意の他の特徴と、または他の特徴の組合せと、組み合わせられてよい。さらに、本明細書で説明または図示される実施形態および特徴のうちのいずれかは、別個の請求項において特許請求されてもよく、および／または、本明細書で説明もしくは図示される任意の実施形態もしくは特徴との任意の組合せにおいて、または添付の特許請求の範囲の特徴のうちのいずれかとの任意の組合せにおいて、特許請求されてもよい。
【０００６】
本発明による１実施形態において、コンピュータにより実行される方法が、
リモート・ウェブ・ブラウザがメッセージング・アプリケーションからメッセージング更新を受信するための要求を、リモート・ウェブ・ブラウザから、モバイル・デバイス上のメッセージング・アプリケーションで受信する工程と、
メッセージング・アプリケーションとリモート・ウェブ・ブラウザとの間に暗号化された接続を確立する工程と、
メッセージング更新をメッセージング・アプリケーションで受信する工程と、
メッセージング更新をメッセージング・アプリケーションからリモート・ウェブ・ブラウザに送信する工程と、を含む。
【０００７】
本発明による１実施形態において、方法は、暗号化された接続がリモート・ウェブ・サーバを介して送信されることをさらに含むことができる。
本発明による１実施形態において、メッセージング・アプリケーションは、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられていてよく、リモート・ウェブ・サーバは、今後のウェブ・ブラウザ・セッションのために第１のユーザ・アカウントについてのメッセージング状態をキャッシュするように動作してよく、方法は、リモート・ウェブ・サーバ上でキャッシュされたメッセージング状態へのアクセスが、モバイル・デバイス上のメッセージング・アプリケーションによって制御されることをさらに含むことができる。
【０００８】
本発明による１実施形態において、メッセージング・アプリケーションは、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられていてよく、メッセージング更新は、第１のユーザ・アカウントと第２のユーザ・アカウントとの間のメッセージング会話に対応してよく、方法は、
第１のユーザ・アカウントに関連付けられているメッセージング状態を、モバイル・デバイス上のローカル・ストアから取り出す工程であって、メッセージング状態が、第１のユーザ・アカウントについての連絡先リストの少なくとも一部分を含み、メッセージング状態が、第１のユーザ・アカウントと第２のユーザ・アカウントとの間のメッセージング会話の履歴を含む、取り出す工程と、
メッセージング状態をリモート・ウェブ・ブラウザに送信する工程と、をさらに含むことができる。
【０００９】
本発明による１実施形態において、方法は、
第１のユーザ・アカウントについての連絡先リストを取り出す工程と、
連絡先リストにおける連絡先のメッセージング・アクティビティに基づいて、連絡先リストの少なくとも一部分を決定する工程と、をさらに含むことができる。
【００１０】
本発明による１実施形態において、方法は、
リモート・ウェブ・ブラウザによって表示されるマシン可読光ラベルを、モバイル・デバイスのカメラ・デバイスを使用して取り込む工程と、
マシン可読光ラベルからウェブ・セッション識別子を抽出する工程と、
ウェブ・セッション識別子に基づいて、暗号化された接続の確立のためにリモート・ウェブ・ブラウザを識別する工程と、をさらに含むことができる。
【００１１】
本発明による１実施形態において、メッセージング・アプリケーションは、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられていてよく、方法は、
メッセージング・サービスの第２のユーザ・アカウントとのメッセージング会話に関連付けられている送出メッセージを、暗号化された接続上でリモート・ウェブ・ブラウザから受信する工程と、
送出メッセージを、第２のユーザ・アカウントに関連付けられている第２のメッセージング・アプリケーションに送信する工程と、をさらに含むことができる。
【００１２】
同様に特許請求され得る本発明によるさらなる実施形態において、装置が、
モバイル・デバイス上のプロセッサ回路と、
リモート・ウェブ・ブラウザがメッセージング・アプリケーションからメッセージング更新を受信するための要求を、リモート・ウェブ・ブラウザから受信する工程、
メッセージング・アプリケーションとリモート・ウェブ・ブラウザとの間に暗号化された接続を確立する工程、
メッセージング更新をメッセージング・アプリケーションで受信する工程、および
メッセージング更新をメッセージング・アプリケーションからリモート・ウェブ・ブラウザに送信する工程、を行うように、プロセッサ回路上で動作するメッセージング・アプリケーションと、を含む。
【００１３】
本発明によるさらなる実施形態において、装置は、暗号化された接続がリモート・ウェブ・サーバを介して送信され得ることを含むことができる。
本発明によるさらなる実施形態において、メッセージング・アプリケーションは、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられていてよく、リモート・ウェブ・サーバは、今後のウェブ・ブラウザ・セッションのために第１のユーザ・アカウントについてのメッセージング状態をキャッシュするように動作してよく、装置はさらに、リモート・ウェブ・サーバ上でキャッシュされたメッセージング状態へのアクセスが、モバイル・デバイス上のメッセージング・アプリケーションによって制御され得ることを含むことができる。
【００１４】
本発明によるさらなる実施形態において、メッセージング・アプリケーションは、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられていてよく、メッセージング更新は、第１のユーザ・アカウントと第２のユーザ・アカウントとの間のメッセージング会話に対応していてよく、メッセージング・アプリケーションはさらに、第１のユーザ・アカウントに関連付けられているメッセージング状態を、モバイル・デバイス上のローカル・ストアから取り出すように動作してよく、メッセージング状態は、第１のユーザ・アカウントについての連絡先リストの少なくとも一部分を含むことができ、メッセージング状態は、第１のユーザ・アカウントと第２のユーザ・アカウントとの間のメッセージング会話の履歴を含むことができ、装置はさらに、メッセージング状態をリモート・ウェブ・ブラウザに送信することができる。
【００１５】
本発明によるさらなる実施形態において、メッセージング・アプリケーションはさらに、第１のユーザ・アカウントについての連絡先リストを取り出すように動作してよく、装置はさらに、連絡先リストにおける連絡先のメッセージング・アクティビティに基づいて、連絡先リストの少なくとも一部分を決定することができる。
【００１６】
本発明によるさらなる実施形態において、メッセージング・アプリケーションはさらに、マシン可読光ラベルをモバイル・デバイスのカメラ・デバイスを使用して取り込むように動作してよく、マシン可読光ラベルは、リモート・ウェブ・ブラウザによって表示されてよく、装置はさらに、マシン可読光ラベルからウェブ・セッション識別子を抽出することができ、ウェブ・セッション識別子に基づいて、暗号化された接続の確立のためにリモート・ウェブ・ブラウザを識別することができる。
【００１７】
本発明によるさらなる実施形態において、メッセージング・アプリケーションは、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられていてよく、メッセージング・アプリケーションはさらに、送出メッセージを暗号化された接続上でリモート・ウェブ・ブラウザから受信するように動作してよく、送出メッセージは、メッセージング・サービスの第２のユーザ・アカウントとのメッセージング会話に関連付けられていてよく、装置はさらに、送出メッセージを第２のメッセージング・アプリケーションに送信することができ、第２のメッセージング・アプリケーションは、第２のユーザ・アカウントに関連付けられていてよい。
【００１８】
同様に特許請求され得る本発明によるさらなる実施形態において、少なくとも１つのコンピュータ可読記憶媒体が、実行されるとき、システムに、
リモート・ウェブ・ブラウザがメッセージング・アプリケーションからメッセージング更新を受信するための要求を、リモート・ウェブ・ブラウザから、モバイル・デバイス上のメッセージング・アプリケーションで受信する工程と、
メッセージング・アプリケーションとリモート・ウェブ・ブラウザとの間に暗号化された接続を確立する工程と、
メッセージング更新をメッセージング・アプリケーションで受信する工程と、
メッセージング更新をメッセージング・アプリケーションからリモート・ウェブ・ブラウザに送信する工程と、を行わせる命令を含む。
【００１９】
本発明による１実施形態において、コンピュータ可読記憶媒体はさらに、暗号化された接続がリモート・ウェブ・サーバを介して送信されることを含むことができる。
本発明による１実施形態において、メッセージング・アプリケーションは、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられていてよく、リモート・ウェブ・サーバは、今後のウェブ・ブラウザ・セッションのために第１のユーザ・アカウントについてのメッセージング状態をキャッシュするように動作してよく、コンピュータ可読記憶媒体はさらに、リモート・ウェブ・サーバ上でキャッシュされたメッセージング状態へのアクセスが、モバイル・デバイス上のメッセージング・アプリケーションによって制御されることを含むことができる。
【００２０】
本発明による１実施形態において、メッセージング・アプリケーションは、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられていてよく、メッセージング更新は、第１のユーザ・アカウントと第２のユーザ・アカウントとの間のメッセージング会話に対応してよく、コンピュータ可読記憶媒体はさらに、実行されるとき、システムに、
第１のユーザ・アカウントについての連絡先リストを取り出す工程、および
連絡先リストにおける連絡先のメッセージング・アクティビティに基づいて、連絡先リストの一部分を決定する工程、または、
第１のユーザ・アカウントに関連付けられているメッセージング状態を、モバイル・デバイス上のローカル・ストアから取り出す工程であって、メッセージング状態が、第１のユーザ・アカウントについての連絡先リストの少なくとも一部分を含み、メッセージング状態が、第１のユーザ・アカウントと第２のユーザ・アカウントとの間のメッセージング会話の履歴を含む、取り出す工程、および
メッセージング状態をリモート・ウェブ・ブラウザに送信する工程、を行わせる命令を含むことができる。
【００２１】
本発明による１実施形態において、コンピュータ可読記憶媒体はさらに、実行されるとき、システムに、
リモート・ウェブ・ブラウザによって表示されるマシン可読光ラベルを、モバイル・デバイスのカメラ・デバイスを使用して取り込む工程と、
マシン可読光ラベルからウェブ・セッション識別子を抽出する工程と、
ウェブ・セッション識別子に基づいて、暗号化された接続の確立のためにリモート・ウェブ・ブラウザを識別する工程と、を行わせる命令を含むことができる。
【００２２】
本発明による１実施形態において、メッセージング・アプリケーションは、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられていてよく、コンピュータ可読記憶媒体はさらに、実行されるとき、システムに、
メッセージング・サービスの第２のユーザ・アカウントとのメッセージング会話に関連付けられている送出メッセージを、暗号化された接続上でリモート・ウェブ・ブラウザから受信する工程と、
送出メッセージを、第２のユーザ・アカウントに関連付けられている第２のメッセージング・アプリケーションに送信する工程と、を行わせる命令を含むことができる。
【００２３】
本発明によるさらなる実施形態において、１つまたは複数のコンピュータ可読非一時的記憶媒体が、実行されるとき、本発明または上述した実施形態のうちのいずれかによる方法を実施するように動作可能であるソフトウェアを具体化する。
【００２４】
本発明によるさらなる実施形態において、システムが、１つまたは複数のプロセッサと、プロセッサに結合され、プロセッサによって実行可能な命令からなる少なくとも１つのメモリとを含み、プロセッサは、命令を実行するとき、本発明または上述した実施形態のうちのいずれかによる方法を実施するように動作可能である。
【００２５】
本発明によるさらなる実施形態において、好ましくはコンピュータ可読非一時的記憶媒体を含むコンピュータ・プログラム製品が、データ処理システム上で実行されるとき、本発明または上述した実施形態のうちのいずれかによる方法を実施するように動作可能である。
【図面の簡単な説明】
【００２６】
【図１】メッセージング・ウェブ・アクセス・システムの１実施形態を示す図。
【図２】ローカル・ウェブ・サーバがモバイル・デバイス上で実行されるメッセージング・ウェブ・アクセス・システムの１実施形態を示す図。
【図３】リモート・ウェブ・サーバが別個のウェブ・サーバ・デバイス上で実行されるメッセージング・ウェブ・アクセス・システムの１実施形態を示す図。
【図４】メッセージング・システムの１実施形態を示す図。
【図５】メッセージング・ウェブ・アクセス・システムについての論理フローの１実施形態を示す図。
【図６】図１のシステムのための集中型システムの１実施形態を示す図。
【図７】図１のシステムのための分散型システムの１実施形態を示す図。
【図８】コンピューティング・アーキテクチャの１実施形態を示す図。
【図９】通信アーキテクチャの１実施形態を示す図。
【図１０】無線デバイス・アーキテクチャの１実施形態を示す図。
【発明を実施するための形態】
【００２７】
さまざまな実施形態は、モバイル・デバイス上のメッセージング・アプリケーションへのアクセス・ポイントとして、ウェブ・ブラウザを確立することを対象とする。メッセージング・アプリケーションは、メッセージング・サービスの一環として、他のユーザに対してメッセージを送る権限をユーザに与えることができる。いくつかの実装形態において、モバイル・デバイス上のメッセージング・アプリケーションは、メッセージング・サービスへのユーザのアクセスのための認可として、メッセージング・サービスを用いるユーザのための信頼できる単一ポイントとして、およびメッセージング・サービスのユーザの使用のための情報の多くのリポジトリ（repository）として使用され得る。したがって、モバイル・メッセージング・アプリケーションは、メッセージング・サービスと対話するためのユーザの主要なエンドポイントを含み得る。
【００２８】
メッセージング・サービスのユーザは、メッセージング・サービスにアクセスするために、時にはデスクトップ・コンピュータまたはラップトップ・コンピュータなどのパーソナル・コンピュータを使用したいと思うことがある。しかしながら、メッセージング・アプリケーションが、メッセージング・サービスとのユーザの対話のための制御エンドポイントとしての働きをするので、パーソナル・コンピュータは、モバイル・デバイスが行うのと同じやり方でメッセージング・サービスを使用するのに、メッセージング・サービスのサーバに簡単には接続しないことがある。代わりに、制御エンドポイントとしてのメッセージング・アプリケーションの役割を維持しながら、パーソナル・コンピュータ上でメッセージング・サービスへのアクセスを提供するために、パーソナル・コンピュータ上のウェブ・ブラウザを使用して、モバイル・デバイス上のメッセージング・アプリケーションにアクセスすることができる。結果として、メッセージング・サービスへのアクセスは、メッセージング・サービスによるモバイル・デバイスの優位性を維持しながら、パーソナル・コンピュータに拡張され得る。
【００２９】
次に、図面への参照がなされ、ここで同様の参照番号は、全体を通して同様の要素を指すために使用されている。以下の説明において、解説の目的のために、その徹底した理解を提供するために多数の特定の詳細が述べられる。しかしながら、新規な実施形態は、これらの特定の詳細なしに実施可能であることが明らかであってよい。他の事例において、その説明を円滑にするために、よく知られた構造およびデバイスがブロック図形式で示される。その意図は、特許請求される主題と一致するすべての修正形態、均等形態、および代替形態を包含することである。
【００３０】
本明細書で使用されるとき、「ａ」および「ｂ」および「ｃ」ならびに同様の指示子が任意の正の整数を表す変数であるように意図されることは、注目に値する。したがって、たとえば、ある実装形態がａ＝５の値を設定した場合、コンポーネント１２２−１から１２２−ａまでとして示されるコンポーネント１２２の完全な組は、コンポーネント１２２−１、１２２−２、１２２−３、１２２−４、および１２２−５を含むことができる。実施形態は、この説明に限定はされない。
【００３１】
図１は、メッセージング・ウェブ・アクセス・システム１００についてのブロック図を示す。１実施形態において、メッセージング・ウェブ・アクセス・システム１００は、１つまたは複数のコンポーネントを含むソフトウェア・アプリケーションを有するコンピュータ実装システムを含むことができる。図１に示すメッセージング・ウェブ・アクセス・システム１００は、一定のトポロジにおける限定された数の要素を有するが、メッセージング・ウェブ・アクセス・システム１００は、所与の実装形態の所望に応じて、代替トポロジにおいてより多い、またはより少ない要素を含んでもよいことが認識され得る。図１に示すように、パーソナル・コンピュータ・デバイス１８０上のリモート・ウェブ・ブラウザ（remote web browser）１９０は、リモート・メッセージング・クライアント１７０なしにメッセージング会話を行っているモバイル・デバイス１２０上のメッセージング・アプリケーションへのインタフェースとして使用され得る。
【００３２】
モバイル・デバイス１２０は、ワイヤレス伝送を使用して他のデバイスと通信して、ネットワーク・トラフィックをやり取りすることができる。メッセージング更新１１０のやり取りなどに含まれ得るネットワーク・トラフィックをやり取りすることは、ネットワーク・インタフェース・コントローラ（ＮＩＣ：ｎｅｔｗｏｒｋ  ｉｎｔｅｒｆａｃｅ  ｃｏｎｔｒｏｌｌｅｒ）を介して、ネットワーク・トラフィックを送信すること、および受信することを含んでよい。ＮＩＣは、モバイル・デバイス１２０などのコンピュータ・デバイスをコンピュータ・ネットワークに接続するハードウェア・コンポーネントを含む。ＮＩＣは、ＮＩＣにアクセスし、ＮＩＣを使用する権限をソフトウェア・アプリケーションに与えるソフトウェア・ネットワーク・インタフェースに関連付けられていてよい。ネットワーク・トラフィックは、データ・リンク上で送信される信号として、コンピュータ・ネットワーク上で受信されてよい。ネットワーク・トラフィックは、これらの信号を取り込み、解釈することによって受信され得る。ＮＩＣは、ネットワーク・インターフェース・アプリケーション・プログラミング・インタフェース（ＡＰＩ）を使用して、コンピュータ・ネットワーク上でネットワーク・トラフィックを受信し、ネットワーク・トラフィックを、ソフトウェア・アプリケーションにとってアクセス可能なメモリ・ストレージに移すことができる。
【００３３】
モバイル・デバイス１２０は、ネットワーク上でアクセスされるネットワーク・データを使用して、さまざまな動作を実施することができる。モバイル・デバイス１２０は、セルラー信号１３５を使用して、セルラー・システム１３０にアクセスすることができる。セルラー・システム１３０は、データ・アクセスを含むセルラー・ネットワークであってよく、セルラー・システム１３０はセルラー・プロバイダによって提供され、モバイル・デバイス１２０のユーザはこのセルラー・プロバイダと、モバイル・デバイス１２０に対するセルラー・データ・サーバのサービス契約を有する。モバイル・デバイス１２０は、セルラー・システム１３０を使用して、１つまたは複数の他のデバイスと対話するために公共インターネット１５０にアクセスすることができる。
【００３４】
モバイル・デバイス１２０は、Ｗｉ−Ｆｉ信号１４５を使用して、１つまたは複数のＷｉ−Ｆｉアクセス・ポイント１４０にアクセスすることができる。Ｗｉ−Ｆｉアクセス・ポイント１４０は、複数の異なるオペレータによって提供されてよい。Ｗｉ−Ｆｉアクセス・ポイント１４０のうちのいくつかは、家庭用インターネット接続に基づいてモバイル・デバイス１２０のユーザによって操作されるホームＷｉ−Ｆｉネットワークなどの、性質上私的なものであってもよい。Ｗｉ−Ｆｉアクセス・ポイント１４０のうちのいくつかは、コーヒー・ショップ、ホテル、および他の公共宿泊施設におけるフリーＷｉ−Ｆｉサービスなど、無料で、またはサービスの優待部分として提供されてもよい。モバイル・デバイス１２０は、Ｗｉ−Ｆｉアクセス・ポイント１４０を使用して、１つまたは複数の他のデバイスと対話するために公共インターネット１５０にアクセスすることができる。インターネット１５０とモバイル・デバイス１２０との間の破線は、インターネット１５０にアクセスするための媒体としての役目をするセルラー・システム１３０およびＷｉ−Ｆｉアクセス・ポイント１４０のうちの１つにより、最終的にはインターネット１５０を使用して、メッセージング更新１１０が他のデバイスとやり取りされ得ることを指し示している。
【００３５】
モバイル・デバイス１２０は、リモート又はローカル・メッセージング・アプリケーション２２０，１７０を用いたメッセージング会話に関わることができる。メッセージング会話は、メッセージング更新１１０などのメッセージング更新のやり取りを含むことができる。メッセージング更新は、メッセージ、メッセージ・ステータス更新、およびメッセージング会話のステータスに対する他の更新を含んでよい。
【００３６】
モバイル・デバイス１２０の同じユーザが、パーソナル・コンピュータ・デバイス１８０を所有し、操作することがある。パーソナル・コンピュータ・デバイス１８０は、Ｍａｃ  ＯＳ（登録商標）デバイス、Ｗｉｎｄｏｗｓ（登録商標）デバイス、Ｌｉｎｕｘ（登録商標）デバイス、または別のオペレーティング・システムを稼働する他のコンピュータ・デバイスを含んでよい。パーソナル・コンピュータ・デバイス１８０は、イーサネット接続を介してインターネット１５０に接続することが可能なイーサネット・デバイスであってよい。いくつかの実施形態およびいくつかのケースにおいて、パーソナル・コンピュータ・デバイス１８０は、追加として、または代替として、インターネット１５０までの、セルラー、Ｗｉ−Ｆｉ、または他のネットワーキング技術を使用することができる。パーソナル・コンピュータ・デバイス１８０は、ウェブ・ブラウザ１９０を実行して、モバイル・デバイス１２０上のメッセージング・アプリケーションにアクセスし、モバイル・デバイス１２０上のメッセージング・アプリケーションからメッセージング更新１１０などのメッセージング更新を受信することができる。
【００３７】
メッセージング・ウェブ・アクセス・システム１００は、認可サーバ（または他の好適なコンポーネント）を含むことができ、これにより、ユーザは、たとえば、適切なプライバシー設定を設定することによって、ユーザのアクションを、メッセージング・ウェブ・アクセス・システム１００によってログさせる、または他のシステム（たとえば、サードパーティ・システム）と共有させるオプトイン（opt in）、またはオプトアウト（opt out）することが可能になる。ユーザのプライバシー設定は、ユーザに関連付けられている何の情報がログされ得るか、ユーザに関連付けられている情報がどのようにログされ得るか、ユーザに関連付けられている情報がいつログされ得るか、ユーザに関連付けられている情報を誰がログできるか、ユーザに関連付けられている情報が誰と共有し得るか、およびユーザに関連付けられている情報が何の目的でログされ得るか、または共有され得るかを決定することができる。認可サーバ、または他の認可コンポーネントは、必要に応じて、ブロッキング、データ・ハッシュ化、匿名化、または他の好適な技法を通して、メッセージング・ウェブ・アクセス・システム１００のユーザの１つまたは複数のプライバシー設定、およびソーシャル・ネットワーキング・システムの他の要素を実施するために使用されてよい。
【００３８】
図２は、ローカル・ウェブ・サーバ２５０がモバイル・デバイス１２０上で実行される、メッセージング・ウェブ・アクセス・システム１００の１実施形態を示す。
図２に示すように、モバイル・デバイス１２０は、ローカル・メッセージング・アプリケーション２２０を実行することができる。ローカル・メッセージング・アプリケーション２２０は、他のユーザのそれぞれのデバイスとのメッセージのやり取りを介して他のユーザとメッセージをやり取りするために、モバイル・デバイス１２０のユーザによって操作され得る。メッセージは、テキスト・シーケンス、画像ファイル、映像ファイル、サウンド・ファイル、およびメディア・ファイルの任意の他の形式のうちの１つまたは複数を含むことができる。ローカル・メッセージング・アプリケーション２２０は、他のユーザから受信したメッセージを表示するために、モバイル・デバイス１２０のユーザによるメッセージのエントリを受信するために、およびメッセージングに関連した他のユーザ・インタフェース要素を表示するために、モバイル・デバイス１２０上のインタフェースを使用することができる。
【００３９】
ローカル・メッセージング・アプリケーション２２０は、メッセージングが主要な目的である専用のローカル・メッセージング・アプリケーション２２０であってよい。専用のローカル・メッセージング・アプリケーション２２０は、メッセージング・サーバを含むメッセージング・プラットフォームを管理するメッセージング・プロバイダにとりわけ関連付けられてもよいし、またはメッセージング・サーバ１１０を含むメッセージング・プラットフォームを管理するメッセージング・プロバイダを含む複数の異なるメッセージング・プロバイダと連携するように動作する一般のクライアントであってもよい。
【００４０】
代替として、ローカル・メッセージング・アプリケーション２２０は、追加の機能性を提供するアプリケーションのコンポーネントであってもよい。たとえば、ソーシャル・ネットワーキング・サービスは、ソーシャル・ネットワーキング・サービスにアクセスし、ソーシャル・ネットワーキング・サービスを使用するために、モバイル・デバイス上で使用するためのソーシャル・ネットワーキング・アプリケーションを提供することができる。ローカル・メッセージング・アプリケーション２２０が、ソーシャル・ネットワーキング・サービスのメッセージング機能性へのアクセスをモバイル・デバイス１２０のユーザに提供していることにより、ソーシャル・ネットワーキング・サービスは、メッセージング機能性を含むことができる。
【００４１】
ローカル・メッセージング・アプリケーション２２０は、リモート・ウェブ・ブラウザ１９０がローカル・メッセージング・アプリケーション２２０からメッセージング更新を受信するための要求を、リモート・ウェブ・ブラウザ１９０から受信するように動作してよい。この要求は、ローカル・メッセージング・アプリケーション２２０のメッセージング機能性へのウェブ・インタフェースに関連付けられているウェブ・ページに対するハイパーテキスト・トランスポート・プロトコル（ＨＴＴＰ）要求を介して受信され得る。ＨＴＴＰ要求は、ハイパーテキスト・トランスポート・プロトコル・セキュア（ＨＴＴＰＳ）、またはＨＴＴＰ標準に対する他のセキュアなバリエーションとして受信されてよい。この要求は、ウェブ・ページ上のウェブベースのメッセージング・オプションの選択を介して受信され得る。
【００４２】
ローカル・メッセージング・アプリケーション２２０は、メッセージング更新を受信するための要求に応答して、ローカル・メッセージング・アプリケーション２２０とリモート・ウェブ・ブラウザ１９０との間に暗号化された接続を確立することができる。ローカル・メッセージング・アプリケーション２２０は、ローカル・メッセージング・アプリケーション２２０でメッセージング更新１１０を受信し、メッセージング更新を、メッセージング・アプリケーションからリモート・ウェブ・ブラウザに送信することができる。リモート・ウェブ・ブラウザ１９０をメッセージング会話で最新に保つために、メッセージング更新１１０は、ローカル・メッセージング・アプリケーション２２０がメッセージング更新１１０を受信することに応答して、自動的に送信されてよい。
【００４３】
会話および更新の適正なフローを維持するために、リモート・ウェブ・ブラウザ１９０およびローカル・メッセージング・アプリケーション２２０は、メッセージング更新に対する厳密な順序付けを維持することから利益を得ることができる。ローカル・メッセージング・アプリケーション２２０は、順序付けのための制御のポイントとしての働きをすることができ、更新が受信され、ローカル・メッセージング・アプリケーション２２０の観点から生成される順序に基づいて、メッセージング更新に順序付けを割り当てることができる。したがって、メッセージング更新１１０が受信されるごとに、ローカル・メッセージング・アプリケーション２２０は、メッセージング更新１１０をリモート・ウェブ・ブラウザ１９０に送信する前に、メッセージング更新１１０にシーケンス番号を割り当てることができる。いくつかの実施形態において、ローカル・メッセージング・アプリケーション２２０が唯一のメッセージング・エンドポイントであるときには、厳密な順序付けの維持が利益にならないことがある。したがって、ローカル・メッセージング・アプリケーション２２０がリモート・ウェブ・ブラウザ１９０へのメッセージング更新の転送を実施することに基づいて、ローカル・メッセージング・アプリケーション２２０は、メッセージング更新１１０にシーケンス番号を割り当てることができる。
【００４４】
ローカル・メッセージング・アプリケーション２２０からメッセージング更新を受信するためにリモート・ウェブ・ブラウザ１９０から受信した要求に応答して、ローカル・メッセージング・アプリケーション２２０は、ローカル・ウェブ・サーバ２５０とリモート・ウェブ・ブラウザ１９０との間に暗号化された接続がある状態で、モバイル・デバイス１２０上のローカル・ウェブ・サーバ２５０を始動することができる。ローカル・ウェブ・サーバ２５０は、ローカル・メッセージング・アプリケーション２２０の一部であってもよいし、ローカル・メッセージング・アプリケーション２２０の一部として実行する装置であってもよいし、またはローカル・メッセージング・アプリケーション２２０によるコマンドに応答して起動する、モバイル・デバイス１２０上の異なったアプリケーションを含んでもよい。
【００４５】
いくつかのケースにおいて、ローカル・ウェブ・サーバ２５０およびリモート・ウェブ・ブラウザ１９０は、公共インターネット１５０のインフラストラクチャを使用して通信することができる。しかしながら、いくつかのケースにおいては、暗号化された接続は、ピア・ツー・ピア・ネットワーク接続を介して送信されてもよい。ピア・ツー・ピア・ネットワーク接続は、限定はせずに、モバイル・デバイス１２０とパーソナル・コンピュータ・デバイス１８０との間のブルートゥース接続および直接Ｗｉ−Ｆｉ接続のうちの１つを含むことができる。
【００４６】
ローカル・メッセージング・アプリケーション２２０は、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられていてよい。メッセージング更新は、第２のモバイル・デバイス上の第２のメッセージング・アプリケーションから受信されていることがあり、第２のメッセージング・アプリケーションは、メッセージング・サービスによる第２のユーザ・アカウントに関連付けられている。メッセージング更新１１０は、したがって、第１のユーザ・アカウントと第２のユーザ・アカウントとの間のメッセージング会話におけるメッセージを含むことができる。これは、第１のユーザ・アカウントから第２のユーザ・アカウントに送られたメッセージ、または第２のユーザ・アカウントから第１のユーザ・アカウントに送られたメッセージであり得る。メッセージは、テキスト・セグメント、画像、映像セグメント、およびオーディオ・セグメントのうちの１つまたは複数を含んでよい。
【００４７】
いくつかのケースにおいて、メッセージは、映像セグメントまたはオーディオ・セグメントなどのメディア・セグメントを含んでもよい。ローカル・ウェブ・サーバ２５０などのウェブ・サーバは、メッセージング更新１１０をリモート・ウェブ・ブラウザ１９０に送信する前に、メディア・セグメントを、リモート・ウェブ・ブラウザ１９０によってサポートされるメディア・フォーマットにコード変換することができる。いくつかの実施形態において、リモート・ウェブ・ブラウザ１９０は、サポートされたフォーマットをローカル・ウェブ・サーバ２５０に送信することができ、ローカル・ウェブ・サーバ２５０は、受信したサポートされたフォーマットを使用して、メディア・セグメントをコード変換するためのフォーマットを決定する。他の実施形態において、ローカル・ウェブ・サーバ２５０は、ウェブ互換性のあるメディア・フォーマットのリストと共に構成されてよく、メディア・セグメントを、構成されたウェブ互換性のあるメディア・フォーマットのうちの１つにコード変換することができる。
【００４８】
リモート・ウェブ・ブラウザ１９０は、モバイル・デバイス１２０またはリモート・メッセージング・クライアント１７０から発信するメッセージングを見るために使用されるだけでなく、メッセージを発信するために使用されてもよい。ローカル・メッセージング・アプリケーション２２０は、暗号化された接続上でリモート・ウェブ・ブラウザ１９０からの送出メッセージを受信することができ、送出メッセージは、メッセージング・サービスの第２のユーザ・アカウントとのメッセージング会話に関連付けられている。ローカル・メッセージング・アプリケーション２２０は、送出メッセージを、第２のユーザ・アカウントに関連付けられている第２のメッセージング・アプリケーションに送信することができる。この第２のメッセージング・アプリケーションは、リモート・メッセージング・クライアント１７０に対応することができる。
【００４９】
いくつかの実施形態において、発信エンドポイントから送られたメッセージが宛先メッセージング・エンドポイント上に表示されるとき、その発信メッセージング・エンドポイントに通知されてよい。したがって、ローカル・メッセージング・アプリケーション２２０は、送出メッセージの確認応答を第２のメッセージング・アプリケーションから受信し、送出メッセージの確認応答に従って、リモート・ウェブ・ブラウザ１９０による送出メッセージを更新することができる。リモート・ウェブ・ブラウザ１９０による送出メッセージを更新することは、アイコン、シンボル、または送出メッセージに隣接する他のビジュアル要素を表示することを含んでよく、ビジュアル要素は、その受信者によって見られるメッセージに視覚的に関連付けられている。
【００５０】
ローカル・メッセージング・アプリケーション２２０にアクセスするためのエンドポイントとしてリモート・ウェブ・ブラウザ１９０を確立する一環として、リモート・ウェブ・ブラウザ１９０のウェブ・セッションに、ローカル・メッセージング・アプリケーション２２０に関連付けられているユーザ・アカウントについてのメッセージング状態がロードされ得る。ローカル・メッセージング・アプリケーション２２０は、ユーザ・アカウントに関連付けられているメッセージング状態を、モバイル・デバイス１２０上のローカル・ストアから取り出し、メッセージング状態をリモート・ウェブ・ブラウザ１９０に送信することができる。
【００５１】
メッセージング更新は、第１のユーザ・アカウントと第２のユーザ・アカウントとの間のメッセージング会話に対応してよい。メッセージング状態は、第１のユーザ・アカウントと第２のユーザ・アカウントとの間のメッセージング会話の履歴を含むことができる。たとえば、モバイル・デバイス１２０のユーザは、リモート・メッセージング・クライアント１７０のユーザとのメッセージング会話に関わることがある。最初に、この会話は、モバイル・デバイス１２０上のローカル・メッセージング・アプリケーション２２０のユーザによる直接使用を伴ってよい。しかしながら、ある時点で、ユーザは、会話を継続するために自分のパーソナル・コンピュータ・デバイス１８０を使用し始めたいと望むことがある。たとえば、ユーザは、モバイル・デバイス１２０を使用しながら自分の家に向かって移動しており、その後、家に戻ってパーソナル・コンピュータ・デバイス１８０を使用したいと思うことがある。パーソナル・コンピュータ・デバイス１８０上のリモート・ウェブ・ブラウザ１９０に履歴を送信することによって、ユーザは、会話を継続することができるだけでなく、その会話の、および他の会話の履歴を思い出すこともできる。
【００５２】
メッセージング状態は、第１のユーザ・アカウントについての連絡先リストなどの、追加の、または代替の情報を含むことができる。いくつかのケースにおいて、ユーザ・アカウントの全連絡先リストは、効率的に送るには長すぎることがあり、したがって、メッセージング状態は、第１のユーザ・アカウントについての連絡先リストのある部分を含むことができる。ローカル・メッセージング・アプリケーション２２０は、第１のユーザ・アカウントについての連絡先リストを、モバイル・デバイス１２０上のローカル・ストアから取り出し、連絡先リストにおける連絡先のメッセージング・アクティビティに基づいて、連絡先リストのその部分を決定することができる。
【００５３】
図３は、リモート・ウェブ・サーバ３５０が別個のウェブ・サーバ・デバイス３５５上で実行される、メッセージング・ウェブ・アクセス・システム１００の１実施形態を示す。図３に示すように、リモート・メッセージング・クライアント１７０の間の対話は、メッセージング・サーバ３２０を介して実施され得る。メッセージング・サーバ３２０およびウェブ・サーバ・デバイス３５５の両方は、ローカル・メッセージング・アプリケーション２２０を含むメッセージング・プラットフォームを管理するメッセージング・サービス・プロバイダによって管理されてよい。いくつかの実施形態においては、メッセージング・サーバ３２０およびウェブ・サーバ・デバイス３５５のうちの１つのみが使用されてもよいことが認識されるであろう。
【００５４】
いくつかの実施形態において、ローカル・メッセージング・アプリケーション２２０とリモート・ウェブ・ブラウザ１９０との間の暗号化された接続は、リモート・ウェブ・サーバ３５０を介して送信されてよい。リモート・ウェブ・サーバ３５０は、リモート・ウェブ・ブラウザ１９０のためのウェブ・セッションをホストすることができ、ウェブ・セッションは、そのウェブ・セッションを介したメッセージングの実施のために、モバイル・デバイス１２０上のローカル・メッセージング・アプリケーション２２０へのアクセスを可能にする。したがって、暗号化された接続の第１の部分は、ローカル・メッセージング・アプリケーション２２０とウェブ・サーバ・デバイス３５５との間の、暗号化された伝送制御プロトコル／インターネット・プロトコル（ＴＣＰ／ＩＰ）接続などのセキュアな接続を含むことができる。暗号化された接続の第２の部分は、リモート・ウェブ・ブラウザ１９０とリモート・ウェブ・サーバ３５０との間の、ＨＴＴＰＳ接続を含むことができる。したがって、リモート・ウェブ・サーバ３５０は、通信の全長にわたるセキュアな接続を維持するために、ローカル・メッセージング・アプリケーション２２０とリモート・ウェブ・ブラウザ１９０との間でブリッジとしての働きをすることができる。
【００５５】
いくつかの実施形態において、リモート・ウェブ・サーバ３５０またはウェブ・サーバ・デバイス３５５が暗号化された接続のプレーンテキスト（すなわち、暗号化されていない）コンテンツにアクセスするのを防ぐために、ローカル・メッセージング・アプリケーション２２０とリモート・ウェブ・ブラウザ１９０との間の暗号化された接続は、リモート・ウェブ・サーバ３５０を通して維持されてよい。リモート・ウェブ・サーバ３５０は、暗号化されたウェブ・ページおよび暗号化されたウェブ要素（たとえば、フレーム、画像、および個々のＨＴＴＰＳ対話として送られる他の要素）のための中継としての働きをすることができ、暗号化されたウェブ・ページおよび暗号化されたウェブ要素は、ローカル・メッセージング・アプリケーション２２０によって暗号化され、リモート・ウェブ・サーバ３５０またはウェブ・サーバ・デバイス３５５が暗号化されたウェブ・ページおよびエンド暗号化されたウェブ要素のための復号鍵にアクセスする必要なしに、リモート・ウェブ・ブラウザ１９０によって復号化される。
【００５６】
ローカル・メッセージング・アプリケーション２２０は、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられていてよい。リモート・ウェブ・サーバ３５０は、今後のウェブ・ブラウザ・セッションのために第１のユーザ・アカウントについてのメッセージング状態をキャッシュするように動作してよい。いくつかのケースにおいて、リモート・ウェブ・ブラウザ１９０は、第１のユーザ・アカウントについての状態を受信することができる。ローカル・メッセージング・アプリケーション２２０がモバイル・デバイス１２０上に格納された状態を再送信しなくてはならないのを避けるために、リモート・ウェブ・サーバ３５０は、この状態をキャッシュすることができる。
【００５７】
リモート・ウェブ・サーバ３５０上でキャッシュされたメッセージング状態へのアクセスは、モバイル・デバイス１２０上のローカル・メッセージング・アプリケーション２２０によって制御され得る。ローカル・メッセージング・アプリケーション２２０のユーザは、認可解除命令をリモート・ウェブ・サーバ３５０に送信するように、ローカル・メッセージング・アプリケーション２２０に指示する権限を与えられてよく、認可解除命令は、リモート・ウェブ・サーバ３５０によりリモート・ウェブ・ブラウザ１９０を認可解除する。これにより、リモート・ウェブ・ブラウザ１９０がローカル・メッセージング・アプリケーション２２０によって再認可されない限り、キャッシュされた状態がリモート・ウェブ・ブラウザ１９０によって今後使用されるのを防ぐことができる。同様に、これにより、リモート・ウェブ・ブラウザ１９０がローカル・メッセージング・アプリケーション２２０によって再認可されない限り、第１のユーザ・アカウントのためのメッセージング・エンドポイントとしてリモート・ウェブ・ブラウザ１９０が今後確立されるのを防ぐことができる。リモート・ウェブ・サーバ３５０は、認可解除命令の受信に応答して、認可されたエンドポイントのリストからリモート・ウェブ・ブラウザ１９０を取り除くように、認可されたエンドポイントの記録を修正することができる。リモート・ウェブ・サーバ３５０は、認可解除命令の受信に応答して、リモート・ウェブ・ブラウザ１９０のためにキャッシュされた状態を削除することができる。
【００５８】
リモート・ウェブ・ブラウザ１９０は、ユーザがモバイル・デバイス１２０上で接続確立動作を実施する必要なしに、ローカル・メッセージング・アプリケーション２２０への接続を素早く再確立する権限を与えるための認証情報を提供されてよい。ローカル・メッセージング・アプリケーション２２０は、リモート・ウェブ・ブラウザ１９０に認証情報を送信し、リモート・ウェブ・ブラウザがメッセージング・アプリケーションからメッセージング更新を再び受信するための第２の要求を、リモート・ウェブ・ブラウザ１９０から、モバイル・デバイス１２０上のローカル・メッセージング・アプリケーション２２０で受信し、認証情報を使用して、ローカル・メッセージング・アプリケーション２２０とリモート・ウェブ・ブラウザ１９０との間に第２の暗号化された接続を確立することができる。認証情報は、限定はせずに、セキュアなトークンを含むことができる。
【００５９】
暗号化された接続の確立のためにリモート・ウェブ・ブラウザ１９０を識別するために、さまざまな技法を使用することができる。いくつかのケースにおいて、マシン可読光ラベル（たとえば、ＱＲコード）が、リモート・ウェブ・ブラウザ１９０上に表示されてもよい。このマシン可読光ラベルは、リモート・ウェブ・ブラウザ１９０がメッセージング・エンドポイントとして動作し始める試行に応答して、モバイル・デバイス１２０上のローカル・メッセージング・アプリケーション２２０が識別される前に、リモート・ウェブ・サーバ３５０によって表示され得る。モバイル・デバイス１２０がマシン可読光ラベルを取り込み、それをメッセージング・サーバ３２０、ウェブ・サーバ・デバイス３５５、またはメッセージング・ウェブ・アクセス・システム１００のなんらかの他のコンポーネントに送信することに基づいて、モバイル・デバイス１２０は、リモート・ウェブ・ブラウザ１９０に接続され得る。
【００６０】
したがって、ローカル・メッセージング・アプリケーション２２０は、モバイル・デバイス１２０のカメラ・デバイスを使用して、リモート・ウェブ・ブラウザ１９０によって表示されるマシン可読光ラベルを取り込むことができる。ローカル・メッセージング・アプリケーション２２０は、マシン可読光ラベルからウェブ・セッション識別子を抽出することができる。ローカル・メッセージング・アプリケーション２２０は、ウェブ・セッション識別子に基づいて、暗号化された接続の確立のためにリモート・ウェブ・ブラウザ１９０を識別することができる。
【００６１】
マシン可読光ラベルは、ウェブ・サーバ・デバイス３５５によって生成され、リモート・ウェブ・サーバ３５０によってリモート・ウェブ・ブラウザ１９０に送信され得る。ウェブ・サーバ・デバイス３５５は、ローカル・メッセージング・アプリケーション２２０などのローカル・メッセージング・アプリケーションのフロント・エンドに、マシン可読光ラベルによって符号化されたデータを登録することができる。ローカル・メッセージング・アプリケーション２２０は、マシン可読光ラベルによって符号化されたデータをフロント・エンドに報告して、ローカル・メッセージング・アプリケーション２２０と、マシン可読光ラベルを表示するリモート・ウェブ・ブラウザ１９０にサービス提供するリモート・ウェブ・サーバ３５０との間に、接続を確立することができる。
【００６２】
図４は、メッセージング・システム４００のさまざまな機能を実装する複数のサーバの１実施形態を示す。メッセージング・システム４００のさまざまな実施形態において、働きおよび機能の異なる分散が使用され得ることが認識されるであろう。メッセージング・システム４００は、メッセージング・ウェブ・アクセス・システム１００を含むことができ、メッセージング・ウェブ・アクセス・システム１００の動作は、メッセージング・システム４００の全体の動作の一部を含んでいる。
【００６３】
メッセージング・システム４００は、ドメイン・ネーム・フロント・エンド４１０を含むことができる。ドメイン・ネーム・フロント・エンド４１０は、ドメイン・ネーム・システム（ＤＮＳ）においてメッセージング・システム４００に関連付けられている１つまたは複数のドメイン・ネームを割り当てられてよい。ドメイン・ネーム・フロント・エンド４１０は、着信接続を受信し、その接続を、さまざまなメッセージング・サービスを提供するサーバに分散することができる。
【００６４】
メッセージング・システム４００は、１つまたは複数のチャット・サーバ４１５を含むことができる。チャット・サーバ４１５は、チャット・メッセージなどの、ユーザ・ツー・ユーザのメッセージング更新を受信し、送信するためのフロント・エンド・サーバを含むことができる。着信接続は、作業負荷バランスに基づいて、ドメイン・ネーム・フロント・エンド４１０によってチャット・サーバ４１５に割り当てられてよい。
【００６５】
メッセージング・システム４００は、バックエンド・サーバ４３０を含むことができる。バックエンド・サーバ４３０は、フロント・エンド・チャット・サーバ４１５のチャット動作のサポートに特化したタスクを実施することができる。複数の異なるタイプのバックエンド・サーバ４３０が使用されてよい。異なるバックエンド・サーバ４３０へのタスクのタイプの割り当ては、異なる実施形態において多様であってよいことが認識されるであろう。いくつかの実施形態において、専用のサーバによって提供されるバックエンド・サービスのうちのいくつかは、本明細書で説明される実施形態において異なるサーバ間で分割された多数のタスクをそれぞれ実施する、単一のサーバ、または一組のサーバに組み合わされてよい。同様に、いくつかの実施形態において、本明細書で説明する専用のバックエンド・サーバのうちのいくつかのタスクは、異なるサーバ・グループの異なるサーバ間で分割されてよい。
【００６６】
メッセージング・システム４００は、１つまたは複数のオフライン・ストレージ・サーバ４３１を含むことができる。１つまたは複数のオフライン・ストレージ・サーバ４３１は、メッセージング・エンドポイントが再接続するときのために保留中の、現在オフラインのメッセージング・エンドポイントのために、メッセージング・コンテンツを格納することができる。
【００６７】
メッセージング・システム４００は、１つまたは複数のセッション・サーバ４３２を含むことができる。１つまたは複数のセッション・サーバ４３２は、接続されたメッセージング・エンドポイントのセッション状態を維持することができる。
【００６８】
メッセージング・システム４００は、１つまたは複数のプレゼンス・サーバ４３３を含むことができる。１つまたは複数のプレゼンス・サーバ４３３は、メッセージング・システム４００のためのプレゼンス情報を維持することができる。プレゼンス情報は、所与のユーザが、オンラインのメッセージング・エンドポイントを有してチャットに応じられるかどうか、オンラインのメッセージング・エンドポイントを有するが現在はそこから離れているかどうか、オンラインのメッセージング・エンドポイントは有さないか、および任意の他のプレゼンス状態を指し示す、ユーザ固有の情報に対応してよい。
【００６９】
メッセージング・システム４００は、１つまたは複数のプッシュ・ストレージ・サーバ４３４を含むことができる。１つまたは複数のプッシュ・ストレージ・サーバ４３４は、プッシュ要求をキャッシュし、プッシュ要求をメッセージング・エンドポイントに送信することができる。プッシュ要求は、メッセージング・エンドポイントを立ち上げるために、メッセージング更新が利用可能であることをメッセージング・エンドポイントに通知するために、および別のやり方でメッセージング・エンドポイントとのサーバ・サイド・ドリブンな対話を実施するために使用されてよい。
【００７０】
メッセージング・システム４００は、１つまたは複数のグループ・サーバ４３５を含むことができる。１つまたは複数のグループ・サーバ４３５は、グループのリストを維持する、グループにユーザを追加する、グループからユーザを取り除く、ならびにグループ・チャット・メッセージの受信、キャッシング、および転送を実施することができる。
【００７１】
メッセージング・システム４００は、１つまたは複数のブロック・リスト・サーバ４３６を含むことができる。１つまたは複数のブロック・リスト・サーバ４３６は、ユーザ固有のブロック・リストを維持することができ、ユーザ固有の着信ブロック・リストは、ユーザごとに、そのユーザにメッセージを送信することを禁じられている１人または複数の他のユーザを指し示す。代替として、または追加として、１つまたは複数のブロック・リスト・サーバ４３６は、ユーザ固有の送出ブロック・リストを維持することができ、これはユーザごとに、そのユーザがメッセージを送信することを禁じられている１人または複数の他のユーザを指し示す。着信ブロック・リストおよび送出ブロック・リストは、ブロック情報という同じリポジトリの異なる見方を表しており、着信ブロック・リストおよび送出ブロック・リストは、たとえば、データベースにおいて組み合わせて格納され得ることが認識されるであろう。
【００７２】
メッセージング・システム４００は、１つまたは複数の最後に確認された情報サーバ４３７を含むことができる。１つまたは複数の最後に確認された情報サーバ４３７は、最後に確認された、ロケーション、ステータス、メッセージング・エンドポイント、およびユーザの最後に確認されたメッセージング・システム４００への接続の他の要素を指し示す情報を、受信し、格納し、維持することができる。
【００７３】
メッセージング・システム４００は、１つまたは複数の鍵サーバ４３８を含むことができる。１つまたは複数の鍵サーバは、公開鍵／秘密鍵暗号化通信のための公開鍵をホストすることができる。
【００７４】
メッセージング・システム４００は、１つまたは複数のプロフィール写真サーバ４３９を含むことができる。１つまたは複数のプロフィール写真サーバ４３９は、メッセージング・システム４００の複数のユーザのために、プロフィール写真を格納し、取り出すために利用可能にすることができる。
【００７５】
メッセージング・システム４００は、１つまたは複数のスパム・ロギング・サーバ４４０を含むことができる。１つまたは複数のスパム・ロギング・サーバ４４０は、知られている疑わしいスパム（たとえば、望まれないメッセージ、特に販売促進的性質のもの）をログすることができる。１つまたは複数のスパム・ロギング・サーバ４４０は、メッセージがスパムであるかどうかを判定するためにメッセージを分析し、いくつかの実施形態においては、疑わしいスパム発信者（スパム・メッセージを送るユーザ）に対して罰則処置を実施するように動作してよい。
【００７６】
メッセージング・システム４００は、１つまたは複数の統計値サーバ４４１を含むことができる。１つまたは複数の統計値サーバは、メッセージング・システム４００の動作、およびメッセージング・システム４００のユーザの言動に関連した統計値情報をまとめ、格納することができる。
【００７７】
メッセージング・システム４００は、１つまたは複数のウェブ・サーバ４４２を含むことができる。１つまたは複数のウェブ・サーバ４４２は、ウェブ・ブラウザによるハイパーテキスト・トランスポート・プロトコル（ＨＴＴＰ）接続およびハイパーテキスト・トランスポート・プロトコル・セキュア（ＨＴＴＰＳ）接続に関わることができる。１つまたは複数のウェブ・サーバ４４２は、いくつかの実施形態において、メッセージング・ウェブ・アクセス・システム１００の動作の一環としてリモート・ウェブ・サーバ３５０をホストすることができる。
【００７８】
メッセージング・システム４００は、１つまたは複数のチャット・アクティビティ・モニタリング・サーバ４４３を含むことができる。１つまたは複数のチャット・アクティビティ・モニタリング・サーバ４４３は、メッセージング・システム４００のユーザによる非認可の、または非推奨の（ｄｉｓｃｏｕｒａｇｅｄ）言動を判定するために、ユーザのチャットをモニタすることができる。１つまたは複数のチャット・アクティビティ・モニタリング・サーバ４４３は、スパム・ロギング・サーバ４４０およびブロック・リスト・サーバ４３６と協同して働くことができ、１つまたは複数のチャット・アクティビティ・モニタリング・サーバ４４３は、スパムまたは他の非推奨の言動を識別し、スパム情報をスパム・ロギング・サーバ４４０に提供し、適切な場合には、ブロッキング情報をブロック・リスト・サーバ４３６に提供する。
【００７９】
メッセージング・システム４００は、１つまたは複数の同期サーバ４４４を含むことができる。１つまたは複数の同期サーバ４４４は、メッセージング・システム４００を、モバイル電話上のアドレス帳などの、メッセージング・エンドポイントからの連絡先情報と同期させて、メッセージング・システム４００におけるユーザのための連絡先を決定することができる。
【００８０】
メッセージング・システム４００は、１つまたは複数のマルチメディア・サーバ４４５を含むことができる。１つまたは複数のマルチメディア・サーバは、メッセージング・エンドポイント間の移行におけるマルチメディア（たとえば、画像、映像、オーディオ）、オフラインのエンドポイントのためにキャッシュされたマルチメディアを格納することができ、マルチメディアのコード変換を実施することができる。
【００８１】
メッセージング・システム４００は、１つまたは複数の支払いサーバ４４６を含むことができる。１つまたは複数の支払いサーバ４４６は、ユーザからの支払いを処理することができる。１つまたは複数の支払いサーバ４４６は、支払いの実施のために、外部サードパーティ・サーバに接続することができる。
【００８２】
メッセージング・システム４００は、１つまたは複数の登録サーバ４４７を含むことができる。１つまたは複数の登録サーバ４４７は、メッセージング・システム４００の新しいユーザを登録することができる。
【００８３】
メッセージング・システム４００は、１つまたは複数の音声中継サーバ４４８を含むことができる。１つまたは複数の音声中継サーバ４４８は、ボイス・オーバ・インターネット・プロトコル（ＶｏＩＰ）コールの実施のために、メッセージング・エンドポイント間でＶｏＩＰ音声通信を中継することができる。
【００８４】
本明細書には、開示されたアーキテクチャの新規な態様を実施するための例示的な方法論を表す一組のフロー・チャートが含まれる。解説を単純化する目的のために、本明細書で示される１つまたは複数の方法論は、たとえば、フロー・チャートまたはフロー図の形式で一連の作用として示され説明されるが、いくつかの作用が、本明細書で示され説明されるものとは異なる順序で発生する、および／または本明細書で示され説明されるものからの他の作用と同時に発生することがあるので、それに従って、方法論は作用の順序によって限定されないことが理解され、認識されるべきである。たとえば、当業者は、方法論が、状態図などにおいて、一連の相関した状態またはイベントとして代替的に表され得ることを理解し、認識するであろう。その上、方法論に示されたすべての作用が、新規の実装形態のために必要とされるわけではないことがある。
【００８５】
図５は、論理フロー５００の１実施形態を示す。論理フロー５００は、本明細書で説明される１つまたは複数の実施形態によって実行される動作のいくつか、または全部を表すことができる。
【００８６】
図５に示す図示された実施形態において、論理フロー５００は、ブロック５０２で、リモート・ウェブ・ブラウザ１９０がローカル・メッセージング・アプリケーション２２０からメッセージング更新を受信するための要求を、リモート・ウェブ・ブラウザ１９０から、モバイル・デバイス１２０上のローカル・メッセージング・アプリケーション２２０で受信することができる。
【００８７】
論理フロー５００は、ブロック５０４で、ローカル・メッセージング・アプリケーション２２０とリモート・ウェブ・ブラウザ１９０との間に暗号化された接続を確立することができる。
【００８８】
論理フロー５００は、ブロック５０６で、メッセージング更新１１０をローカル・メッセージング・アプリケーション２２０で受信することができる。
論理フロー５００は、ブロック５０８で、メッセージング更新１１０を、ローカル・メッセージング・アプリケーション２２０からリモート・ウェブ・ブラウザ１９０に送信することができる。
【００８９】
実施形態は、この例に限定はされない。
図６は、集中型システム６００のブロック図を示す。集中型システム６００は、もっぱら単一のデバイス６２０内部などの単一のコンピューティング・エンティティにおいて、メッセージング・ウェブ・アクセス・システム１００の構造および／または動作のいくつか、または全部を実装することができる。
【００９０】
デバイス６２０は、システム１００のための情報を、受信し、処理し、送ることが可能な任意の電子デバイスを含むことができる。電子デバイスの例には、限定はせずに、ウルトラ・モバイル・デバイス、モバイル・デバイス、携帯情報端末（ＰＤＡ）、モバイル・コンピューティング・デバイス、スマートフォン、電話、デジタル電話、セルラー電話、電子書籍リーダ、ハンドセット、単方向ページャ、双方向ページャ、メッセージング・デバイス、コンピュータ、パーソナル・コンピュータ（ＰＣ）、デスクトップ・コンピュータ、ラップトップ・コンピュータ、ノートブック・コンピュータ、ネットブック・コンピュータ、ハンドヘルド・コンピュータ、タブレット・コンピュータ、サーバ、サーバ・アレイもしくはサーバ・ファーム、ウェブ・サーバ、ネットワーク・サーバ、インターネット・サーバ、ワーク・ステーション、ミニコンピュータ、メイン・フレーム・コンピュータ、スーパーコンピュータ、ネットワーク・アプライアンス、ウェブ・アプライアンス、分散型コンピューティング・システム、マルチプロセッサ・システム、プロセッサベースのシステム、家庭用電化製品、プログラマブル家庭用電化製品、ゲーム・デバイス、テレビ、デジタル・テレビ、セット・トップ・ボックス、ワイヤレス・アクセス・ポイント、基地局、サブスクライバ局、モバイル・サブスクライバ・センタ、無線ネットワーク・コントローラ、ルータ、ハブ、ゲートウェイ、ブリッジ、スイッチ、マシン、またはそれらの組合せが含まれてよい。実施形態は、このコンテキストに限定はされない。
【００９１】
デバイス６２０は、処理コンポーネント６３０を使用して、システム１００のための処理動作または処理論理を実行することができる。処理コンポーネント６３０は、さまざまなハードウェア要素、ソフトウェア要素、またはその両方の組合せを含むことができる。ハードウェア要素の例には、デバイス、論理デバイス、コンポーネント、プロセッサ、マイクロプロセッサ、回路、プロセッサ回路、回路素子（たとえば、トランジスタ、レジスタ、キャパシタ、インダクタ、およびその他）、集積回路、特定用途向け集積回路（ＡＳＩＣ）、プログラマブル論理デバイス（ＰＬＤ）、デジタル信号プロセッサ（ＤＳＰ）、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）、メモリユニット、論理ゲート、レジスタ、半導体デバイス、チップ、マイクロチップ、チップ・セット、およびその他が含まれてよい。ソフトウェア要素の例には、ソフトウェア・コンポーネント、プログラム、アプリケーション、コンピュータ・プログラム、アプリケーション・プログラム、システム・プログラム、ソフトウェア開発プログラム、マシン・プログラム、オペレーティング・システム・ソフトウェア、ミドルウェア、ファームウェア、ソフトウェア・モジュール、ルーチン、サブルーチン、関数、メソッド、プロシージャ、ソフトウェア・インタフェース、アプリケーション・プログラム・インタフェース（ＡＰＩ）、命令セット、コンピューティング・コード、コンピュータ・コード、コード・セグメント、コンピュータ・コード・セグメント、単語、値、シンボル、またはそれらの任意の組合せが含まれてよい。ある実施形態が、ハードウェア要素を使用して実装されるか、および／またはソフトウェア要素を使用して実装されるかの判定は、所与の実装形態の所望に応じた、所望の計算レート、電力レベル、熱耐性、処理サイクル・バジェット、入力データ・レート、出力データ・レート、メモリ・リソース、データ・バス速度、および他の設計制約または性能制約などの、任意の数の要因に従って多様であってよい。
【００９２】
デバイス６２０は、通信コンポーネント６４０を使用して、システム１００のための通信動作または通信論理を実行することができる。通信コンポーネント６４０は、パケット交換ネットワーク（たとえば、インターネットなどの公共ネットワーク、企業イントラネットなどの私設ネットワーク、およびその他）、回路交換ネットワーク（たとえば、公衆交換電話網）、またはパケット交換ネットワークと回路交換ネットワークとの（好適なゲートウェイおよび変換器を備えた）組合せでの使用に好適な技法などの、任意のよく知られた通信技法および通信プロトコルを実装することができる。通信コンポーネント６４０は、１つまたは複数の通信インタフェース、ネットワーク・インタフェース、ネットワーク・インタフェース・カード（ＮＩＣ）、無線、ワイヤレス送信機／受信機（トランシーバ）、ワイヤードおよび／またはワイヤレス通信媒体、物理的コネクタ、およびその他などの、さまざまなタイプの標準通信要素を含むことができる。限定ではなく例として、通信媒体６１２、６４２は、ワイヤード通信媒体およびワイヤレス通信媒体を含む。ワイヤード通信媒体の例には、ワイヤ、ケーブル、金属リード、プリント回路基板（ＰＣＢ）、バックプレーン、スイッチ・ファブリック、半導体材料、ツイストペア・ワイヤ、同軸ケーブル、光ファイバ、伝播信号、およびその他が含まれてよい。ワイヤレス通信媒体の例には、アコースティック、無線周波数（ＲＦ）スペクトル、赤外線、および他のワイヤレス媒体が含まれてよい。
【００９３】
デバイス６２０は、通信コンポーネント６４０を介して、通信媒体６１２上で通信信号６１４を使用して他のデバイス６１０と、通信媒体６４２上で通信信号６４４を使用して他のデバイス６５０と、それぞれ、通信することができる。デバイス６１０、６５０は、所与の実装形態の所望に応じて、デバイス６２０の内部であっても、外部であってもよい。デバイス６１０は、モバイル・デバイス１２０上のローカル・メッセージング・アプリケーション２２０などの、メッセージング・エンドポイントを含むことができる。デバイス６５０は、パーソナル・コンピュータ・デバイス１８０上のリモート・ウェブ・ブラウザ１９０などの、第２のメッセージング・エンドポイントを含むことができる。信号６１４および６４４は、ローカル・メッセージング・アプリケーション２２０とリモート・ウェブ・ブラウザ１９０との間で、暗号化された接続を共同して搬送することができる。
【００９４】
図７は、分散型システム７００のブロック図を示す。分散型システム７００は、多数のコンピューティング・エンティティにわたって、システム１００の構造および／または動作の部分を分散することができる。分散型システム７００の例には、限定はせずに、クライアント・サーバ・アーキテクチャ、３層アーキテクチャ、Ｎ層アーキテクチャ、密結合またはクラスタ・アーキテクチャ、ピア・ツー・ピア・アーキテクチャ、マスター・スレーブ・アーキテクチャ、共有データベース・アーキテクチャ、および他のタイプの分散型システムが含まれてよい。実施形態は、このコンテキストに限定はされない。
【００９５】
分散型システム７００は、クライアント・デバイス７１０と、サーバ・デバイス７５０とを含むことができる。一般に、クライアント・デバイス７１０およびサーバ・デバイス７５０は、図６を参照して説明されたクライアント・デバイス８２０と、同じまたは同様であってよい。たとえば、クライアント・デバイス７１０およびサーバ・デバイス７５０は、処理コンポーネント７３０および通信コンポーネント７４０を各々含むことができ、これらのコンポーネントは、図６を参照して説明された処理コンポーネント６３０および通信コンポーネント６４０と、それぞれ、同じまたは同様である。別の例において、デバイス７１０、７５０は、通信コンポーネント７４０を介して、通信信号７１４を使用して、通信媒体７１２上で通信することができる。
【００９６】
クライアント・デバイス７１０は、説明された実施形態に従ってさまざまな方法論を実施するように動作する、１つまたは複数のクライアント・プログラムを含む、または利用することができる。１実施形態において、たとえば、クライアント・デバイス７１０は、ローカル・メッセージング・アプリケーション２２０を実装することができる。
【００９７】
サーバ・デバイス７５０は、説明された実施形態に従ってさまざまな方法論を実施するように動作する、１つまたは複数のサーバ・プログラムを含む、または利用することができる。１実施形態において、たとえば、サーバ・デバイス７５０は、リモート・ウェブ・サーバ３５０を実装することができる。
【００９８】
図８は、上記に記載の様々な実施形態を実施するのに適した例示的なコンピューティング・アーキテクチャ８００の１実施形態を示す。１つの実施形態では、コンピューティング・アーキテクチャ８００は、電子デバイスを備えるか、電子デバイスの一部として実施されることが可能である。電子デバイスの例は、中でも、図１を参照して説明したものを含むことができる。実施形態はこの文脈に限定されない。
【００９９】
本出願において用いられるとき、「システム」および「コンポーネント」という語は、ハードウェア、ハードウェアおよびソフトウェアの組合せ、ソフトウェア、または実行中のソフトウェアのいずれかである、コンピュータに関係したエンティティを指すことを意図され、それらの例が、例示的なコンピューティング・アーキテクチャ８００によって提供される。例えば、コンポーネントは、限定ではないが、プロセッサにおいて実行されるプロセス、プロセッサ、ハードディスク・ドライブ、（光学および／または磁気記録媒体の）マルチ記録・ドライブ、オブジェクト、実行ファイル、実行スレッド、プログラムおよび／またはコンピュータであり得る。例示のために、サーバ上で実行されるアプリケーションおよびサーバの双方がコンポーネントであり得る。１つまたは複数のコンポーネントがプロセスおよび／または実行スレッド内に常駐することができ、コンポーネントは、１つのコンピュータ上に局在することができ、および／または２つ以上のコンピュータ間で分散され得る。更に、コンポーネントは、動作を協調させるように、様々なタイプの通信媒体によって互いに通信可能に結合され得る。協調は、情報の一方向または双方向の交換を含むことができる。例えば、コンポーネントは、通信媒体により通信される信号の形態で情報を通信することができる。情報は、様々な信号線に割り当てられる信号として実施され得る。そのような割り当てにおいて、各メッセージは信号である。一方、更なる実施形態は、代替的にデータ・メッセージを用いることができる。そのようなデータ・メッセージは、様々な接続にわたって送信され得る。例示的な接続は、パラレル・インタフェース、シリアル・インタフェースおよびバス・インタフェースを含む。
【０１００】
コンピューティング・アーキテクチャ８００は、１つまたは複数のプロセッサ、マルチコア・プロセッサ、コプロセッサ、メモリユニット、チップ・セット、コントローラ、周辺機器、インタフェース、オシレータ、タイミング・デバイス、ビデオ・カード、オーディオ・カード、マルチメディア入出力（Ｉ／Ｏ）コンポーネント、電源等の様々な一般的なコンピューティング要素を含む。しかしながら、実施形態は、コンピューティング・アーキテクチャ８００による実施に限定されない。
【０１０１】
図８に示すように、コンピューティング・アーキテクチャ８００は、処理ユニット８０４、システム・メモリ８０６およびシステム・バス８０８を備える。処理ユニット８０４、限定ではないが、ＡＭＤ（登録商標）プロセッサ、Ａｔｈｌｏｎ（登録商標）プロセッサ、Ｄｕｒｏｎ（登録商標）プロセッサおよびＯｐｔｅｒｏｎ（登録商標）プロセッサ；ＡＲＭ（登録商標）のアプリケーションプロセッサ、組込み型プロセッサおよびセキュアプロセッサ；ＩＢＭ（登録商標）およびＭｏｔｏｒｏｌａ（登録商標）のＤｒａｇｏｎＢａｌｌ（登録商標）プロセッサおよびＰｏｗｅｒＰＣ（登録商標）プロセッサ；ＩＢＭおよびＳｏｎｙ（登録商標）のセル・プロセッサ；Ｉｎｔｅｌ（登録商標）のＣｅｌｅｒｏｎ（登録商標）プロセッサ、Ｃｏｒｅ（２）Ｄｕｏ（登録商標）プロセッサ、Ｉｔａｎｉｕｍ（登録商標）プロセッサ、Ｐｅｎｔｉｕｍ（登録商標）プロセッサ、Ｘｅｏｎ（登録商標）プロセッサおよびＸＳｃａｌｅ（登録商標）プロセッサ；ならびに同様なプロセッサを含む様々な市販のプロセッサのうちの任意のものであり得る。デュアル・マイクロプロセッサ、マルチコア・プロセッサおよび他のマルチプロセッサアーキテクチャも処理ユニット８０４として用いられることが可能である。
【０１０２】
システム・バス８０８は、限定ではないがシステム・メモリ８０６を含むシステム・コンポーネントのためのインタフェースを処理ユニット８０４に提供する。システム・バス８０８は、多岐にわたる市販のバス・アーキテクチャのうちの任意のものを用いてメモリ・バス（メモリ・コントローラを有するかまたは有しない）、周辺バスおよびローカルバスに更に相互接続することができるいくつかのタイプのバス構造のうちの任意のものとすることができる。インタフェース・アダプタは、スロット・アーキテクチャを介してシステム・バス８０８に接続することができる。例示的なスロット・アーキテクチャは、限定ではないが、アクセラレーテッド・グラフィックス・ポート（ＡＧＰ：Ａｃｃｅｌｅｒａｔｅｄ  Ｇｒａｐｈｉｃｓ  Ｐｏｒｔ）、カード・バス、（拡張）業界標準アーキテクチャ（（Ｅ）ＩＳＡ：（Ｅｘｔｅｎｄｅｄ）Ｉｎｄｕｓｔｒｙ  Ｓｔａｎｄａｒｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ）、マイクロ・チャネル・アーキテクチャ（ＭＣＡ：Ｍｉｃｒｏ  Ｃｈａｎｎｅｌ  Ａｒｃｈｉｔｅｃｔｕｒｅ）、ＮｕＢｕｓ、周辺コンポーネント相互接続（拡張）（ＰＣＩ（Ｘ）：Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ（Ｅｘｔｅｎｄｅｄ））、ＰＣＩエクスプレス、パーソナル・コンピュータ・メモリ・カード国際組織（ＰＣＭＣＩＡ：Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ  Ｍｅｍｏｒｙ  Ｃａｒｄ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ａｓｓｏｃｉａｔｉｏｎ）等を含むことができる。
【０１０３】
コンピューティング・アーキテクチャ８００は、様々な製造品を含むかまたは実装することができる。製造品は、ロジックを記憶するためのコンピュータ可読記録媒体を含むことができる。コンピュータ可読記録媒体の例は、揮発性メモリまたは不揮発性メモリ、取外し可能または非取外し可能メモリ、消去可能または非消去可能メモリ、書き込み可能または書き換え可能メモリ等を含む、電子データを記憶することが可能な任意の有形媒体を含むことができる。ロジックの例は、ソース・コード、コンパイルされたコード、解釈実行されたコード、実行可能コード、スタティック・コード、ダイナミック・コード、オブジェクト指向コード、視覚コード等の任意の適切なタイプのコードを用いて実施される実行可能なコンピュータ・プログラム命令を含むことができる。実施形態はまた、１つまたは複数のプロセッサによって読出しおよび実行されて、本明細書に記載の動作の実行を可能にすることができる、非一時的コンピュータ可読媒体に含まれるかまたは非一時的コンピュータ可読媒体上にある命令として少なくとも部分的に実施されることが可能である。
【０１０４】
システム・メモリ８０６は、読出し専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、ダイナミックＲＡＭ（ＤＲＡＭ）、ダブル・データ・レートＤＲＡＭ（ＤＤＲＡＭ：Ｄｏｕｂｌｅ−Ｄａｔａ−Ｒａｔｅ  ＤＲＡＭ）、同期ＤＲＡＭ（ＳＤＲＡＭ：ｓｙｎｃｈｒｏｎｏｕｓ  ＤＲＡＭ）、スタティックＲＡＭ（ＳＲＡＭ：ｓｔａｔｉｃ  ＲＡＭ）、プログラマブルＲＯＭ（ＰＲＯＭ：ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、消去可能なプログラマブルＲＯＭ（ＥＰＲＯＭ：ｅｒａｓａｂｌｅ  ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、電気的に消去可能なプログラマブルＲＯＭ（ＥＥＰＲＯＭ：ｅｌｅｃｔｒｉｃａｌｌｙ  ｅｒａｓａｂｌｅ  ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、フラッシュ・メモリ、強誘電性ポリマ・メモリ等のポリマ・メモリ、オーボニック・メモリ（ｏｖｏｎｉｃ  ｍｅｍｏｒｙ）、相変化または強誘電性メモリ、シリコン−酸化物−窒化物−酸化物−シリコン（ＳＯＮＯＳ：ｓｉｌｉｃｏｎ−ｏｘｉｄｅ−ｎｉｔｒｉｄｅ−ｏｘｉｄｅ−ｓｉｌｉｃｏｎ）メモリ、磁気カードまたは光カード、独立ディスクの冗長アレイ（ＲＡＩＤ：Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙ  ｏｆ  Ｉｎｄｅｐｅｎｄｅｎｔ  Ｄｉｓｋｓ）ドライブ等のデバイスのアレイ、ソリッド・ステート・メモリ・デバイス（例えば、ＵＳＢメモリ、ソリッド・ステート・ドライブ（ＳＳＤ：ｓｏｌｉｄ  ｓｔａｔｅ  ｄｒｉｖｅ）および情報を記憶するのに適した任意の他のタイプの記録媒体等の１つまたは複数の高速メモリユニットの形態の様々なタイプのコンピュータ可読記録媒体を含むことができる。図８に示す例示される実施形態では、システム・メモリ８０６は、不揮発性メモリ８１０および／または揮発性メモリ８１２を含むことができる。基本入出力システム（ＢＩＯＳ：ｂａｓｉｃ  ｉｎｐｕｔ／ｏｕｔｐｕｔ  ｓｙｓｔｅｍ）を不揮発性メモリ８１０に記憶することができる。
【０１０５】
コンピュータ８０２は、内部（または外部）ハードディスク・ドライブ（ＨＤＤ）８１４、取外し可能な磁気ディスク８１８に対し読出しまたは書き込みを行うための磁気フロッピー・ディスク・ドライブ（ＦＤＤ）８１６、および取外し可能な光ディスク８２２（例えば、ＣＤ−ＲＯＭまたはＤＶＤ）に対し読出しまたは書き込みを行うための光ディスク・ドライブ８２０を含む１つまたは複数の低速メモリユニットの形態で様々なタイプのコンピュータ可読記録媒体を備えることができる。ＨＤＤ８１４、ＦＤＤ８１６および光ディスク・ドライブ８２０は、それぞれＨＤＤインタフェース８２４、ＦＤＤインタフェース８２６、および光ドライブ・インタフェース８２８によってシステム・バス８０８に接続されることが可能である。外部ドライブ実装のためのＨＤＤインタフェース８２４は、ユニバーサル・シリアル・バス（ＵＳＢ）およびＩＥＥＥ１３９４インタフェース技術の少なくとも一方または双方を含むことができる。
【０１０６】
ドライブおよび関連するコンピュータ可読媒体は、データ、データ構造、コンピュータ実行可能命令等の揮発性記録および／または不揮発性記録を提供する。例えば、オペレーティング・システム８３０、１つまたは複数のアプリケーション・プログラム８３２、他のプログラム・モジュール８３４およびプログラム・データ８３６を含む複数のプログラム・モジュールがドライブおよびメモリユニット８１０、８１２に記憶され得る。１つの実施形態では、１つまたは複数のアプリケーション・プログラム８３２、他のプログラム・モジュール８３４およびプログラム・データ８３６は、例えば、メッセージング・ウェブ・アクセス・システム１００の様々なアプリケーションおよび／またはコンポーネントを含むことができる。
【０１０７】
ユーザは、１つまたは複数の有線／無線入力デバイス、例えば、キーボード８３８、およびマウス８４０等のポインティング・デバイスを通じてコンピュータ８０２にコマンドおよび情報を入力することができる。他の入力デバイスは、マイクロフォン、赤外線（ＩＲ）リモート・コントロール、無線周波数（ＲＦ）リモート・コントロール、ゲーム・パッド、スタイラス・ペン、カード・リーダ、ドングル、指紋リーダ、グローブ、グラフィック・タブレット、ジョイスティック、キーボード、網膜リーダ、タッチ・スクリーン（例えば、容量型、抵抗型等）、トラックボール、トラックパッド、センサ、スタイラス等を含むことができる。これらのおよび他の入力デバイスは、多くの場合に、システム・バス８０８に結合された入力デバイス・インタフェース８４２を通じて処理ユニット８０４に接続されるが、パラレル・ポート、ＩＥＥＥ１３９４シリアル・ポート、ゲーム・ポート、ＵＳＢポート、ＩＲインタフェース等の他のインタフェースによって接続されてもよい。
【０１０８】
モニタ８４４または他のタイプの表示デバイスも、ビデオ・アダプタ８４６等のインタフェースを介してシステム・バス８０８に接続される。モニタ８４４は、コンピュータ８０２に対し内部または外部にあり得る。モニタ８４４に加えて、コンピュータは通常、スピーカ、プリンタ等の他の周辺出力デバイスを備える。
【０１０９】
コンピュータ８０２は、リモート・コンピュータ８４８等の１つまたは複数のリモート・コンピュータへの有線および／または無線通信を介して論理接続を用いてネットワーク化された環境において動作することができる。リモート・コンピュータ８４８は、ワークステーション、サーバ・コンピュータ、ルータ、パーソナル・コンピュータ、ポータブル・コンピュータ、マイクロプロセッサに基づく娯楽機器、ピア・デバイス、または他の共通ネットワーク・ノードであり得、通常、コンピュータ８０２について記載した要素のうちの多くまたは全てを備えるが、簡潔にするために、メモリ／記録・デバイス８５０のみが示されている。描かれる論理接続は、ローカル・エリア・ネットワーク（ＬＡＮ）８５２および／またはより大きなネットワーク、例えば広域ネットワーク（ＷＡＮ）８５４への有線／無線接続を含む。そのようなＬＡＮおよびＷＡＮネットワーキング環境は、事務所および会社において一般的であり、イントラネット等の、企業規模のコンピュータ・ネットワークを容易にする。これらは全て、グローバル通信ネットワーク、例えばインターネットに接続することができる。
【０１１０】
ＬＡＮネットワーキング環境において用いられるとき、コンピュータ８０２は、有線および／または無線通信ネットワーク・インタフェースまたはアダプタ８５６を通じてＬＡＮ８５２に接続される。アダプタ８５６は、ＬＡＮ８５２への有線および／または無線通信を容易にすることができる。ＬＡＮ８５２も、アダプタ８５６の無線機能と通信するために配置された無線アクセス・ポイントを含むことができる。
【０１１１】
ＷＡＮネットワーキング環境において用いられるとき、コンピュータ８０２は、モデム８５８を含むことができるか、またはＷＡＮ８５４の通信サーバに接続されるか、またはインターネット等によってＷＡＮ８５４を介して、通信を確立する他の手段を有する。内部または外部の、有線および／または無線デバイスであり得るモデム８５８は、入力デバイス・インタフェース８４２を介してシステム・バス８０８に接続する。ネットワーク化された環境では、コンピュータ８０２について述べられたプログラム・モジュールまたはその一部分をリモート・メモリ／記録・デバイス８５０に記憶することができる。示されるネットワーク接続は例示であり、コンピュータ間で通信リンクを確立する他の手段が用いられてもよいことが理解されよう。
【０１１２】
コンピュータ８０２は、ＩＥＥＥ８０２系規格を用いて、無線通信（例えば、ＩＥＥＥ８０２．５オーバー・ザ・エアー変調技法）において動作可能に配置される無線デバイス等の、有線および無線デバイスまたはエンティティと通信するように動作可能である。これは、少なくとも、中でも、Ｗｉ−Ｆｉ（または無線フィデリティ）、ＷｉＭａｘおよびＢｌｕｅｔｏｏｔｈ（商標）の無線通信技術を含む。このため、この通信は従来のネットワークと同じように予め定義された通信構造であり得るか、または、単に少なくとも２つの装置の間におけるアドホック通信であり得る。Ｗｉ−Ｆｉネットワークは、安全で信頼性が高く高速なワイヤレス接続を提供するＩＥＥＥ８０２．５ｘ（ａ、ｂ、ｇ、ｎ等）と称される無線技術を用いる。Ｗｉ−Ｆｉネットワークはコンピュータを互いに、インターネットに、および有線ネットワーク（ＩＥＥＥ８０２．３関連の媒体および機能を用いる）に接続するのに用いられ得る。
【０１１３】
図９は上記の様々な実施形態を実施するのに適した例示的な通信アーキテクチャ９００のブロック図を示す。この通信アーキテクチャ９００は、トランスミッタ、レシーバ、トランシーバ、無線通信装置、ネットワーク・インタフェース、ベースバンド・プロセッサ、アンテナ、増幅器、フィルタ、電源等の様々な一般的な通信要素を含む。しかしながら、本発明の実施形態は通信アーキテクチャ９００による実施に限定されない。
【０１１４】
図９に示されるように、通信アーキテクチャ９００は１つまたは複数のクライアント９０２およびサーバ９０４を含む。クライアント９０２はクライアント・デバイス８１０を実装することができる。サーバ９０４は、メッセージング・サーバ３２０またはウェブ・サーバ・デバイス等のサーバ・デバイスを実装することができる。クライアント９０２およびサーバ９０４は、１つまたは複数のそれぞれのクライアント・データ・ストア９０８およびサーバ・データ・ストア９１０に動作可能に接続されている。これらは、クッキーおよび／または関連付けられた文脈情報等のそれぞれのクライアント９０２およびサーバ９０４にローカルな情報を記憶するために利用されることが可能である。
【０１１５】
クライアント９０２およびサーバ９０４は通信フレームワーク９０６を用いて互いの間で情報を通信することができる。通信フレームワーク９０６は任意の既知の通信技法およびプロトコルを実装することができる。通信フレームワーク９０６は、パケット交換網（例えば、インターネット等の公衆ネットワーク、社内イントラネット等のプライベート・ネットワーク等）、回線交換網（例えば、公衆交換電話網）、またはパケット交換網と回線交換網との組合せ（適切なゲートウェイおよびトランスレータを備える）として実装されることが可能である。
【０１１６】
通信フレームワーク９０６は、通信ネットワークを受け入れ、通信ネットワークと通信し、通信ネットワークに接続するように構成される様々なネットワーク・インタフェースを実施することができる。ネットワーク・インタフェースは、特殊な形態の入出力インタフェースと見なされ得る。ネットワーク・インタフェースは、限定ではないが、直接接続、イーサネット（例えば、シック、シン、ツイスト・ペア１０／１００／１０００ＢａｓｅＴ等）、トークン・リング、無線ネットワーク・インタフェース、セルラ・ネットワーク・インタフェース、ＩＥＥＥ８０２．１１ａ−ｘネットワーク・インタフェース、ＩＥＥＥ８０２．１６ネットワーク・インタフェース、ＩＥＥＥ８０２．２０ネットワーク・インタフェース等を含む接続プロトコルを用いることができる。更に、様々な通信ネットワークタイプと関わるために複数のネットワーク・インタフェースが用いられ得る。例えば、ブロードキャスト、マルチキャストおよびユニキャスト・ネットワークによる通信を可能にするために、複数のネットワーク・インタフェースが用いられることが可能である。処理要件がより高い速度およびより多くの容量を指示する場合、クライアント９０２およびサーバ９０４によって必要とされる通信帯域幅をプールし、負荷分散し、他の形で増大させるために、分散ネットワーク・コントローラ・アーキテクチャが同様に利用されることが可能である。通信ネットワークは、限定ではないが、直接相互接続、セキュア化されたカスタム接続、プライベート・ネットワーク（例えば、社内イントラネット）、公衆ネットワーク（例えば、インターネット）、パーソナル・エリア・ネットワーク（ＰＡＮ）、ローカル・エリア・ネットワーク（ＬＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、インターネット上のノードとして動作しているミッション（ＯＭＮＩ：Ｏｐｅｒａｔｉｎｇ  Ｍｉｓｓｉｏｎｓ  ａｓ  Ｎｏｄｅｓ  ｏｎ  ｔｈｅ  Ｉｎｔｅｒｎｅｔ）、広域ネットワーク（ＷＡＮ）、無線ネットワーク、セルラ・ネットワークおよび他の通信ネットワークを含む有線および／または無線ネットワークのうちの任意の１つまたはそれらの組合せであり得る。
【０１１７】
図１０は、メッセージング・ウェブ・アクセス・システム１００のようなマルチキャリアＯＦＤＭシステムで使用するためのデバイス１０００の実施形態を示している。デバイス１０００は、例えば、メッセージング・ウェブ・アクセス・システム１００を参照して説明したようなソフトウェアコンポーネント１０６０、および／または論理回路１０３０を実装することができる。論理回路１０３０は、メッセージング・ウェブ・アクセス・システム１００について説明したオペレーションを実行するための物理回路を含み得る。図１０に示すように、デバイス１０００は、無線インタフェース１０１０と、ベースバンド回路１０２０と、コンピューティングプラットフォーム１０３０とを備え得るが、ただし実施形態は、この構成に限定されない。
【０１１８】
デバイス１０００は、完全に単一のデバイス内にあるなどの単一のコンピューティング・エンティティにおいて、メッセージング・ウェブ・アクセス・システム１００および／または論理回路１０３０について、その構造および／またはオペレーションの一部またはすべてを具体化することができる。あるいは、デバイス１０００は、クライアント・サーバアーキテクチャ、３層アーキテクチャ、Ｎ層アーキテクチャ、密結合またはクラスタアーキテクチャ、ピアツーピアアーキテクチャ、マスタ・スレーブアーキテクチャ、共有データベースアーキテクチャ、および他のタイプの分散型システムのような分散システムアーキテクチャを用いて、メッセージング・ウェブ・アクセス・システム１００および／または論理回路１０３０について、その構造および／またはオペレーションのいくつかの部分を複数のコンピューティング・エンティティに分散させることができる。実施形態は、この文脈に限定されない。
【０１１９】
一実施形態では、無線インタフェース１０１０は、（例えば、相補型符号変調（ＣＣＫ）および／または直交周波数分割多重（ＯＦＤＭ）シンボルを含む）シングルキャリアまたはマルチキャリア変調信号を送信および／または受信するように構成されたコンポーネントもしくはコンポーネントの組み合わせを有し得るが、ただし実施形態は、いずれかの特定の空中（ｏｖｅｒ−ｔｈｅ−ａｉｒ）インタフェースまたは変調方式に限定されない。無線インタフェース１０１０は、例えば、受信機１０１２、送信機１０１６、および／または周波数シンセサイザ１０１４を有し得る。無線インタフェース１０１０は、バイアスコントロール、水晶発振器、および／または１つ以上のアンテナ１０１８を有し得る。他の実施形態では、無線インタフェース１０１０は、必要に応じて、外部の電圧制御発振器（ＶＣＯ）、弾性表面波フィルタ、中間周波数（ＩＦ）フィルタ、および／またはＲＦフィルタを使用することができる。可能なＲＦインタフェース構成は多様であるため、その広範な説明は省略する。
【０１２０】
ベースバンド回路１０２０は、受信信号および／または送信信号を処理するために無線インタフェース１０１０と通信することができ、例えば、受信信号をダウンコンバートするためのアナログ・デジタル変換器１０２２、信号を送信用にアップコンバートするためのデジタル・アナログ変換器１０２４を有し得る。さらに、ベースバンド回路１０２０は、個々の受信／送信信号のＰＨＹリンク層処理のためのベースバンドまたは物理層（ＰＨＹ）処理回路１０２６を有し得る。ベースバンド回路１０２０は、例えば、メディアアクセス制御（ＭＡＣ）／データリンク層処理のための処理回路１０２８を有し得る。ベースバンド回路１０２０は、例えば、１つ以上のインタフェース１０３４を介した処理回路１０２８および／またはコンピューティングプラットフォーム１０３０による通信のためのメモリコントローラ１０３２を有し得る。
【０１２１】
いくつかの実施形態では、ＰＨＹ処理回路１０２６は、無線フレームのような通信フレームを構築および／または分解するために、バッファメモリのような追加回路と組み合わせて、フレーム構築および／または検出モジュールを含み得る。代替的または追加的に、ＭＡＣ処理回路１０２８は、これらの機能のうちのいくつかの処理を共有するか、またはこれらのプロセスをＰＨＹ処理回路１０２６とは独立に実行することができる。
【０１２２】
コンピューティングプラットフォーム１０３０は、デバイス１０００にコンピューティング機能を提供し得る。図示のように、コンピューティングプラットフォーム１０３０は、処理コンポーネント１０４０を有し得る。デバイス１０００は、ベースバンド回路１０２０に対して追加的または代替的に、処理コンポーネント１０４０を用いて、メッセージング・ウェブ・アクセス・システム１００および／または論理回路１０３０について、その処理オペレーションまたはロジックを実行することができる。処理コンポーネント１０４０（および／またはＰＨＹ  １０２６および／またはＭＡＣ  １０２８）は、各種ハードウェア要素、ソフトウェア要素、またはその両方の組み合わせを含み得る。ハードウェア要素の例として、デバイス、論理デバイス、コンポーネント、プロセッサ、マイクロプロセッサ、回路、プロセッサ回路、回路素子（例えば、トランジスタ、抵抗器、キャパシタ、インダクタなど）、集積回路、特定用途向け集積回路（ＡＳＩＣ）、プログラマブルロジックデバイス（ＰＬＤ）、デジタル信号プロセッサ（ＤＳＰ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、メモリユニット、論理ゲート、レジスタ、半導体デバイス、チップ、マイクロチップ、チップセットなどを含むことができる。ソフトウェア要素の例として、ソフトウェアコンポーネント、プログラム、アプリケーション、コンピュータプログラム、アプリケーションプログラム、システムプログラム、ソフトウェア開発プログラム、マシンプログラム、オペレーティングシステムソフトウェア、ミドルウェア、ファームウェア、ソフトウェアモジュール、ルーチン、サブルーチン、関数、メソッド、プロシージャ、ソフトウェアインタフェース、アプリケーションプログラムインタフェース（ＡＰＩ）、命令セット、コンピューティングコード、コンピュータコード、コードセグメント、コンピュータコードセグメント、ワード、値、シンボル、またはその任意の組み合わせを含むことができる。ハードウェア要素および／またはソフトウェア要素を用いて実施形態を実現するかどうかの判断は、所望の計算速度、電力レベル、熱耐性、処理サイクルバジェット、入力データレート、出力データレート、メモリ資源、データバス速度、および他の設計制約または性能制約など、所与のインプリメンテーションで要求される任意の数のファクタに応じて異なる判断となり得る。
【０１２３】
コンピューティングプラットフォーム１０３０は、さらに、他のプラットフォームコンポーネント１０５０を有し得る。他のプラットフォームコンポーネント１０５０は、１つ以上のプロセッサ、マルチコアプロセッサ、コプロセッサ、メモリユニット、チップセット、コントローラ、周辺機器、インタフェース、発振器、タイミング装置、ビデオカード、オーディオカード、マルチメディア入力／出力（Ｉ／Ｏ）コンポーネント（例えば、デジタルディスプレイ）、パワーサプライなどのような、一般的な計算要素を含む。メモリユニットの例として、限定するものではないが、リードオンリメモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、ダイナミックＲＡＭ（ＤＲＡＭ）、ダブルデータレートＤＲＡＭ（ＤＤＲＡＭ）、同期ＤＲＡＭ（ＳＤＲＡＭ）、スタティックＲＡＭ（ＳＲＡＭ）、プログラマブルＲＯＭ（ＰＲＯＭ）、消去可能プログラマブルＲＯＭ（ＥＰＲＯＭ）、電気的消去可能プログラマブルＲＯＭ（ＥＥＰＲＯＭ）、フラッシュメモリ、強誘電性ポリマーメモリのようなポリマーメモリ、オボニックメモリ、相変化または強誘電体メモリ、シリコン／酸化膜／窒化膜／酸化膜／シリコン（ＳＯＮＯＳ）メモリ、磁気または光カード、独立ディスクの冗長アレイ（ＲＡＩＤ）ドライブのようなデバイスアレイ、ソリッドステートメモリデバイス（例えば、ＵＳＢメモリ、ソリッドステートドライブ（ＳＳＤ））、および情報を保存するのに適した他の任意のタイプの記憶媒体のような、１つ以上のより高速のメモリユニットの形態の各種タイプのコンピュータ可読およびマシン可読記憶媒体を含むことができる。
【０１２４】
デバイス１０００は、例えば、ウルトラモバイルデバイス、モバイルデバイス、固定デバイス、マシンツーマシン（Ｍ２Ｍ）デバイス、パーソナルデジタルアシスタント（ＰＤＡ）、モバイルコンピューティングデバイス、スマートフォン、電話機、デジタル電話機、セルラ電話機、ユーザ装置、電子書籍リーダ、ハンドセット、一方向ページャ、双方向ページャ、メッセージング装置、コンピュータ、パーソナルコンピュータ（ＰＣ）、デスクトップコンピュータ、ラップトップコンピュータ、ノートブックコンピュータ、ネットブックコンピュータ、ハンドヘルドコンピュータ、タブレットコンピュータ、サーバ、サーバアレイまたはサーバファーム、ウェブサーバ、ネットワークサーバ、インターネットサーバ、ワークステーション、ミニコンピュータ、メインフレームコンピュータ、スーパーコンピュータ、ネットワークアプライアンス、ウェブアプライアンス、分散コンピューティングシステム、マルチプロセッサシステム、プロセッサベースのシステム、家電機器、プログラマブル家電機器、ゲーム機、テレビ、デジタルテレビ、セットトップボックス、ワイヤレスアクセスポイント、基地局、ノードＢ、発展型ノードＢ（ｅＮＢ）、加入者局、モバイル加入者センタ、無線ネットワークコントローラ、ルータ、ハブ、ゲートウェイ、ブリッジ、スイッチ、マシン、またはその組み合わせであり得る。従って、本明細書に記載のデバイス１０００の機能および／または具体的な構成は、要求に応じて適宜、デバイス１０００の種々の実施形態に含むことも、または省くこともできる。いくつかの実施形態では、デバイス１０００は、３ＧＰＰ  ＬＴＥ仕様および／またはＷＭＡＮ用のＩＥＥＥ１００２．１６規格および／または本明細書で引用される他の広帯域ワイヤレスネットワークの１つ以上に関連したプロトコルおよび周波数に準拠するように構成することができるが、実施形態は、この点に関して限定されない。
【０１２５】
デバイス１０００の実施形態は、単入力単出力（ＳＩＳＯ）アーキテクチャを用いて実現することができる。一方、いくつかの実現形態では、ビームフォーミングまたは空間分割多重アクセス（ＳＤＭＡ）のための適応アンテナ技術、および／またはＭＩＭＯ通信技術を用いた送信および／または受信用のマルチアンテナ（例えば、アンテナ１０１８）を備えることができる。
【０１２６】
デバイス１０００のコンポーネントおよび機能は、ディスクリート回路、特定用途向け集積回路（ＡＳＩＣ）、論理ゲート、および／またはシングルチップアーキテクチャの任意の組み合わせを用いて実装することができる。さらに、デバイス１０００の機能は、必要に応じて適宜、マイクロコントローラ、プログラマブルロジックアレイ、および／またはマイクロプロセッサ、またはその任意の組み合わせを用いて実装することができる。なお、本明細書において、ハードウェア、ファームウェア、および／またはソフトウェア要素を、「ロジック」または「回路」と総称または個称する場合があるということに留意すべきである。
【０１２７】
図１０のブロック図に示す例示的なデバイス１０００は、多くの可能性のある実現形態の１つの機能的説明例を表し得るということは理解されるべきである。従って、添付の図面に示す機能ブロックの分割、欠落、または組み込みは、必ずしも、実施形態における、それらの機能を実装するためのハードウェアコンポーネント、回路、ソフトウェア、および／または要素の分割、欠落、または組み込みを推測させるものではない。  コンピュータにより実行される方法は、リモート・ウェブ・ブラウザがメッセージング・アプリケーションからメッセージング更新を受信するための要求を、リモート・ウェブ・ブラウザから、モバイル・デバイス上のメッセージング・アプリケーションで受信する工程と、メッセージング・アプリケーションとリモート・ウェブ・ブラウザとの間に暗号化された接続を確立する工程と、メッセージング更新をメッセージング・アプリケーションで受信する工程と、メッセージング更新をメッセージング・アプリケーションからリモート・ウェブ・ブラウザに送信する工程とを含むことができる。
【０１２８】
コンピュータにより実行される方法は、メッセージング・アプリケーションがメッセージング更新を受信することに応答して、メッセージング更新が自動的に送信されることをさらに含むことができる。
【０１２９】
コンピュータにより実行される方法は、ウェブ・サーバとリモート・ウェブ・ブラウザとの間に暗号化された接続がある状態で、モバイル・デバイス上のウェブ・サーバを始動する工程をさらに含むことができる。
【０１３０】
コンピュータにより実行される方法は、暗号化された接続がリモート・ウェブ・サーバを介して送信されることをさらに含むことができる。
コンピュータにより実行される方法は、メッセージング・アプリケーションが、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられており、リモート・ウェブ・サーバが、今後のウェブ・ブラウザ・セッションのために第１のユーザ・アカウントについてのメッセージング状態をキャッシュするように動作することをさらに含むことができる。
【０１３１】
コンピュータにより実行される方法は、リモート・ウェブ・サーバ上でキャッシュされたメッセージング状態へのアクセスが、モバイル・デバイス上のメッセージング・アプリケーションによって制御されることをさらに含むことができる。
【０１３２】
コンピュータ実装方法は、リモート・ウェブ・サーバによりリモート・ウェブ・ブラウザを認可解除する認可解除命令を、リモート・ウェブ・サーバに送信する工程をさらに含むことができる。
【０１３３】
コンピュータ実装方法は、メッセージング・アプリケーションが、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられており、メッセージング更新が、第２のモバイル・デバイス上の第２のメッセージング・アプリケーションから受信され、第２のメッセージング・アプリケーションが、メッセージング・サービスによる第２のユーザ・アカウントに関連付けられており、メッセージング更新が、第１のユーザ・アカウントと第２のユーザ・アカウントとの間のメッセージング会話におけるメッセージを含むことをさらに含むことができる。
【０１３４】
コンピュータ実装方法は、メッセージが第１のユーザ・アカウントから第２のユーザ・アカウントに送られる、またはメッセージが第２のユーザ・アカウントから第１のユーザ・アカウントに送られることをさらに含むことができる。
【０１３５】
コンピュータ実装方法は、メッセージが、テキスト・セグメント、画像、映像セグメント、およびオーディオ・セグメントのうちの１つまたは複数を含むことをさらに含むことができる。
【０１３６】
コンピュータ実装方法は、メッセージが、メディア・セグメントを含み、メディア・セグメントが、映像セグメントおよびオーディオ・セグメントのうちの１つを含むことをさらに含むことができ、メッセージング更新をリモート・ウェブ・ブラウザに送信する前に、メディア・セグメントを、リモート・ウェブ・ブラウザによってサポートされるメディア・フォーマットにコード変換する工程をさらに含むことができる。
【０１３７】
コンピュータ実装方法は、メッセージング・アプリケーションが、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられていることをさらに含むことができ、第１のユーザ・アカウントに関連付けられているメッセージング状態を、モバイル・デバイス上のローカル・ストアから取り出す工程と、メッセージング状態をリモート・ウェブ・ブラウザに送信する工程とをさらに含むことができる。
【０１３８】
コンピュータ実装方法は、メッセージング更新が、第１のユーザ・アカウントと第２のユーザ・アカウントとの間のメッセージング会話に対応し、メッセージング状態が、第１のユーザ・アカウントと第２のユーザ・アカウントとの間のメッセージング会話の履歴を含むことをさらに含むことができる。
【０１３９】
コンピュータ実装方法は、メッセージング状態が、第１のユーザ・アカウントについての連絡先リストの少なくとも一部分を含むことをさらに含むことができる。
コンピュータ実装方法は、第１のユーザ・アカウントについての連絡先リストを取り出す工程と、連絡先リストにおける連絡先のメッセージング・アクティビティに基づいて、連絡先リストの一部分を決定する工程とをさらに含むことができる。
【０１４０】
コンピュータ実装方法は、暗号化された接続がピア・ツー・ピア・ネットワーク接続を介して送信されることをさらに含むことができる。
コンピュータ実装方法は、ピア・ツー・ピア・ネットワーク接続が、ブルートゥース接続およびＷｉ−Ｆｉ接続のうちの１つを含むことをさらに含むことができる。
【０１４１】
コンピュータ実装方法は、リモート・ウェブ・ブラウザによって表示されるマシン可読光ラベルを、モバイル・デバイスのカメラ・デバイスを使用して取り込む工程と、マシン可読光ラベルからウェブ・セッション識別子を抽出する工程と、ウェブ・セッション識別子に基づいて、暗号化された接続の確立のためにリモート・ウェブ・ブラウザを識別する工程とをさらに含むことができる。
【０１４２】
コンピュータ実装方法は、メッセージング・アプリケーションが、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられていることをさらに含むことができ、メッセージング・サービスの第２のユーザ・アカウントとのメッセージング会話に関連付けられている送出メッセージを、暗号化された接続上でリモート・ウェブ・ブラウザから受信する工程と、送出メッセージを、第２のユーザ・アカウントに関連付けられている第２のメッセージング・アプリケーションに送信する工程とをさらに含むことができる。
【０１４３】
コンピュータ実装方法は、送出メッセージの確認応答を第２のメッセージング・アプリケーションから受信する工程と、送出メッセージの確認応答に従って、リモート・ウェブ・ブラウザによる送出メッセージを更新する工程とをさらに含むことができる。
【０１４４】
コンピュータ実装方法は、メッセージング更新をリモート・ウェブ・ブラウザに送信する前に、メッセージング更新にシーケンス番号を割り当てる工程をさらに含むことができる。
【０１４５】
コンピュータ実装方法は、リモート・ウェブ・ブラウザに認証情報を送信する工程と、リモート・ウェブ・ブラウザがメッセージング・アプリケーションからメッセージング更新を再び受信するための第２の要求を、リモート・ウェブ・ブラウザから、モバイル・デバイス上のメッセージング・アプリケーションで受信する工程と、認証情報を使用して、メッセージング・アプリケーションとリモート・ウェブ・ブラウザとの間に第２の暗号化された接続を確立する工程とをさらに含むことができる。
【０１４６】
装置は、モバイル・デバイス上のプロセッサ回路と、メッセージング・アプリケーションとを含むことができ、メッセージング・アプリケーションは、リモート・ウェブ・ブラウザがメッセージング・アプリケーションからメッセージング更新を受信するための要求を、リモート・ウェブ・ブラウザから受信する工程、メッセージング・アプリケーションとリモート・ウェブ・ブラウザとの間に暗号化された接続を確立する工程、メッセージング更新をメッセージング・アプリケーションで受信する工程、およびメッセージング更新をメッセージング・アプリケーションからリモート・ウェブ・ブラウザに送信する工程を行うように、プロセッサ回路上で動作する。装置は、本明細書で説明されたコンピュータ実装方法のいずれかを実装するように動作してよい。
【０１４７】
少なくとも１つのコンピュータ可読記憶媒体は、実行されるとき、システムに、本明細書で説明されたコンピュータ実装方法のうちのいずれかを実施させる命令を含むことができる。
【０１４８】
いくつかの実施形態は、「１つの実施形態」または「実施形態」という表現と、それらの派生語とを用いて説明され得る。これらの用語は、実施形態に関して説明される特定の特徴、構造または特性が少なくとも１つの実施形態に含まれることを意味している。本明細書の様々な箇所に現れる「１つの実施形態において」というフレーズは、必ずしも全てが同じ実施形態を指しているわけではない。更に、いくつかの実施形態は、「結合された」および「接続された」という表現と、それらの派生語とを用いて説明され得る。これらの表現は必ずしも互いの同義語として意図されているわけではない。例えば、いくつかの実施形態は、「接続された」および／または「結合された」という表現を用いることにより、２つ以上の要素が直接物理的にまたは電気的に相互接触していることを示すように説明され得る。一方、「結合された」という用語は、２つ以上の要素が互いに直接接触していないが、それでも互いに協働またはインタラクトしていることを意味する場合もある。
【０１４９】
本明細書において用いられる表記および専門用語を全体的に参照すると、本明細書における詳細な説明は、コンピュータまたはコンピュータのネットワーク上で実行されるプログラム・プロシージャの観点で表され得る。これらの手続き的（ｐｒｏｃｅｄｕｒａｌ）記載および表現は、当業者によって、当該技術分野における他の当業者に自身の研究の本質を最も効果的に伝えるために用いられている。
【０１５０】
プロシージャとは、ここでは、また一般的に、所望の結果をもたらすオペレーションの首尾一貫したシーケンスであると考えられる。これらのオペレーションは、物理的量の物理的操作を必要とするものである。必須ではないが通例、これらの量は、記憶、転送、組合せ、比較および他の形で操作されることが可能な電気信号、磁気信号または光信号の形態をとる。場合によっては、主に一般的用法の理由から、これらの信号を、ビット、値、要素、シンボル、文字、語、数等と呼ぶことが好都合であることがわかっている。しかしながら、これらの用語および同様の用語は全て適切な物理的量に関連付けられ、これらの量に適用される好都合なラベルにすぎないことに留意されたい。
【０１５１】
更に、実行される操作は、多くの場合、人間のオペレータによって実行される知的オペレーションに一般的に関連付けられる、追加または比較等の用語で参照される。１つまたは複数の実施形態の一部を形成する、本明細書に説明されるオペレーションのいずれにおいても、人間のオペレータのそのような能力は必要でないか、ほとんどの場合に望ましくない。むしろ、オペレーションは機械オペレーションである。様々な実施形態のオペレーションを実行するための有用な機械は、汎用デジタル・コンピュータまたは同様のデバイスを含む。
【０１５２】
様々な実施形態は、これらのオペレーションを実行するための装置またはシステムにも関する。この装置は、必要とされる目的のために特に構築されることが可能であるか、またはコンピュータに記憶されるコンピュータ・プログラムによって選択的にアクティベートまたは再構成される汎用コンピュータを含むことができる。本明細書において提示されるプロシージャは、特定のコンピュータまたは他の装置に本質的に関係しない。様々な汎用機械は、本明細書における教示に関連して書かれたプログラムと共に用いられ得るか、または、必要とされる方法ステップを実行する、より特殊な装置を構築することが好都合であるとわかる場合がある。様々なこれらの機械のために必要とされる構造は、与えられる説明から明らかとなるであろう。
【０１５３】
本開示の要約書は、読み手が技術的開示の本質を迅速に理解できるようにするために提供されていることを強調しておく。要約書は、特許請求の範囲の範囲または意味を解釈または限定することに用いられないという理解のもとに提出されている。更に、上記した「発明を実施するための形態」においては、開示を効率化するために様々な特徴がまとめて単一の実施形態にされていることを見てとることができる。このような開示方法は、特許請求される実施形態が各請求項に明示的に記された特徴以外のものを必要とする意図を表していると解釈されるべきではない。むしろ、以下の特許請求の範囲が表しているように、本発明の主題は、開示されている単一の実施形態の全特徴よりも少ない特徴にある。このため、以下の特許請求の範囲は本明細書において「発明を実施するための形態」に組み込まれ、各請求項は独立した１つの実施形態に基づく。添付の特許請求の範囲において「ｉｎｃｌｕｄｉｎｇ（含む、備える）」および「ｉｎ  ｗｈｉｃｈ」という表現はそれぞれ、平易な英語に相当する表現である「ｃｏｍｐｒｉｓｉｎｇ（含む、備える）」および「ｗｈｅｒｅｉｎ」として用いられている。また、「第１の」、「第２の」、「第３の」等の用語は単にラベルとして用いられており、それらの対象物に数的限定を課すことを意図したものではない。
【０１５４】
上記で説明したものは、開示されているアーキテクチャの例を含む。当然ながら、コンポーネントおよび／または方法の全ての考え得る組合せを記載することは不可能であるが、当業者であれば、多くの更なる組合せおよび置き換えが可能であることを認識することができる。したがって、新規のアーキテクチャは、添付の特許請求の範囲の趣旨および範囲内にある全ての変化、変更および変形を包含することが意図される。
【図１】
2019149193.tif 000003
【図２】
2019149193.tif 000004
【図３】
2019149193.tif 000005
【図４】
2019149193.tif 000006
【図５】
2019149193.tif 000007
【図６】
2019149193.tif 000008
【図７】
2019149193.tif 000009
【図８】
2019149193.tif 000010
【図９】
2019149193.tif 000011
【図１０】
2019149193.tif 000012
【手続補正書】
【提出日】令和1年6月6日(2019.6.6)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピュータにより実行される方法であって、
リモート・ウェブ・ブラウザで発信される要求をモバイル・デバイス上のメッセージング・アプリケーションに送信する工程であって、前記要求は、前記リモート・ウェブ・ブラウザがメッセージング・サービスによる第１のユーザ・アカウントに関連付けられているメッセージング・アプリケーションからのメッセージング更新を受信することを要求するものである、要求を送信する工程と、
ウェブ・サーバで、前記第１のユーザ・アカウントについてのメッセージング状態をキャッシュする工程であって、前記ウェブ・サーバ上でキャッシュされた前記メッセージング状態へのアクセスは、前記モバイル・デバイス上のメッセージング・アプリケーションによって制御される、前記キャッシュする工程と、
前記メッセージング・アプリケーションと前記リモート・ウェブ・ブラウザとの間に暗号化された接続を確立する工程であって、
モバイル・デバイスのローカル・メッセージング・アプリケーションとウェブ・サーバとの間に第１の暗号化された接続を確立すること、及び
リモート・ウェブ・ブラウザと前記ウェブ・サーバとの間に第２の暗号化された通信セッションを確立すること
を含む、前記暗号化された接続を確立する工程と、
前記ウェブ・サーバで、前記メッセージング・アプリケーションからメッセージ更新を受信する工程と、
前記キャッシュで前記メッセージング更新をキャッシュする工程と、
前記ウェブ・サーバによって、前記メッセージング更新を前記リモート・ウェブ・ブラウザに送信する工程と
を含む、方法。
【請求項２】
前記暗号化された接続が、前記ウェブ・サーバを介して送信される、請求項１に記載の方法。
【請求項３】
前記メッセージング・アプリケーションが、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられ、前記メッセージング更新が、該第１のユーザ・アカウントと第２のユーザ・アカウントとの間のメッセージング会話に対応し、
前記方法が、
該第１のユーザ・アカウントに関連付けられているメッセージング状態を、前記モバイル・デバイス上のローカル・ストアから取り出す工程であって、該メッセージング状態が、該第１のユーザ・アカウントについての連絡先リストの少なくとも一部分を含み、該メッセージング状態が、該第１のユーザ・アカウントと該第２のユーザ・アカウントとの間のメッセージング会話の履歴を含む、前記取り出す工程と、
該メッセージング状態を前記リモート・ウェブ・ブラウザに送信する工程と
をさらに含む、請求項１に記載の方法。
【請求項４】
前記第１のユーザ・アカウントについての連絡先リストを取り出す工程と、
前記連絡先リストにおける連絡先のメッセージング・アクティビティに基づいて、前記連絡先リストの前記一部分を決定する工程と
をさらに含む、請求項３に記載の方法。
【請求項５】
前記リモート・ウェブ・ブラウザによって表示されるマシン可読光ラベルを、前記モバイル・デバイスのカメラ・デバイスを使用して取り込む工程と、
該マシン可読光ラベルからウェブ・セッション識別子を抽出する工程と、
該ウェブ・セッション識別子に基づいて、前記暗号化された接続の確立のために前記リモート・ウェブ・ブラウザを識別する工程と
をさらに含む、請求項１に記載の方法。
【請求項６】
前記メッセージング・アプリケーションが、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられ、
前記方法が、
該メッセージング・サービスの第２のユーザ・アカウントとのメッセージング会話に関連付けられている送出メッセージを、前記暗号化された接続上で前記リモート・ウェブ・ブラウザから受信する工程と、
該送出メッセージを、該第２のユーザ・アカウントに関連付けられている第２のメッセージング・アプリケーションに送信する工程と
をさらに含む、請求項１に記載の方法。
【請求項７】
装置であって、
プロセッサ回路と、
前記プロセッサ回路上で動作可能なウェブ・サーバと
を備え、前記ウェブ・サーバは、リモート・ウェブ・ブラウザ発信の要求をモバイル・デバイス上のメッセージング・アプリケーションに送信し、前記リモート・ウェブ・ブラウザがメッセージング・サービスによる第１のユーザ・アカウントに関連付けられているメッセージング・アプリケーションからのメッセージング更新を受信することを要求するものであり、
前記ウェブ・サーバで、前記第１のユーザ・アカウントについてのメッセージング状態をキャッシュし、前記ウェブ・サーバ上でキャッシュされた前記メッセージング状態へのアクセスは、前記モバイル・デバイス上のメッセージング・アプリケーションによって制御され、
モバイル・デバイスのローカル・メッセージング・アプリケーションとウェブ・サーバとの間に第１の暗号化された接続を確立すること、及び、リモート・ウェブ・ブラウザと前記ウェブ・サーバとの間に第２の暗号化された通信セッションを確立することを含み、前記メッセージング・アプリケーションと前記リモート・ウェブ・ブラウザとの間に暗号化された接続を確立し、
前記ウェブ・サーバで、前記メッセージング・アプリケーションからメッセージ更新を受信し、
前記キャッシュで前記メッセージング更新をキャッシュし、
前記ウェブ・サーバから、前記メッセージング更新を前記リモート・ウェブ・ブラウザに送信する、装置。
【請求項８】
前記暗号化された接続が、前記ウェブ・サーバを介して送信される、請求項７に記載の装置。
【請求項９】
前記メッセージング・アプリケーションが、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられ、
前記メッセージング更新が、該第１のユーザ・アカウントと第２のユーザ・アカウントとの間のメッセージング会話に対応し、
前記メッセージング・アプリケーションがさらに、
該第１のユーザ・アカウントに関連付けられているメッセージング状態を、前記モバイル・デバイス上のローカル・ストアから取り出す工程であって、該メッセージング状態が、該第１のユーザ・アカウントについての連絡先リストの少なくとも一部分を含み、該メッセージング状態が、該第１のユーザ・アカウントと該第２のユーザ・アカウントとの間のメッセージング会話の履歴を含む、前記取り出す工程と、
該メッセージング状態を前記リモート・ウェブ・ブラウザに送信する工程と、を行うように動作する、請求項７に記載の装置。
【請求項１０】
前記メッセージング・アプリケーションがさらに、
前記第１のユーザ・アカウントについての連絡先リストを取り出す工程と、
前記連絡先リストにおける連絡先のメッセージング・アクティビティに基づいて、前記連絡先リストの前記一部分を決定する工程と、を行うように動作する、請求項９に記載の装置。
【請求項１１】
前記メッセージング・アプリケーションがさらに、
前記リモート・ウェブ・ブラウザによって表示されるマシン可読光ラベルを、前記モバイル・デバイスのカメラ・デバイスを使用して取り込む工程と、
該マシン可読光ラベルからウェブ・セッション識別子を抽出する工程と、
該ウェブ・セッション識別子に基づいて、前記暗号化された接続の確立のために前記リモート・ウェブ・ブラウザを識別する工程と、を行うように動作する、請求項７に記載の装置。
【請求項１２】
前記メッセージング・アプリケーションが、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられ、
前記メッセージング・アプリケーションがさらに、
該メッセージング・サービスの第２のユーザ・アカウントとのメッセージング会話に関連付けられている送出メッセージを、前記暗号化された接続上で前記リモート・ウェブ・ブラウザから受信する工程と、
該送出メッセージを、該第２のユーザ・アカウントに関連付けられている第２のメッセージング・アプリケーションに送信する工程と、を行うように動作する、請求項７に記載の装置。
【請求項１３】
実行されるとき、システムに、
リモート・ウェブ・ブラウザで発信される要求をモバイル・デバイス上のメッセージング・アプリケーションに送信する工程であって、前記要求は、前記リモート・ウェブ・ブラウザがメッセージング・サービスによる第１のユーザ・アカウントに関連付けられているメッセージング・アプリケーションからのメッセージング更新を受信することを要求するものである、要求を送信する工程と、
ウェブ・サーバで、前記第１のユーザ・アカウントについてのメッセージング状態をキャッシュする工程であって、前記ウェブ・サーバ上でキャッシュされた前記メッセージング状態へのアクセスは、前記モバイル・デバイス上のメッセージング・アプリケーションによって制御される、前記キャッシュする工程と、
前記メッセージング・アプリケーションと前記リモート・ウェブ・ブラウザとの間に暗号化された接続を確立する工程であって、
モバイル・デバイスのローカル・メッセージング・アプリケーションとウェブ・サーバとの間に第１の暗号化された接続を確立すること、及び
リモート・ウェブ・ブラウザと前記ウェブ・サーバとの間に第２の暗号化された通信セッションを確立すること
を含む、前記暗号化された接続を確立する工程と、
前記ウェブ・サーバで、前記メッセージング・アプリケーションからメッセージ更新を受信する工程と、
前記キャッシュで前記メッセージング更新をキャッシュする工程と、
前記ウェブ・サーバによって、前記メッセージング更新を前記リモート・ウェブ・ブラウザに送信する工程と
を行わせる命令を備える少なくとも１つのコンピュータ可読記憶媒体。
【請求項１４】
前記暗号化された接続が、リモート・ウェブ・サーバを介して送信される、請求項１３に記載の少なくとも１つのコンピュータ可読記憶媒体。
【請求項１５】
前記メッセージング・アプリケーションが、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられ、前記メッセージング更新が、該第１のユーザ・アカウントと第２のユーザ・アカウントとの間のメッセージング会話に対応し、
実行されるとき、システムに、
該第１のユーザ・アカウントについての連絡先リストを取り出す工程、
該連絡先リストにおける連絡先のメッセージング・アクティビティに基づいて、該連絡先リストの一部分を決定する工程、
該第１のユーザ・アカウントに関連付けられているメッセージング状態を、前記モバイル・デバイス上のローカル・ストアから取り出す工程であって、該メッセージング状態が、該第１のユーザ・アカウントについての連絡先リストの少なくとも一部分を含み、該メッセージング状態が、該第１のユーザ・アカウントと該第２のユーザ・アカウントとの間のメッセージング会話の履歴を含む、前記取り出す工程、
該メッセージング状態を前記リモート・ウェブ・ブラウザに送信する工程
を行わせる命令をさらに備える、請求項１３に記載の少なくとも１つのコンピュータ可読記憶媒体。
【請求項１６】
実行されるとき、システムに、
前記リモート・ウェブ・ブラウザによって表示されるマシン可読光ラベルを、前記モバイル・デバイスのカメラ・デバイスを使用して取り込む工程と、
該マシン可読光ラベルからウェブ・セッション識別子を抽出する工程と、
該ウェブ・セッション識別子に基づいて、前記暗号化された接続の確立のために前記リモート・ウェブ・ブラウザを識別する工程と
を行わせる命令をさらに備える、請求項１３に記載の少なくとも１つのコンピュータ可読記憶媒体。
【請求項１７】
前記メッセージング・アプリケーションが、メッセージング・サービスによる第１のユーザ・アカウントに関連付けられ、
実行されるとき、システムに、
該メッセージング・サービスの第２のユーザ・アカウントとのメッセージング会話に関連付けられている送出メッセージを、暗号化された接続上で前記リモート・ウェブ・ブラウザから受信する工程と、
該送出メッセージを、該第２のユーザ・アカウントに関連付けられている第２のメッセージング・アプリケーションに送信する工程と
を行わせる命令をさらに備える、請求項１３に記載の少なくとも１つのコンピュータ可読記憶媒体。