(57)【特許請求の範囲】
【請求項１】
無線データ処理デバイスとの、第１のＩＭプロトコルを使った、無線ネットワークによるインスタントメッセージング（「ＩＭ」）通信をサポートする、無線データ処理デバイスインターフェース、
第１のＩＭサービスとの第２のＩＭプロトコルを使ったＩＭ通信をサポートする、第１のＩＭサービスインターフェース、
前記第１のＩＭプロトコルと前記第２のＩＭプロトコルとの間を変換し、それにより、前記無線データ処理デバイスが、前記第１のＩＭサービスとのＩＭセッションを確立すること、及び該無線データ処理デバイスが処理することができないフォーマットのファイルを該無線データ処理デバイスが処理できるフォーマットに変換すること、を可能にする変換モジュール、及び
前記無線データ処理デバイスが前記無線ネットワークと通信できるように接触していないとき、該無線データ処理デバイスに宛てられたＩＭ通信を格納するメッセージキューを含む、該無線データ処理デバイスへの仮想接続を維持するメッセージングモジュールであって、前記無線データ処理デバイスが一時的に前記無線ネットワークと通信できるように接触していないときに、前記無線データ処理デバイスが一時的に前記無線ネットワークと通信できるように接触していないことを示す指示を提供するメッセージングモジュール、
を備え、前記無線データ処理デバイスが、前記無線ネットワークと通信できるように接触していた最後のときから所定の時間内に、該無線ネットワークと通信できるように接触するようになった場合には、前記メッセージキュー内に格納されたＩＭ通信を、該無線データ処理デバイスに転送し、
前記無線データ処理デバイスが、前記無線ネットワークと通信できるように接触していた最後のときから所定の時間内に、該無線ネットワークと通信できるように接触するようにならなかった場合には、該無線データ処理デバイスを、前記ＩＭセッションからログオフさせる
ことを特徴とする、インスタントメッセージングプロキシシステム。
【請求項２】
前記第２のＩＭプロトコルと互換性のない第３のＩＭプロトコルを使った、第２のＩＭサービスとのＩＭ通信をサポートする第２のＩＭサービスインターフェース、
をさらに備え、前記変換モジュールが、前記第１のＩＭプロトコルと前記第３のＩＭプロトコルとの間を変換し、それにより、前記データ処理デバイスが、前記第２のＩＭサービスとのＩＭセッションを確立することを可能にした
ことを特徴とする、請求項１に記載のＩＭプロキシシステム。
【請求項３】
ＩＭプロキシサーバが、前記無線データ処理デバイスと前記第１及び第２のＩＭサービスとの間の並行ＩＭセッションをサポートする
ことを特徴とする、請求項２に記載のＩＭプロキシシステム。
【請求項４】
前記変換モジュールが、前記第１のＩＭサービスが処理することができないフォーマットのファイルを、該第１のＩＭサービス、又はそれに通信できるように繋がれたクライアントが処理できるフォーマットに変換する
ことを特徴とする、請求項１に記載のＩＭプロキシシステム。
【請求項５】
インスタントメッセージング（「ＩＭ」）クライアントがインストールされた、無線データ処理デバイスと、
前記無線データ処理デバイスと１又はそれ以上のＩＭサービスとの間に無線ネットワークによって通信できるように繋がれ、前記ＩＭサービスと前記無線データ処理デバイスとの間にＩＭセッションが存在するとき、前記ＩＭサービスのうちの１つで用いられる第１のＩＭプロトコルと前記無線データ処理デバイスで用いられる第２のＩＭプロトコルとの間を変換するプロキシサーバと
を備え、該プロキシサーバは、前記無線データ処理デバイスが処理することができないフォーマットの、前記１又はそれ以上のＩＭサービスから受け取ったファイルを、該無線データ処理デバイスが処理できるフォーマットに変換するデータ変換ロジックを備え、
該プロキシサーバは、前記無線データ処理デバイスへの仮想接続を維持し、
前記無線データ処理デバイスが前記無線ネットワークから通信できないように切り離されるように一時的になった場合には、該プロキシサーバが、１又はそれ以上のＩＭサービスからの該無線データ処理デバイスに宛てられた無線通信を、メッセージキュー内に格納するとともに、前記無線データ処理デバイスが前記無線ネットワークと通信できるように一時的に接触していないことを示す指示を提供し、
前記無線データ処理デバイスが、前記無線ネットワークから通信できないように切り離されるようになったときから所定の時間内に、該無線ネットワークに通信できるように繋がれるようになった場合には、該プロキシサーバが、前記メッセージキュー内の前記格納された無線通信を、該無線データ処理デバイスへ転送し、及び
前記無線データ処理デバイスが、前記無線ネットワークから通信できないように切り離されるようになったときから所定の時間内に、該無線ネットワークに通信できるように繋がれるようにならなかった場合には、該プロキシサーバが、該無線データ処理デバイスを前記ＩＭセッションからログオフさせる、
ことを特徴とするシステム。
【請求項６】
前記プロキシサーバが、前記ＩＭサービスのうちの第２のＩＭサービスで用いられる第３のＩＭプロトコルと、前記無線データ処理デバイスで用いられる前記第２のＩＭプロトコルとの間を変換する
ことを特徴とする、請求項５に記載のシステム。
【請求項７】
前記データ変換ロジックが、前記１又はそれ以上のＩＭサービスが処理することができないフォーマットのファイルを、前記ＩＭサービス、又はそれらに通信できるように繋がれたクライアントが処理できるフォーマットに変換する
ことを特徴とする、請求項５に記載のシステム。
【請求項８】
前記ＩＭプロキシサーバ、及び前記１又はそれ以上のＩＭサービスが、インターネットによって通信できるように繋がれた
ことを特徴とする、請求項５に記載のシステム。
【請求項９】
前記データ処理デバイスが、データ処理能力を有するセルラ電話である
ことを特徴とする、請求項５に記載のシステム。
【請求項１０】
第１のインスタントメッセージング（「ＩＭ」）フォーマットで、無線ネットワークによって通信できるように接続された無線データ処理デバイスから、インスタントメッセージングデータを受け取り、
前記インスタントメッセージングデータが向けられた第１のＩＭサービスを特定し、    前記インスタントメッセージングデータを、前記第１のＩＭサービスと互換性のある第２のＩＭフォーマットに再フォーマットし、
ＩＭセッションの間、前記第２のＩＭフォーマットで、前記インスタントメッセージングデータを前記第１のＩＭサービスに伝送し、
前記第２のＩＭフォーマットで、前記第１のＩＭサービスから、インスタントメッセージングデータを受け取り、
前記インスタントメッセージングデータが向けられた前記無線データ処理デバイスを特定し、
前記インスタントメッセージングデータを、前記第１のＩＭフォーマットに再フォーマットし、
前記無線データ処理デバイスが処理することができないフォーマットの、前記１又はそれ以上のＩＭサービスから受け取ったファイルを、該無線データ処理デバイスが処理できるフォーマットに変換し、
前記無線デバイスが一時的に前記無線ネットワークから通信できないように切断されているとき、前記無線データ処理デバイスが一時的に前記無線ネットワークと通信できるように接触していないことを示す指示を提供するメッセージングモジュール、
前記無線データ処理デバイスが、前記無線ネットワークから通信できないように切り離されたときから所定の時間内に、該無線ネットワークに通信できるように接続された場合には、
前記無線データ処理デバイスが前記無線ネットワークに通信できるように接続されていないとき、前記インスタントメッセージングデータを、前記第１のＩＭフォーマットで、メッセージキュー内に格納し、
前記無線データ処理デバイスが前記無線ネットワークに通信できるように接続されているとき、前記メッセージキュー内の前記格納されたインスタントメッセージデータを、該無線データ処理デバイスへ転送し、かつ、
前記無線データ処理デバイスが、前記無線ネットワークから通信できないように切り離されたときから所定の時間内に、該無線ネットワークに通信できるように接続されなかった場合には、
前記無線データ処理デバイスを前記ＩＭセッションからログオフさせるステップ、
を含むことを特徴とする方法。
【請求項１１】
前記第１のＩＭフォーマットで、前記データ処理デバイスから更なるインスタントメッセージングデータを受け取り、
前記更なるインスタントメッセージングデータが向けられた第２のＩＭサービスを特定し、
前記更なるインスタントメッセージングデータを、前記第２のＩＭサービスと互換性のある第３のＩＭフォーマットに再フォーマットし、かつ、
前記第３のＩＭフォーマットで、前記更なるインスタントメッセージングデータを、前記第２のＩＭサービスに伝送するステップ、
をさらに含むことを特徴とする、請求項１０に記載の方法。
【請求項１２】
前記インスタントメッセージングデータがデータファイルを含む
ことを特徴とする、請求項１０に記載の方法。
【請求項１３】
前記データファイルがグラフィック画像を含む
ことを特徴とする、請求項１２に記載の方法。
【請求項１４】
前記伝送するステップが、前記インスタントメッセージングデータをインターネットにより前記第１のＩＭサービスに伝送することを含む
ことを特徴とする、請求項１０に記載の方法。
【請求項１５】
ＩＭクライアントとＩＭサービスとの間のＩＭセッションの間、前記ＩＭクライアントで用いられる第１のＩＭプロトコルと前記ＩＭサービスで用いられる第２のＩＭプロトコルとの間を変換するインスタントメッセージング（「ＩＭ」）プロキシサーバを、前記ＩＭクライアントと前記ＩＭサービスとの間に、通信できるように繋ぐステップと、
前記ＩＭクライアントが処理することができないフォーマットの、前記１又はそれ以上のＩＭサービスから受け取ったファイルを、前記ＩＭクライアントが処理できるフォーマットに変換するステップと
を含み、前記ＩＭプロキシサーバは、無線ネットワークによって、前記ＩＭクライアントに通信できるように繋がれ、
前記ＩＭクライアントが前記無線ネットワークと通信できるように接触していないとき、該ＩＭクライアントに宛てられたＩＭ通信を格納するメッセージキューを含む前記ＩＭプロキシサーバが、該ＩＭクライアントへの仮想接続を維持し、前記ＩＭクライアントが一時的に前記無線ネットワークと通信できるように接触していないときに、前記ＩＭクライアントが一時的に前記無線ネットワークと通信できるように接触していないことを示す指示を前記ＩＭプロキシサーバが提供し、
前記ＩＭクライアントが、前記無線ネットワークと通信できるように接触していた最後のときから所定の時間内に、該無線ネットワークと通信できるように接触するようになった場合には、前記メッセージキュー内に格納されたＩＭ通信を、前記無線データ処理デバイスに転送し、
前記ＩＭクライアントが、前記無線ネットワークと通信できるように接触していた最後のときから所定の時間内に、該無線ネットワークと通信できるように接触するようにならなかった場合には、前記ＩＭプロキシシステムが、該ＩＭクライアントを前記ＩＭセッションからログオフさせる
ことを特徴とする方法。
【請求項１６】
前記ＩＭクライアントが、インターネットにより、前記ＩＭサービスに通信できるように繋がれる
ことを特徴とする、請求項１５に記載の方法。
【請求項１７】
前記変換モジュールが、更に、コンテンツを前記無線データ処理デバイス上で正確に再生するためのバイトコードのセットを生成するように構成された
ことを特徴とする、請求項１に記載のＩＭプロキシシステム。
【請求項１８】
前記変換モジュールが、更に、前記ファイルを圧縮し、それによりネットワーク帯域幅を保存するように構成された
ことを特徴とする、請求項１に記載のＩＭプロキシシステム。
【請求項１９】
前記データ変換ロジックが、更に、コンテンツを前記無線データ処理デバイス上で正確に再生するためのバイトコードのセットを生成するように構成された
ことを特徴とする、請求項５に記載のシステム。
【請求項２０】
前記データ変換ロジックが、更に、前記ファイルを圧縮し、それによりネットワーク帯域幅を保存するように構成された
ことを特徴とする、請求項５に記載のシステム。
【請求項２１】
コンテンツを前記無線データ処理デバイス上で正確に再生するためのバイトコードのセットを生成するステップ、
を更に含むことを特徴とする、請求項１０に記載の方法。
【請求項２２】
前記ファイルを圧縮し、それによりネットワーク帯域幅を保存するステップ、
を更に含むことを特徴とする、請求項１０に記載の方法。
【請求項２３】
コンテンツを前記無線データ処理デバイス上で正確に再生するためのバイトコードのセットを生成するステップ、
を更に含むことを特徴とする、請求項１５に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的には、データ処理システムの分野に関するものである。特に、本発明は、通常互換性のない様々なIMサービス間のインスタントメッセージングセッションをサポートするように構成されたプロキシサーバーに関するものである。
【背景技術】
【０００２】
インスタントメッセージングシステムは、二又はそれ以上のユーザー間の生のテキストベースのチャットセッションに備えるものである。eメールと異なり、インスタントメッセージングは、全てのパーティーが同時にオンラインであることを必要とする。AOLのインスタントメッセンジャー(「AIM（登録商標）」)、マイクロソフトネットワークメッセンジャーサービス(「MSNMS（登録商標）」)、ICQ（登録商標）、及びYahoo!Messenger（登録商標）が、主要なインスタントメッセージングサービスである。
【０００３】
インスタントメッセージングクライアントは、ユーザーが、しばしば「仲間リスト」又は「連絡先リスト」と呼ばれる連絡先のリストを保持することを可能にする。ユーザーは、ユーザーリストの中の人々の誰にでも、その人がオンラインである限り、インスタントメッセージを送ることができる。メッセージを送信することは、ユーザー及びユーザーの仲間が、その両者とも見ることのできるメッセージを入力することのできる小さなウィンドウを開く。
【０００４】
一般的なインスタントメッセージングプログラムの殆どが、例えば、ウェブリンク(ウェブサイトへのリンクを共有する能力)、画像共有(仲間のコンピューターに格納された画像を表示する能力)、サウンド共有(サウンドを仲間に伝送する能力)、ファイル共有(ファイルを仲間に伝送する能力)、音声通信(仲間と実際に話をするために、電話ではなくインターネットを使用する能力)、及び情報ストリーミング(株式相場、及びニュースヘッドラインのようなリアルタイム又はリアルタイムに近い情報のストリーミング)を含む様々な補足機能を提供する。
【０００５】
インスタントメッセージングセッションに関する基本原理の幾つかを、図1を参照してここで説明する。インスタントメッセージングセッションを確立するために、エンドユーザーが操作するクライアントコンピューター102及び104は、ネットワーク(例えば、インターネット)により、インスタントメッセージングサービス100に、最初に接続しなければならない。クライアントコンピューター102及び104は、典型的には、ダイヤルアップ線、ケーブルモデム接続、又はデジタル加入者線(「DSL」)を介して、接続を確立する。そのかわりに、クライアントコンピューター102又は104を、ローカルエリアネットワーク(「LAN」)ゲートウェイを介して、インターネットに接続することもできる。
【０００６】
指定されたインスタントメッセージングサービス100と通信するために、所有権を主張できるインスタントメッセージングクライアントソフトウェアを、クライアントコンピューター102及び104に、最初にインストールしなければならない。例えば、インスタントメッセージングサービス100がAIMである場合には、所有権を主張できるAOLのインスタントメッセージングクライアントソフトウェアをインストールしなければならない。このクライアントソフトウェアは、クライアントコンピューター102及び104が、所有権を主張できるAOLのインスタントメッセージングプロトコルを使って、AIMサーバーと通信することを可能にする。
【０００７】
同様に、IMサービス108のような他のインスタントメッセージングサービスは、他のクライアントソフトウェアをクライアントコンピューター106及び110にインストールすることを要求する。例えば、ヤフーのIMサービスを使用するどのクライアントコンピューターにも、所有権を主張できるヤフーのIMプロトコルの内蔵サポートを含む所有権を主張できるヤフーのIMソフトウェアをインストールしなければならない。さらに、各サービス100、108で要求されるクライアントIMソフトウェア、及び関連IMプロトコルは、互換性がない。一サービスのために設計されたクライアントソフトウェアを、異なるサービスに接続するために使用することはできない。
【０００８】
IMクライアントソフトウェアがインストールされると、IMセッションを確立するために、クライアントは、そのクライアントコンピューターに関するIMサービス接続情報(例えば、IPアドレス、及びポート番号)を送信する。IMサービスは、ユーザー、及びユーザーの仲間リスト内の連絡先についての接続情報を含む一時ファイルを作成する。次に、仲間リスト内の連絡先のどれが、現在ログインしているかをチェックする。
【０００９】
サービスが、ログインしている何れかの連絡先に位置する場合には、それは、それらの連絡先についての接続情報をクライアントに送り返す。IMサービスはまた、ユーザーの接続情報を、仲間リスト内のサインオンしている連絡先に送る。クライアントは、仲間リスト内の連絡先についての接続情報を受け取った時、その人の「ステータス」を「オンライン」に変更する。次に、ユーザーは、仲間リスト内のオンラインであるどの連絡先の名前もクリックすることができ、ユーザーがインスタントメッセージを入力できるIMウィンドウを開くことができる。
【００１０】
ユーザーがIMサービスにサインオンすると、クライアント102と104との間、及びクライアント106と110との間の「直接リンク」で示すように、それに続く全ての通信が、2つのクライアント間に直接生じることができる。しかしながら、幾つかの状況のもとでは、IM通信は、インスタントメッセージングサービス100を通って生じ続けなければならない。例えば、クライアント104がファイアウォールの背後にある場合には、クライアント102は、クライアント104とのIMセッションを直接確立することが許されないとすることができる。
【００１１】
ユーザーが「オフライン」になったとき、クライアントは、セッションを終了させるために、IMサーバーへメッセージを送る。次に、サーバーは、ユーザーがログオフしたことを示すために、ユーザーの仲間リスト内の現在オンラインである全ての連絡先のクライアントにメッセージを送る。最後に、IMサーバーは、そのクライアントについての接続情報を含んだ一時ファイルを削除する。
【００１２】
(要約)
第一のインスタントメッセージング(「IM」)フォーマットでデータ処理デバイスからインスタントメッセージを受け取るステップ、そのインスタントメッセージが向けられた第一のIMサービスを特定するステップ、そのインスタントメッセージを第一のIMサービスと互換性のある第二のIMフォーマットに再フォーマットするステップ、及び、その第二のIMフォーマットでインスタントメッセージを第一のIMサービスに伝送するステップ、を含む方法を説明する。
【００１３】
以下の図面と組合せて、以下の詳細な説明から、本発明のよりよい理解を得ることができる。
【００１４】
(好ましい実施形態の詳細な説明)
電子メッセージングサービスを介して、詳細なメッセージ受信ステータス情報を提供するシステム及び方法を、以下に説明する。本発明の完全な理解を提供するために、説明の目的のため、この詳細な説明全体にわたって、多数の具体的な詳細を示す。しかしながら、これらの具体的な詳細の幾つかがなくても、本発明を実践することができることが、当業者には明らかであろう。他の例では、本発明の基本原理を不明瞭にするのを避けるため、よく知られた構造及びデバイスをブロック図の形で示す。
【００１５】
データ処理サービスの実施形態
過去数年間にわたって、様々な携帯/無線データ処理デバイスが投入された。これらは、Palm（登録商標）VIIxハンドヘルド、データ処理能力を備えたセルラー電話のような無線個人情報端末(「PDA」)、及び、より最近では、Research In Mostion(「RIM」)TMで開発されたBlackberryTM無線ページャーのような企業無線メッセージングデバイスを含む。
【００１６】
データ処理サービスと組合せて作動する一つの特定の無線データ処理デバイスが、200年11月15日に出願された、「ネットワークポータルシステム、機構、及び方法」という名称の係属中の特許出願第09/714,897号(以下、「ネットワークポータル出願」とする)で説明されており、その出願は、本出願の代理人に割り当てられたものであり、引用により本出願に組み入れられる。このデータ処理デバイス、及びデータ処理サービスの幾つかの側面をここで説明し、次に、電子メッセージングサービスでユーザーステータスを自動的に提供するシステム及び方法の詳細な説明が続く。しかしながら、本発明の基本原理は、このネットワークポータル出願で示した特定のサービスに限定されるものではない、ということに注目すべきである。
【００１７】
図2は、データ処理サービス200の一実施形態を示している。データ処理サービス200は、データ処理デバイス210が、それを通って外部のインターネットサイト230のコンテンツ(例えば、ウェブページ、マルチメディアコンテンツ、eメール、インスタントメッセージ…等)にアクセスすることのできるポータルを提供する。一実施形態では、サービス200は、標準のアプリケーション及びデータを、どの無線データ処理デバイス210も正しく解釈することのできるフォーマットに変換する。従って、図2に示すように、サービス210の一実施形態は、インターネットコンテンツ240の要求を処理するコンテンツ変換モジュール220を含む。特に、サービス200は、データ処理デバイス210のプロキシとして働き、データ処理デバイス210の代わりに、インターネット要求240、241を適切なインターネットサイト230に転送し、インターネットサイト230からの応答を標準のインターネットフォーマット(例えば、オーディオ/ビデオ及びグラフィックコンテンツを埋め込まれたウェブページ、添付ファイルを持つeメールメッセージ…等)で受け取り、かつ、標準のインターネット応答242をデータ処理デバイス210が処理することのできるフォーマット(例えば、ネットワークポータル出願で説明するようなバイトコード)に変換する。
【００１８】
例えば、変換モジュール220は、HTMLコードを解釈し、HTMLコードに埋め込まれた如何なるコンテンツ(例えば、グラフィックス、ビデオ、サウンド…等)もサービス200にダウンロードするハイパーテキストマーク付け言語(「HTML」)描画モジュール(示されていない)を含むことができる。次に、変換モジュール220は、HTMLコードと埋め込まれたコンテンツを結び付け、データ処理デバイス210で要求されたコンテンツを正確に再現するためのバイトコードのセットを生成することができる。上で説明したように、一実施形態では、バイトコードは、Javaバイトコード/アプレットとすることができる。しかしながら、使用されるデータ処理デバイス210の特定の形式に依って(例えば、インタプリタモジュールを持つもの、又は持たないもの)、変換モジュール220は、様々な他の形式の解釈された、及び/又は解釈されていないコードを生成することができる。
【００１９】
サービス200の一実施形態は、各データ処理デバイス210の機能/構成の詳しい情報(例えば、スクリーンサイズ、グラフィックス/オーディオ機能、利用可能なメモリ、処理能力、ユーザーの基本設定…等)を保持するので、それは、要求されたインターネットコンテンツを正確に再構成できると同時に、コンテンツをデバイス210に伝送するのに必要な帯域幅を最小化することができる。例えば、変換モジュール220は、要求されたコンテンツがデータ処理デバイス210のディスプレイ内で正しく描画されるように、その要求されたコンテンツに対して、事前拡大縮小及び色の深さの調節を実行することができる。これらの計算をするとき、変換は、データ処理デバイス210で利用可能なメモリ及び処理能力を計算に入れることができる。さらに、変換モジュール220は、様々な圧縮技術を使って、要求されたコンテンツを圧縮し、それにより、ネットワーク帯域幅を保持することができる。
【００２０】
自動ユーザーステータス
図3に示すサービス100の一実施形態は、無線デバイス110と他の無線及び有線データ処理デバイス(例えば、図3に示すクライアント330のような)との間のメッセージ受渡しを調整する電子メッセージングモジュール320から成る。メッセージングモジュール320は、ユーザー選択可能な、又はサービス選択可能なメッセージングパラメータ321のセットにより、動作する。
【００２１】
無線デバイス110のユーザーが、サービス100にログインして、インスタントメッセージを受け取る時、メッセージングモジュール320が、インスタントメッセージを、無線ネットワーク310を介して他のクライアント330から無線デバイス110に転送する。逆に、無線メッセージングモジュール320は、無線デバイス110から伝送されたインスタントメッセージを、様々なクライアント330でログインしているメッセージ受信者に転送する。無線メッセージングモジュール220は、任意の数のログインユーザーとのインスタントメッセージングセッションを調整する。無線デバイス110が通信する他のクライアント330は、ネットワークによってインスタントメッセージを送信及び受信することのできる如何なる形式のデータ処理デバイス(例えば、他の無線デバイス、ローカルエリアネットワーク又はデジタル加入者線に通信できるようにつながれたデスクトップ/ノートブックパソコン、個人情報端末…等)ともすることができる。
【００２２】
無線デバイス110の本質的可動性により、それは、無線ネットワーク310と周期的に交信したり、交信しなかったりすることができる(すなわち、無線リンク111は、完全に確実とすることはできない)。例えば、ユーザーが、トンネル、エレベーターに入った、さもなければ通信範囲外を通っている場合には、無線デバイス110は、インスタントメッセージを一時的に送信又は受信できないとすることができる。以前のインスタントメッセージングシステムでは、メッセージ送信者は、単にユーザーがオフラインであったことを示すメッセージを受け取る、又は、全く何の表示も受け取らないであろう。
【００２３】
しかしながら、本発明の一実施形態では、デバイス110が、一時的に無線ネットワーク310の交信外に移ったときでさえも、メッセージングモジュール320は、その無線デバイス110への継続的な仮想接続312を維持する。無線デバイス110が通信範囲外にある間、メッセージングモジュール320は、その無線デバイス110に宛てられた如何なるメッセージも、一時メッセージキュー325に格納する。無線デバイス110がオンラインに戻ったことを、サービス100が検知するとすぐに、メッセージキュー325の中のメッセージが、無線デバイス110に転送される。一実施形態では、無線デバイス110は、ネットワーク310との通信が再確立されるまで、送出インスタントメッセージを一時的に格納する同様なメッセージキューを含む。
【００２４】
一実施形態では、サービス100が、デバイス110の現在のステータスを継続的に追跡するので、メッセージングモジュール320は、ユーザーの詳細なステータス情報を、様々なメッセージ送信者に提供することができる。例えば、デバイスが一時的に交信外となったとき、デバイス110が「オフライン」であるというメッセージをただ単に送信する、あるいは全く何の表示も送信しないのではなく、メッセージングモジュール320が、デバイスが一時的に交信外に移ったという表示を伝送する。同様に、デバイスが長時間にわたって交信外であった場合には、メッセージングモジュール320は、メッセージングセッションのユーザーをログオフさせ、デバイス110がオフラインである表示を伝送することができる。
【００２５】
インスタントメッセージングプロキシ
上で言及したように、各インスタントメッセージングサービスは、互換性のない異なるインスタントメッセージング(「IM」)プロトコルを使用する。このように、異なるIMサービス上のユーザーと通信するために、サービス固有のIMプロトコルの内蔵サポートを含む各IMサービスのクライアントを、典型的には、ユーザーのデータ処理デバイスにインストールしなければならない。
【００２６】
本発明の一実施形態は、無線デバイスで使用されるIMプロトコルと、各個別のIMサービスで使用されるサービス固有のIMプロトコルとの間を変換することにより、複数のIMサービス間の通信をサポートする。結果として、ユーザーは、単一クライアントインターフェースを使って、複数のIMサービスによって通信することができる。
【００２７】
図4に示すように、一実施形態では、IMプロキシサーバー401が、サービス100内に構築されて、異なるIMサービス420-421の各々と無線デバイス110との間の通信をサポートする。より具体的には、IMプロキシサーバー401は、無線デバイス110で用いられるIMプロトコル400と、プロキシサーバー401とIMサービス420-422の各々との間でそれぞれ用いられるサービス固有プロトコル410-412との間を変換する。このように、ユーザーは、様々なIMサービス上でIMアカウントを開き、同じクライアントソフトウェアを使って、様々なIMサービスの各々の並行したIMセッションを維持することができる。例えば、IMサービス420は、AOLのインスタントメッセンジャーサービス(「AIM（登録商標）」)とすることができ、IMサービス421は、マイクロソフトネットワークメッセンジャーサービス(「MSNMS（登録商標）」)、及び、IMサービス422は、Yahoo!Messenger（登録商標）サービスとすることができる。ユーザーは、AIM420のクライアント450とのIMセッションを開くことができえると同時に、MSNMSサービス421のクライアント451、及びYahoo!Messengerサービス422のクライアント452とのIMセッションを維持することができる。
【００２８】
図5に示すように、IMプロキシ401は、一般的には、無線デバイス110で用いられるIM機能をサポートするデバイスインターフェース504、及び、異なるIMサービス420-422の各々で用いられるIM機能をそれぞれサポートするIMサービス501-503のセットから成る。IMプロトコル変換モジュール505は、デバイスインターフェース504でサポートされるIM機能/プロトコルと、IMサービスインターフェース501-503の各々でサポートされるIM機能/プロトコルの間を変換する。例えば、IMサービス420がAIMサービスである場合には、IMサービスインターフェース501が、所有権を主張できるAOLのインスタントメッセージングプロトコル410、及び関連IM機能(例えば、ファイル転送機能、暗号化機能…等)を使って通信する。プロトコル変換モジュール505、及びサービス固有インターフェース501-503の各々は、サービス100内に実装されるので、データ処理デバイスのIMプロトコル400とサービス固有プロトコル410-412の間の変換は、エンドユーザーにトランスペアレントに生じる。
【００２９】
IMサービスプロトコルとデータ処理デバイスで用いられるIMプロトコルの間を変換するとき、IMプロトコル変換モジュール505が、様々な形式のデータオブジェクトを変換することができる。例えば、特定のIMサービスが、グラフィック画像(例えば、JPEGファイル)又はサウンド(例えば、WAVファイル)の伝送をサポートする場合には、IMプロトコル変換モジュール505が、伝送された画像/サウンドを、データ処理デバイス110が処理及び描画できるフォーマットに変換する。同様に、データ処理デバイス110が、例えば、所有権を主張できる画像及び/又はオーディオフォーマットのような、様々なIMサービス420-422と互換性のないファイルフォーマットを用いる場合には、IMプロトコル変換モジュール505が、ファイルを、IMサービス420-422及び/又は通信できるようにそれらに繋がれたクライアントが処理できるフォーマット(例えば、標準のJPEG及びWAVファイル)に変換する。事実上無限数の様々なファイル形式を、IMプロトコル変換モジュール505で変換できると同時に、さらに本発明の基本原理に従うことができる。
【００３０】
無線デバイス110と、限定ではなく例として、セルラーデジタルパケットデータ(「CDPD」)、汎用パケット無線サービス(「GPRS」)、及びMobitexのようなパケットベースのネットワークを含むサービス100との間の通信をサポートするために、様々な無線ネットワーク形式を用いることができる。しかしながら、本発明の基本原理は、如何なる特定の形式の無線ネットワーク310にも限定されないことに注目すべきである。
【００３１】
本発明の実施形態は、上で示すような様々なステップを含むことができる。汎用目的又は特殊目的のプロセッサに幾つかのステップを実行させる機械実行可能な命令で、これらのステップを具現化することができる。そのかわりに、ステップを実行するハードワイヤードロジックを収容する特定のハードウェアコンポーネント、又は、プログラムされたコンピュータコンポーネントとカスタムハードウェアコンポーネントとのいずれかの組合せによって、これらのステップを実行することもできる。
【００３２】
本発明の要素はまた、機械実行可能な命令を格納する機械読み取り可能な媒体として提供されることもできる。機械読み取り可能な媒体は、フロッピーディスク、光ディスク、CD-ROM、及び光磁気ディスク、ROM、RAM、EPROM、EEPROM、磁気又は光カード、伝播媒体、又は電子命令を格納するのに適した他の形式の媒体/機械読み取り可能な媒体を含むことができるが、これらに限定されない。例えば、搬送波又は他の伝播媒体で具現化されるデータ信号を介して、リモートコンピューター(例えば、サーバー)から要求側コンピューター(例えば、クライアント)へ、通信リンク(例えば、モデム又はネットワーク接続)を介して転送することのできるコンピュータープログラムとして、本発明をダウンロードすることもできる。
【００３３】
本発明の完全な理解を提供するために、前述の説明の全体にわたって、説明の目的のため、多数の具体的な詳細を示した。しかしながら、これらの具体的な詳細の幾つかが無くても、本発明を実践することができることが、当業者には明らかであろう。例えば、上で説明した実施形態が、インスタントメッセージングの実装に焦点を当てる一方で、様々な代替のメッセージングプロトコルを使って、本発明の基本原理を実装することもできる。従って、本発明の技術的範囲は、以下に続く特許請求の範囲によって判定されるべきである。
【図面の簡単な説明】
【００３４】
【図１】インスタントメッセージングセッションに関する基本原理を示している。
【図２】本発明の実施形態を実装する例示のシステムを示している。
【図３】本発明の一実施形態による、無線デバイスで維持される仮想接続を示している。
【図４】本発明の一実施形態による、サービス内に実装されるIMプロキシを示している。
【図５】図4のIMプロキシの一実施形態で用いられるハードウェア/ソフトウェアアーキテクチャを示している。
【図１】
0004927334.tif 000002
【図２】
0004927334.tif 000003
【図３】
0004927334.tif 000004
【図４】
0004927334.tif 000005
【図５】
0004927334.tif 000006