(57)【特許請求の範囲】
【請求項１】
オペレーティングシステムとワイヤレス通信インターフェースとを有するコンピュータプラットフォームを備えるワイヤレス通信デバイス上での、メディア送信の取り扱いを動的にエスカレートさせる方法において、
前記オペレーティングシステムは、メディアを取り扱うアプリケーションプログラミングインターフェースを含む複数のレイヤを含み、
アプリケーションプログラミングインターフェースにおいて、メディアを含む送出優先データバンドルを発生させることと、
プロセッサにおいて前記送出優先データバンドルが他のデータより前に処理されるように、前記プロセッサにおける処理のための、前記送出優先データバンドルの優先順位をエスカレートさせることと、
前記送出優先データバンドルを前記ワイヤレス通信インターフェースから送信することと、
前記オペレーティングシステム上で実行されるメディアアプリケーションにおいて、メディアセッションを確立することと、
前記メディアセッションに対する前記送出優先データバンドルに優先順位を付けるべきことを示すためのコマンドを、前記アプリケーションプログラミングインターフェースから前記プロセッサ中のサービスタスクに送ることとを含み、
前記送出優先データバンドルは、前記メディアセッションのためのものであり、
前記送出優先データバンドルの前記優先順位をエスカレートさせることは、前記コマンドに応答するものであり、前記サービスタスクにおける、他のデータの処理に対応する第２のタスクの第２の優先値よりもより高い優先レベルを持つように、前記送出優先データバンドルの処理に対応する第１のタスクの第１の優先値をエスカレートさせることをさらに含み、
前記他のデータは、前記オペレーティングシステム上で実行される汎用アプリケーションに対応し、前記汎用アプリケーションは、前記メディアアプリケーションと同時に実行され、前記送出優先データバンドルの送信が前記汎用アプリケーションの前記他のデータによって中断されない方法。
【請求項２】
前記送出優先データバンドルを発生させることは、通信グループ中の他のワイヤレス通信デバイスへの送出グループ通信を発生させることを含む請求項１記載の方法。
【請求項３】
前記送出優先データバンドルを発生させることは、トークスパートを発生させることを含む請求項２記載の方法。
【請求項４】
そこから送られるメディアのために、前記アプリケーションプログラミングインターフェースにポートを選択的に割り当てることをさらに含む請求項１記載の方法。
【請求項５】
そこから送られるメディアのために、前記アプリケーションプログラミングインターフェースにソケットを選択的に割り当てることをさらに含む請求項１記載の方法。
【請求項６】
前記アプリケーションプログラミングインターフェースまたは別のアプリケーションプログラミングインターフェースは、各アプリケーションプログラミングインターフェースの優先順位にしたがって、前記ワイヤレス通信インターフェースの制御を選択的に生じさせることをさらに含む請求項１記載の方法。
【請求項７】
前記送出優先データバンドルをバッファに送り、その後、前記送出優先データバンドルを前記ワイヤレス通信インターフェースに送ることをさらに含む請求項１記載の方法。
【請求項８】
前記複数のレイヤのうちの１つにおけるオブジェクトが、前記送出優先データバンドルを送信するための、前記アプリケーションプログラミングインターフェースからの要求に基づいて、前記アプリケーションプログラミングインターフェースに対して、前記ワイヤレス通信インターフェースへの直接的なリンクを選択的に割り当てる請求項１記載の方法。
【請求項９】
前記オペレーティングシステムの他のソフトウェアレイヤによる到来データバンドルの取り扱いなしで、前記ワイヤレス通信インターフェースにおけるメディアを含む前記到来データバンドルを、前記アプリケーションプログラミングインターフェースまたは別のアプリケーションプログラミングインターフェースに直接的に送ることをさらに含む請求項１記載の方法。
【請求項１０】
前記送出優先データバンドルを発生させることは、通信グループにおける他のワイヤレス通信デバイスへのグループ音声通信通話におけるトークスパートを発生させることを含み、前記送出優先データバンドルの前記優先順位をエスカレートさせることは、前記通話または前記トークスパートのうちの少なくとも１つに優先順位を付けることに基づいている請求項１記載の方法。
【請求項１１】
優先ファイル拡張子を前記送出優先データバンドルに追加することと、
前記優先ファイル拡張子に基づいて、前記送出優先データバンドルの送信に優先順位を付けることとをさらに含む請求項１記載の方法。
【請求項１２】
前記オペレーティングシステムの他のソフトウェアレイヤによる前記送出優先データバンドルの取り扱いなしで、前記送出優先データバンドルを前記ワイヤレス通信インターフェースに直接的に送ることをさらに含む請求項１記載の方法。
【請求項１３】
ワイヤレス通信デバイスにおいて、
オペレーティングシステムとプロセッサとを備えるコンピュータプラットフォームと、
ワイヤレス通信インターフェースと、
送出優先データバンドルが他のデータより前に処理されるように、前記プロセッサにおける処理のための、前記送出優先データバンドルの優先順位をエスカレートさせることによって、メディア送信の取り扱いを動的にエスカレートさせるように構成されているメディアハンドラとを具備し、
前記オペレーティングシステムは、メディアを取り扱い、メディアを含む送出優先データバンドルを発生させるように構成されているアプリケーションプログラミングインターフェースを含む複数のレイヤを含み、
前記メディハンドラは、
前記オペレーティングシステム上で実行されるメディアアプリケーションにおいて、メディアセッションを確立するようにと、
前記メディアセッションに対する前記送出優先データバンドルに優先順位を付けるべきことを示すためのコマンドを、前記アプリケーションプログラミングインターフェースから前記プロセッサ中のサービスタスクに送るようにさらに構成され、
前記送出優先データバンドルは、前記メディアセッションのためのものであり、
前記送出優先データバンドルの前記優先順位をエスカレートさせることは、前記コマンドに応答するものであり、前記サービスタスクにおける、他のデータの処理に対応する第２のタスクの第２の優先値よりもより高い優先レベルを持つように、前記送出優先データバンドルの処理に対応する第１のタスクの第１の優先値をエスカレートさせることをさらに含み、
前記他のデータは、前記オペレーティングシステム上で実行される汎用アプリケーションに対応し、前記汎用アプリケーションは、前記メディアアプリケーションと同時に実行され、前記送出優先データバンドルの送信が前記汎用アプリケーションの前記他のデータによって中断されないデバイス。
【請求項１４】
前記メディアハンドラは、通信グループ中の他のワイヤレス通信デバイスへの送出グループ通信を発生させるようにさらに構成され、前記送出グループ通信は、前記送出優先データバンドルを含む請求項１３記載のデバイス。
【請求項１５】
前記メディアハンドラは、前記送出優先データバンドル中で前記メディアを発生させるようにさらに構成され、前記送出優先データバンドルは、前記送出グループ通信におけるトークスパートをさらに含む請求項１４記載のデバイス。
【請求項１６】
前記メディアハンドラは、そこから送られるメディアのために、前記アプリケーションプログラミングインターフェースにポートを選択的に割り当てるようにさらに構成されている請求項１３記載のデバイス。
【請求項１７】
前記メディアハンドラは、そこから送られるメディアのために、前記アプリケーションプログラミングインターフェースにソケットを選択的に割り当てるようにさらに構成されている請求項１３記載のデバイス。
【請求項１８】
前記メディアハンドラは、各優先順位を、前記アプリケーションプログラミングインターフェースと少なくとも１つの他のアプリケーションプログラミングインターフェースとに割り当てるようにさらに構成され、
前記アプリケーションプログラミングインターフェースおよび前記少なくとも１つの他のアプリケーションプログラミングインターフェースは、各アプリケーションプログラミングインターフェースの優先順位にしたがって、前記ワイヤレス通信インターフェースの制御を選択的に生じさせる請求項１３記載のデバイス。
【請求項１９】
前記メディアハンドラは、前記送出優先データバンドルをバッファに送るようにさらに構成されている請求項１３記載のデバイス。
【請求項２０】
前記送出優先データバンドルを送信するための、前記アプリケーションプログラミングインターフェースからの要求に基づいて、前記アプリケーションプログラミングインターフェースに対して、前記ワイヤレス通信インターフェースへの直接的なリンクを選択的に割り当てるように構成されている、前記複数のレイヤのうちの１つにおけるオブジェクトをさらに具備する請求項１３記載のデバイス。
【請求項２１】
前記メディアハンドラは、前記オペレーティングシステムの他のソフトウェアレイヤによる到来データバンドルの取り扱いなしで、前記ワイヤレス通信インターフェースにおける前記到来データバンドルを、前記アプリケーションプログラミングインターフェースまたは別のアプリケーションプログラミングインターフェースに直接的に送るようにさらに構成されている請求項１３記載のデバイス。
【請求項２２】
ワイヤレス通信デバイスにおいて、
プロセッサと、メディアを取り扱い、メディアを含む送出優先データバンドルを発生させるように構成されているアプリケーションプログラミングインターフェースとを含む複数のレイヤを含み、前記ワイヤレス通信デバイス上のコンピュータプラットフォームをオペレーティングする手段と、
ワイヤレス通信を行うための手段と、
前記送出優先データバンドルが他のデータより前に処理されるように、前記プロセッサにおける処理のための、前記送出優先データバンドルの優先順位をエスカレートさせることによって、メディア送信の取り扱いを動的にエスカレートさせる手段と、
前記オペレーティングシステム上で実行されるメディアアプリケーションにおいて、メディアセッションを確立する手段と、
前記メディアセッションに対する前記送出優先データバンドルに優先順位を付けるべきことを示すためのコマンドを、前記アプリケーションプログラミングインターフェースから前記プロセッサにおけるサービスタスクに送る手段と、
前記サービスタスクにおいて他のデータを処理する手段に対応する第２のタスクの第２の優先値よりもより高い優先レベルを持つように、前記送出優先データバンドルを処理する手段に対応する第１のタスクの第１の優先値をエスカレートさせる手段を備え、前記コマンドに応答して、前記送出優先データの前記優先順位をエスカレートさせる手段とを具備し、
前記送出優先データバンドルは、前記メディアセッションのためのものであり、
前記他のデータは、前記オペレーティングシステム上で実行される汎用アプリケーションに対応し、前記汎用アプリケーションは、前記メディアアプリケーションと同時に実行され、前記送出優先データバンドルの送信が前記汎用アプリケーションの前記他のデータによって中断されないワイヤレス通信デバイス。
【請求項２３】
コンピュータ読み取り可能記憶媒体において、
オペレーティングシステムとプロセッサとワイヤレス通信インターフェースとを有するコンピュータプラットフォームを備えるワイヤレス通信デバイス上のアプリケーションプログラミングインターフェースにおいて、メディアを含む送出優先データバンドルを発生させるための１組の命令と、
前記送出優先データバンドルが他のデータより前に処理されるように、前記プロセッサにおける処理のための、前記送出優先データバンドルの優先順位をエスカレートさせるための１組の命令と、
前記送出優先データバンドルを前記ワイヤレス通信インターフェースから送信するための１組の命令と、
前記オペレーティングシステム上で実行されるメディアアプリケーションにおいて、メディアセッションを確立するための１組の命令と、
前記メディアセッションに対する前記送出優先データバンドルに優先順位を付けるべきことを示すためのコマンドを、前記アプリケーションプログラミングインターフェースから前記プロセッサにおけるサービスタスクに送るための１組の命令と、
前記サービスタスクにおける、前記他のデータの処理のための１組の命令に対応する第２のタスクの第２の優先値よりもより高い優先レベルを持つように、前記送出優先データバンドルを処理するための１組の命令に対応する第１のタスクの第１の優先値をエスカレートさせるための１組の命令を含み、前記コマンドに応答して、前記送出優先データバンドルの前記優先順位をエスカレートさせるための１組の命令とを含み、
前記オペレーティングシステムは、メディアを取り扱うアプリケーションプログラミングインターフェースを含む複数のレイヤを含み、
前記送出優先データバンドルは、前記メディアセッションのためのものであり、
前記他のデータは、前記オペレーティングシステム上で実行される汎用アプリケーションに対応し、前記汎用アプリケーションは、前記メディアアプリケーションと同時に実行され、前記送出優先データバンドルの送信が前記汎用アプリケーションの前記他のデータによって中断されないコンピュータ読み取り可能記憶媒体。
【発明の詳細な説明】
【発明の背景】
【０００１】
１．発明の分野
本発明は、ワイヤレス通信システムに関する。さらに詳細に述べると、本発明は、ワイヤレス通信デバイスのコンピュータプラットフォーム上に常駐しているアプリケーションのメディアの取り扱いをエスカレートするための方法とワイヤレス通信デバイスとに関する。
【０００２】
２．関連技術の説明
セルラ電話機や、ＰＤＡや、小型ラップトップや、高性能のページャのような現代のワイヤレス通信デバイスは、一般的に、既存のセルラ電話ネットワークを通して電話通話をブリッジして、ネットワークを通してデータパケットを渡すことによって長距離にわたって通信する。これらのワイヤレスデバイスは、重要なデータ処理および計算能力に制限されることが多く、これに応じて、電話ネットワークを通して、音声に加えてソフトウェアプログラムを送信および受信し、高度なコンピュータ機能を実行できる。
【０００３】
これらのワイヤレス通信デバイスのいくつかは、１つ以上のソフトウェアレイヤまたはオブジェクトを持つ常駐オペレーティングシステムを有するコンピュータプラットフォームを備え、１つ以上のソフトウェアレイヤまたはオブジェクトは、コンピュータプラットフォーム上で実行しているアクティブなプログラムと対話する。ワイヤレスデバイスコンピュータプラットフォーム上の、進歩した、マルチレイヤードオペレーティングシステムの使用に伴う１つの問題は、さまざまなアプリケーション間でアプリケーションを実行したりデータを渡したりする際に、著しい遅延があり得ることである。この遅延は、コンピュータプラットフォーム上での、時間的な感度があるデータの取り扱いを妨げ、通信を中断させることがある。
【０００４】
クイックな１対１通信または１対多数通信を提供するワイヤレス電気通信サービスが存在しており、一般的に、このサービスを「プッシュ・ツー・トーク」（ＰＴＴ）能力と呼ぶ。一般的に、ワイヤレスデバイスを通信するための受信側のデバイスの特定のＰＴＴグループは、キャリアによってセットアップされる。一般的に、ＰＴＴ通信接続は、話し手と、グループのそれぞれのメンバーデバイスとの間の半二重リンクをアクティブ化する、ワイヤレスデバイス上の単一のボタンの押下によって開始され、そして、一度ボタンが離されると、デバイスは、到来ＰＴＴ送信を受信することができる。いくつかの構成では、ＰＴＴの話し手は、話し手が話している間、他のグループメンバーは誰も話すことができない「発言権」を持つだろう。いったん、その話し手がＰＴＴボタンを離すと、そのグループの他の何らかの個々のメンバーは、メンバー自身のＰＴＴボタンを押すことができ、発言権を持つだろう。
【０００５】
特にＰＴＴ通信に関しては、音声パケットの特定の取り扱いは、デバイスからの送信のためのキューにより行われることが多く、オペレーティングシステムの汎用的な常駐アプリケーションが、キューへの、および、キューからのメディアパケットの転送を取り扱う。汎用アプリケーションは、フレームをボコーダと交換するために別のアプリケーションを呼び出し、そして、ＰＴＴ通信のリアルタイムでない送信を補償するためにフレームを待ち行列に入れる。この遅延により、送出音声「トークスパート」において「ジッター」が生じることがある。
【０００６】
したがって、常駐オペレーティングシステムのすべてのレイヤを呼び出さずに、そのコンピュータプラットフォームからの、例えばＰＴＴ通信等の、非常に時間的な感度がある優先データの取り扱いをエスカレートできるワイヤレスコンピュータデバイスを提供することが有益である。メディアのような、優先データの取り扱いのエスカレーションは、ワイヤレス通信デバイスの他のリソースを損なわずに達成すべきである。したがって、本発明は、主に、優先データの動的なエスカレーションをこのようなワイヤレス通信デバイスに提供することに向けられている。
【発明の概要】
【０００７】
簡単に記述すると、本発明は、メディアを含む優先データバンドルを、アプリケーションプログラミングインターフェースからワイヤレス通信インターフェースに直接渡すことによって、常駐コンピュータプラットフォームオペレーティングシステム上でのメディア送信の取り扱いを動的にエスカレートするワイヤレス通信デバイスである。ＰＴＴ音声および他のグループ通信のような、メディアを含む優先データバンドルを利用するアプリケーションプログラミングインターフェースにとって、データの取り扱いおよび送信は、通信の連続性のために非常に重要であり、メディアハンドラが、オペレーティングシステムの他のソフトウェアレイヤによる送出優先データバンドルの取り扱いなしで、送信のために、送出優先データバンドルをワイヤレス通信インターフェースに直接的に向ける。１つの実施形態では、アプリケーションプログラミングインターフェースに送られている、ワイヤレス通信インターフェースにおいて受信された到来データバンドルで、同じ優先順位の取り扱いを実行することができる。
【０００８】
１つの実施形態では、ワイヤレス通信デバイスは、メディアを取り扱い、メディアを含む送出優先データバンドルを発生させるように構成されているアプリケーションプログラミングインターフェースを含む複数のレイヤを持つオペレーティングシステムを備えているコンピュータプラットフォームを有する。デバイスはまた、ワイヤレス通信インターフェースを有し、複数のレイヤのうちの１つよりも多いレイヤは、アプリケーションプログラミングインターフェースから、ワイヤレス通信インターフェースに送信されるメディアを取り扱うように構成されている。デバイスは、オペレーティングシステムの他のソフトウェアレイヤによる送出優先データバンドルの取り扱いなしで、送出優先データバンドルを、アプリケーションプログラミングインターフェースからワイヤレス通信インターフェースに直接的に送ることによって、メディア送信の取り扱いを動的にエスカレートするメディアハンドラを備えており、このメディアハンドラは、時間に感度のあるデータの取り扱いおよび処理に有益である。
【０００９】
１つの実施形態では、オペレーティングシステムとワイヤレス通信インターフェースとを有するコンピュータプラットフォームを備えるワイヤレス通信デバイス上での、メディア送信の取り扱いを動的にエスカレートする方法は、アプリケーションプログラミングインターフェースにおいて、メディアを含む送出優先データバンドルを発生させるステップと、オペレーティングシステムの他のソフトウェアレイヤによる送出優先データバンドルの取り扱いなしで、送出優先データバンドルをワイヤレス通信インターフェースに直接的に送るステップと、送出優先データバンドルをワイヤレス通信インターフェースから送信するステップとを含み、オペレーティングシステムは、メディアを取り扱うアプリケーションプログラミングインターフェースを含む複数のレイヤを含み、複数のレイヤのうちの１つよりも多いレイヤは、アプリケーションプログラミングインターフェースからワイヤレス通信インターフェースに送信されるメディアを取り扱うように構成されている。
【００１０】
したがって、本ワイヤレス通信デバイスは、常駐ソフトウェアのさまざまなレイヤを呼び出すことによる潜在的な遅延なしに、優先データの取り扱いを促進できる点で有益である。このワイヤレス通信デバイスにより、取り扱われるデータパケットにおけるデータの簡単な修正によってＰＴＴ通信セットアップできる。このような方法で、このワイヤレス通信デバイスは、他のデバイス機能に対するリソースを不当に損なわずに、通話の送信および／または受信を促進する。
【００１１】
本発明の他の目的や、機能や、利点は、図面の簡単な説明や、本発明の詳細な説明や、特許請求の範囲のレビューの後に明らかになるだろう。
【図面の簡単な説明】
【００１２】
【図１】図１は、ワイヤレスネットワークを通して、グループ通信サーバおよび他のコンピュータデバイスと通信しているワイヤレス電気通信デバイスの指定されたＰＴＴグループを持つワイヤレスネットワークの代表的な図である。
【図２】図２は、ＰＴＴグループメンバーのワイヤレス電気通信デバイス間の通話をグループ通信サーバに制御させる、一般的なセルラ電気通信構成中のワイヤレスネットワークの１つの実施形態の代表的な図である。
【図３】図３は、ＰＴＴ機能を持つワイヤレス通信デバイスのコンピュータプラットフォームを図示している代表的なブロック図である。
【図４】図４は、ワイヤレス通信デバイスのコンピュータプラットフォーム上に常駐しているさまざまなレイヤの１つの実施形態のブロック図である。
【図５】図５は、ＢＲＥＷ（登録商標）オペレーティングシステムのＱｃｈａｔ（登録商標）アーキテクチャに存在しているいくつかのコンポーネントの１つの実施形態のブロック図である。
【図６】図６は、ワイヤレスインターフェースと対話しているＱｃｈａｔクライアントおよび拡張機能の１つの実施形態のブロック図である。
【図７】図７は、優先データバンドルをワイヤレス通信インターフェースに送るための、直接的なルートによりプロビジョナルアプリケーションを実現するＱｃｈａｔクライアントの１つの実施形態のブロック図である。
【図８】図８は、メディア送信をエスカレートするためのアーキテクチャの１つの実施形態のブロック図である。
【図９】図９は、メディア拡張機能ＡＰＩの１つの実施形態のためのデータフロー図である。
【図１０】図１０は、ワイヤレスインターフェースリンクをＡＰＩに選択的に割り当てるメディアハンドラに対するプロセスの１つの実施形態のフローチャートである。
【詳細な説明】
【００１３】
この説明では、「通信デバイス」や、「ワイヤレスデバイス」や、「ワイヤレス通話デバイス」や、「ＰＴＴ通信デバイス」や、「ハンドヘルドデバイス」や、「移動体デバイス」や、「ハンドセット」という用語は、互換性があるように使用されることが多い。「通話」および「通信」という用語もまた、互換性があるように使用される。ここで使用するような「アプリケーション」という用語は、実行可能および非実行可能ソフトウェアファイルや、生データや、集約データや、パッチや、他のコードセグメントを含むことを意図している。「例示的な」という用語は、開示したエレメントまたは実施形態は例示にすぎず、ユーザの任意の選択を示すものではないことを意味している。さらに、同じ番号はいくつかの図面を通して同じエレメントに関連しており、説明において特定しない限り、冠詞「ａ」および「ｔｈｅ」は複数形の参照を含む。
【００１４】
全体を通して、同じ番号が同じエレメントを表している図面を参照すると、図１は、ワイヤレス電話機１４や、スマートページャ１６や、パーソナルデジタルアシスタント（ＰＤＡ）１８のような、ＰＴＴグループ１２中の１つ以上のワイヤレス電気通信デバイスに対するグループ通信サーバ３２と、ワイヤレスネットワーク２０を通して、他のワイヤレス電気通信デバイスとを持つシステム１０の１つの実施形態を図示している。システム１０では、それぞれのワイヤレス電気通信デバイス１４、１６、１８は、ワイヤレス通信ネットワーク２０を通して、複数のうちの１つ以上の他のワイヤレス電気通信デバイスのターゲットセットと選択的に直接的に通信することが可能である。例えば、移動体電話機１４に対するターゲットセットは、ページャ１６やＰＤＡ１８のような、通信グループ１２中のすべてのデバイス、または、それらのサブセットとすることができる。
【００１５】
この実施形態において、ワイヤレスネットワーク２０上にワイヤレスデバイスが存在すること、すなわち、アクセス可能であることを示すために、サーバサイドＬＡＮ３０上に存在し、サーバ３２としてここに示される、少なくともグループ通信コンピュータデバイスに対して、ワイヤレスネットワーク２０を通して、（移動体電話機１４のような）ワイヤレス電気通信デバイスがフラグを送る。グループ通信コンピュータデバイス３２は、第１のワイヤレス電気通信デバイスにより指定された１セットのターゲットワイヤレス電気通信デバイスとこの情報を共有することができ、あるいは、サーバサイドＬＡＮ３０上に常駐している、または、ワイヤレスネットワーク２０を通してアクセス可能な、他のコンピュータデバイスともこれを共有することもできる。グループ通信コンピュータデバイス３２は、ワイヤレスデバイスに対するグループ識別データを記憶するための、付加された、または、アクセス可能なデータベース３４を有することができる。サーバサイドＬＡＮ３０上に、あるいは、ワイヤレスネットワーク２０を通して、または、一般的にインターネットを通して、常駐しているコンピュータコンポーネントの数は、制限されないことを正しく認識すべきである。
【００１６】
ＰＴＴ通信のような直接通信は、通信ワイヤレス電気通信デバイス１４、１６、１８と、ターゲットセットの１つ以上の他のワイヤレス電気通信デバイスと間で、半二重チャネルを通して確立させることができる。また、ターゲットセットのワイヤレス電気通信デバイスのうちの少なくとも１つが、グループ通信コンピュータデバイス３２に対して、ワイヤレスネットワーク２０上でのそれらの存在を知らせている場合、グループ通信コンピュータデバイス３２は、ターゲットセットとの要求された直接通信をブリッジしようとすることができる。
【００１７】
ターゲットセットのどの（または少なくとも１つの）ワイヤレス電気通信デバイスも、グループ通信コンピュータデバイス３２に対して、ワイヤレスネットワーク２０上でのそれらの存在を知らせていないときに、グループ通信コンピュータデバイス３２は、ワイヤレス電気通信デバイス１４、１６、１８に対して、ターゲットセット１２に対する直接通信をブリッジすることができないことを知らせることもできる。さらに、ここでは、グループ通信コンピュータデバイス３２は、グループ識別データの付加されたデータベース３４を有していると示されているが、グループ通信コンピュータデバイス３２は、その上に存在するグループ識別データを有することができ、ここで記述したすべての記憶機能を実施することができる。
【００１８】
グループ通信は、音声や、アプリケーションや、ＪＰＥＧや、ＴＩＦや、これらに類するものにおけるピクチャのようなグラフィックメディア、または、ＭＰ３や、ＭＰ４や、ＷＡＶや、これらに類するもののようなオーディオファイルとすることができる。メディアは、マルチメディアアプリケーション（パワーポイントや、ＭＯＶファイルや、これらに類するもの）のような、ストリーミングメディアとすることができる。また、グループ通信は、一般的に、通信グループ１２のメンバー間での半二重オーディオ会議である。
【００１９】
図２は、ＰＴＴシステム中のセットグループメンバー（デバイス７０、７２、７４、７６）のワイヤレス通信デバイス間の通信を制御する、一連のグループ通信コンピュータデバイス（グループ通信サーバ）３２を有する、一般的なセルラ電気通信構成中のワイヤレスネットワークの１つの実施形態の代表的な図である。ワイヤレスネットワークは単なる例示にすぎず、任意のシステムを含むことができ、これにより、遠隔モジュールが、相互間で、ならびに／あるいは、これらに限定されないが、ワイヤレスネットワークキャリアおよび／またはサーバを含む、ワイヤレスネットワーク２０のコンポーネントとの間で無線通信する。一連のグループ通信サーバ３２は、グループ通信サーバＬＡＮ５０と接続されている。ワイヤレス電話機は、データサービスオプションを使用して、グループ通信サーバ３２からのパケットデータセッションを要求することができる。
【００２０】
グループ通信サーバ３２は、キャリアネットワーク５４に存在するようにここでは示されているＰＳＤＮ５２のような、ワイヤレスサービスプロバイダのパケットデータサービスノード（ＰＤＳＮ）と接続されている。それぞれのＰＳＤＮ５２は、パケット制御機能（ＰＣＦ）６２を通して、基地局６０の基地局制御装置６４とインターフェースすることができる。ＰＣＦ６２は、一般的に、基地局６０中に配置される。キャリアネットワーク５４は、（一般的にデータパケットの形態で）メッセージングサービス制御装置（「ＭＳＣ」）５８に送られるメッセージを制御する。キャリアネットワーク３０は、ネットワーク、インターネット、および／またはＰＯＴＳ（「普通の通常電話システム」）により、ＭＳＣ３２と通信する。一般的に、キャリアネットワーク５４とＭＳＣ５８との間のネットワークまたはインターネット接続はデータを転送し、ＰＯＴＳは音声情報を転送する。ＭＳＣ５８は、１つ以上の基地局６０と接続することができる。キャリアネットワークと類似した方法で、ＭＳＣ５８は、一般的に、データ転送のためにネットワークおよび／またはインターネットにより、ならびに、音声情報のためにＰＯＴＳにより、ブランチ・ツー・ソース（ＢＴＳ）６６に接続されている。ＢＴＳ６６は、最終的に、ショートメッセージングサービス（「ＳＭＳ」）または技術的に知られている他の無線による方法により、セルラ電話機７０、７２、７４、７６のようなワイヤレスデバイスにメッセージをワイヤレスにブロードキャストし、および、ワイヤレスデバイスからワイヤレスにメッセージを受信する。キャリア境界および／またはＰＴＴオペレータネットワーク境界は、ここに記述したような、データの共有を抑制または禁止しないことにも留意すべきである。
【００２１】
ワイヤレス電話機１４のようなセルラ電話機および移動体電気通信デバイスは、向上したコンピュータ処理能力を備えるように製造されており、パーソナルコンピュータおよびハンドヘルドＰＤＡと同等になってきている。これらの「スマート」セルラ電話機により、ソフトウェアデベロッパが、ワイヤレスデバイスのプロセッサ上にダウンロード可能およびワイヤレスデバイスのプロセッサ上で実行可能なソフトウェアアプリケーションを生成できるようになる。セルラ電話機１４のようなワイヤレスデバイスは、ウェブページや、アプレットや、ＭＩＤレットや、ゲームや、データのような、多くのタイプのアプリケーションをダウンロードすることができる。通信グループ１２が指定されているワイヤレスデバイス（図１）では、ワイヤレス通信デバイスは、セットの他のメンバーと直接的に接続し、音声およびデータ通信にかかわることができる。しかしながら、このようなすべての直接的な通信は、グループ通信サーバ３２を通して、すなわち、グループ通信サーバ３２の制御のもとで生じるだろう。必ずしも、デバイスのすべてのデータパケットが、グループ通信コンピュータデバイス３２自体を通して移動する必要はないが、グループ通信コンピュータデバイス３２は、最終的に通信を制御することが可能でなければならない。その理由は、一般的に、グループ通信コンピュータデバイス３２が、通信グループのメンバーの識別子を認識するおよび／または検索できる、あるいは、通信グループ１２のメンバーの識別子を別のコンピュータデバイスに向ける、唯一のサーバサイド３０のコンポーネントであるからである。
【００２２】
図３は、デバイスのターゲットセット、すなわち、通信グループ１２の他のメンバーへの直接通信を開くＰＴＴボタン７８を持つ移動体電話機１４であるワイヤレス電気通信デバイスの１つの実施形態を図示しているブロック図である。ワイヤレスデバイス１４は、ワイヤレスデバイス１４のユーザに対するグラフィックディスプレイ８０を備えているようにも示されている。ワイヤレスデバイス１４は、コンピュータプラットフォーム８２を備えており、コンピュータプラットフォーム８２は、音声およびデータパケットを取り扱い、グループ通信を備えるために、ワイヤレスネットワーク２０を通して送信されたソフトウェアアプリケーションを受信および実行することができる。コンピュータプラットフォーム８２は、他のコンポーネントの中でも、とりわけ、特定用途向け集積回路（「ＡＳＩＣ」）８４、または、他のプロセッサ、マイクロプロセッサ、論理回路、プログラマブルゲートアレイ、または、他のデータ処理デバイスを含んでいる。ＡＳＩＣ８４は、ワイヤレスデバイスの製造のときにインストールされ、通常、アップグレード可能ではない。ＡＳＩＣ８４または他のプロセッサは、常駐するアプリケーション環境を含むアプリケーションプログラミングインターフェース（「ＡＰＩ」）レイヤ８６を実行したり、ＡＳＩＣ８４上にロードされたオペレーティングシステムを含むことができる。常駐するアプリケーション環境は、ワイヤレスデバイスのメモリ８８中の、任意の常駐プログラムとインターフェースする。常駐するアプリケーション環境の例は、ＱＵＡＬＣＯＭＭ（登録商標）により、ワイヤレスデバイスプラットフォーム向けに開発された「ワイヤレス向けのバイナリ実行時環境」（ＢＲＥＷ）（登録商標）ソフトウェアである。
【００２３】
ここで示したように、ワイヤレスデバイスはグラフィックディスプレイ８０を備えた移動体電話機１４とすることができるが、例えば、パーソナルデジタルアシスタント（ＰＤＡ）や、グラフィックディスプレイ８０を持つページャ等の、技術的に知られているようなコンピュータプラットフォーム８２を備えた何らかのワイヤレスデバイスとすることができ、または、ワイヤレス通信ポータルを有する、そうでなければネットワークまたはインターネットへのワイヤード接続を有してもよい独立したコンピュータプラットフォーム８２でさえあってもよい。さらに、メモリ８８は、リードオンリーメモリまたはランダムアクセスメモリ（ＲＡＭおよびＲＯＭ）、ＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュカード（登録商標）、またはコンピュータプラットフォームに共通な何らかのメモリを含むことができる。コンピュータプラットフォーム８２は、メモリ８８中でアクティブに使用されていないソフトウェアアプリケーションの記憶のために、ローカルデータベース９０も備えることができる。ローカルデータベース９０は、一般的に、１つ以上のフラッシュメモリセルから構成されるが、磁気媒体、ＥＰＲＯＭ、ＥＥＰＲＯＭ、光媒体、テープ、あるいは、ソフトまたはハードディスクのような、技術的に知られているような、任意の二次、三次の記憶デバイスとすることができる。
【００２４】
ワイヤレスデバイスのこの実施形態において、コンピュータプラットフォーム８２はまた、一般的に、ＰＴＴ通話における半二重音声通信のために、ワイヤレスデバイスから直接通信チャネルを開くことができるワイヤレス通信インターフェース９２を備えている。ワイヤレス通信インターフェース９２はまた、通常、ワイヤレスデバイスへ、または、ワイヤレスデバイスから送信される音声およびデータを伝える、ワイヤレスデバイスに対する標準通信インターフェースの一部とすることもできる。ワイヤレス通信インターフェース９２は、一般的に、技術的に知られているようなハードウェアから構成されている。
【００２５】
図４は、ＰＴＴ機能およびグループ向け通信機能を有している、ワイヤレス通信デバイス１４のコンピュータプラットフォーム８２上に常駐しているソフトウェアレイヤの１つの実施形態の図である。この実施形態では、移動体デバイス環境におけるコンピュータプラットフォーム８２は、ＱＵＡＬＯＣＯＭＭによって開発された、移動局モデム（ＭＳＭ）１００やアドバンスド移動体加入者ソフトウェア（ＡＭＳＳ）１０２とともに開発された一連のソフトウェア「レイヤ」からなり、基礎となっているＭＳＭチップセットを駆動させ、ＣＤＭＡ２０００ １ＸおよびＣＤＭＡ２０００ １ｘＥＶ−ＤＯを含むＣＤＭＡ通信技術の完全なスイート用のソフトウェアプロトコルスタックを実現する。移動体オペレーティングシステムレイヤ１０４があるが、この移動体オペレーティングシステムレイヤ１０４は、この実施形態ではＢＲＥＷであり、これもまたＱＵＡＬＣＯＭＭによって開発されたものである。移動体オペレーティングシステムレイヤ１０４は、コンピュータプラットフォーム上のＡＭＳＳ１００および任意のＯＥＭソフトウェアへの直接的なコンタクトをなくす分離レイヤを提供しつつ、チップまたはデバイス特有の動作のためのアプリケーションプログラミングインターフェースを提供する。移動体オペレーティングシステムレイヤ１０４は、新しいリリースのデバイス特有ソフトウェアがリリースされるたびにアプリケーションを書き換える必要なく、移動体デバイス機能を使用するアプリケーション開発を可能にする。
【００２６】
ＰＴＴクライアント１０８は、外部インターフェースを通して、ＰＴＴサービスへのアクセスを提供するアプリケーションであり、ここでは、この外部インターフェースをＰＴＴ−ａｗａｒｅ ＵＩ１０６と示した。ＰＴＴクライアントは、他のＰＴＴアプリケーション１１０のような、移動体オペレーティングシステム１０４のアプリケーションを使用可能にするために必要とされるすべての機能を備えている。ＰＴＴサービスに対するアクセスをＰＴＴクライント１０８に提供することに加えて、ＰＴＴクライアント１０８は、すべてのＰＴＴ−ａｗａｒｅアプリケーションとグループ通信コンピュータデバイス１０２に対するインターフェースとの間の分離レイヤとして機能することができる。この実施形態では、ＰＴＴクライアント１０８は、ＰＴＴサービスに対するアクセスを維持し、グループ通信要求に応答し、ＰＴＴサービスに対するすべてのＰＴＴ−ａｗａｒｅ移動体オペレーティングシステムアプリケーション要求を処理し、すべての送出ＰＴＴ要求を処理し、ＰＴＴトークスパートを始めるためにボコーダパケットを収集してパッケージ化し、終了したＰＴＴトークスパートに対するボコーダデータのパケットをパーズする。
【００２７】
１つの実施形態では、メディアハンドラが、外部通信インターフェース、すなわち、ここでは、ＡＭＳＳ１０２インターフェースへの直接的なアクセスを提供するだろう。メディアハンドラは、他の常駐ＰＴＴおよびグループメディアアプリケーション１１０からのＡＰＩのような適切なＡＰＩを呼び出すことによって、グループ向けのサービスに対するＰＴＴ要求に応答し、ユーザからの要求をサービスでき、何らかのグループ向けメディア要求の結果をユーザに知らせる。
【００２８】
図５は、ＱＵＡＬＣＯＭＭのＢＲＥＷオペレーティングシステムのＱｃｈａｔアーキテクチャに存在しているいくつかのコンポーネントの１つの実施形態のブロック図である。ここで、ＢＲＥＷオペレーティングシステム１２０は、ＩＶＯＣＯＤＥＲ１２８（ボコーダ使用）；ＩＳＯＵＮＤ１２６（オーディオ使用）；（通信のためにソケットを提供する）ＩＳＯＣＫＥＴ１２４およびＩＮＥＴＭＧＲ１２２（インターネット機能性）を含む、いくつかのコンポーネントを備えている。Ｑｃｈａｔレイヤ（ＱＣＣプレフィックス）は、ここではＰＴＴ機能性を備えており、ソケット接続のためのサービスを提供するソケット１３４；アクセスポイントをネットワークに提供する、そしてネットワークについての情報を提供するＮｅｔＡｃｃｅｓｓ１３０；Ｓｏｕｎｄ１３８；送出メディアパケットをバンドルしたり、到来メディアパケットをアンバンドルしたり、ＲＴＰヘッダ情報を加えたり、取り除いたりするＭｅｄｉａ Ｐｉｐｅ１４２；ＶｏｉｃｅＢｕｆｆｅｒ１４０、のコンポーネントを備えている。
【００２９】
特に、Ｖｏｃｏｄｅｒ関連メディアコンポーネントは、フレームデータをメディアパケットから抽出するＭｅｄｉａＰｉｐｅ１４２とともに機能し、サウンドパスをミュートにしたり、サウンドパスのミュートを解除したりし、トークスパート特有情報を追跡し、ステータスをＭｅｄｉａＭｇｒ１４４に提供する。Ｓｏｕｎｄ１２６コンポーネントは、サウンドパスにアクセスしたり、サウンドパスを構成したりするための、そのユーティリティクラスである。音声バッファ１４０は、個々のフレームに対して送信および戻りバッファを維持し、ＲＴＰシーケンス番号とインターリービング情報とに基づいて、受信したフレームをソートし、メディア送信のために、フレームをインターリーブされた場所に分散させる。音声バッファはまた、ＩＶｏｃｏｄｅｒ１２８を開始および停止させ、これは、バッファの深さおよび透かしを監視することを含む。
【００３０】
図６は、ワイヤレスインターフェースと対話する、Ｑｃｈａｔクライアントおよび拡張機能の１つの実施形態のブロック図である。ここでは、Ｑｃｈａｔクライアント１５０と、ＭｅｄｉａＭｇｒおよびＭｅｄｉａＥｘｔＭｇｒ１５２とが、ＡＭＳＳデータサービスレイヤおよびボコーダＤＳＰと直接的に対話している。同時実行ＢＲＥＷアプリケーションがＣＰＵを占有したり、音声プレイアウトをストールしたりするかもしれないときに、ワイヤレス通信デバイス１４、１６、１８は、ＣＰＵによってＱｃｈａｔメディアの取り扱いに優先順位を付ける。例えば、このような状況は、ユーザがゲームをしている時やＰＴＴ通話を行う時に生じるかもしれない。生フレームおよびメディアパケットの交換は、汎用ＵＩタスクよりも、より高い優先順位のタスクで、実質的にリアルタイムで行われるだろう。ＡＭＳＳコンポーネント１５４では、ＭＶＳ（マルチモード音声サービス）１５８およびＤＳ（データサービス）１５６インターフェースが存在している。
【００３１】
この実施形態では、メディア取り扱いをエスカレートするために、「メディア拡張機能」を使用する。ＩＭｅｄＥｘｔ静的拡張インターフェースＡＰｌが、ＯＳ上の一般的なメディア取り扱い機能性を取り替える。ここでは、エスカレーションを支援するために、他のメディア拡張インターフェースＡＰＩが使用される。例えば：構成セッションＡＰｌ：これらすべてのものがメディアセッションを構成する、ＯｐｅｎＳｅｓｓｉｏｎ、ＳｔａｒｔＶｏｃｏｄｅｒ、ＳｅｔＲｅｍｏｔｅｉｎｆｏ、Ｃｌｏｓｅｓｓｉｏｎ Ｉｎｆｏや、；Ｓｐｅａｋｉｎｇ Ｍｏｄｅ ＡＰｌ：トークスパートをエスカレートすることを可能にするであろう、Ｓｔａｒｔｓｐｅａｋｉｎｇ、ＤｏｎｅＳｐｅａｋｉｎｇや；Ｌｉｓｔｅｎｉｎｇ Ｍｏｄｅ ＡＰｌ：到来送信のエスカレーションを可能にするであろう、ＳｅｔＬｉｓｔｅｎｉｎｇ、ＳｅｔＭｕｔｉｎｇや；Ｒｅｇｉｓｔｅｒｉｎｇ Ｃａｌｌｂａｃｋ ＡＰＩ：呼び出し側情報を示すであろうＲｅｇｉｓｔｅｒＶｏｉｃｅＳｔａｔｕｓＣＢや；Ｐｒｏｖｉｓｉｏｎｉｎｇ ＡＰＩ：送信の終了であるときを他のデバイスに伝えるだろうＳｅｔＮｗＷａｔｅｒＭａｒｋ等である。
【００３２】
図７は、優先データバンドルをワイヤレス通信インターフェースに送るために、直接的なルートでプロビジョナルアプリケーション１７４を実現するＱｃｈａｔクライアント１７０の１つの実施形態のブロック図である。ここで、メディア拡張機能プロビジョニング可能なアイテムは、２つのカテゴリーに分けられる：プロビジョナルＡＰＩを通してセットされるもの、例えば、Ｄｅｊｉｔｔｅｒバッファサイズや、プレイアウト側待ちタイマー期間であり、ここで、ＱＣＨＡＴクライアント１７０がプロビジョナルアプリケーションをメディアハンドラとして使用し、これは、プロビジョナルアプリケーションは、適切なファイル拡張子をメディアに設定するだろう。第２のカテゴリーは、．ｄａｔ ｆｉｌｅにより内的にセットされるこれらのアイテム、例えば、音声バッファサイズである。ここでは、Ｑｃｈａｔクライアント１５０と、ＭｅｄｉａＭｇｒおよびＭｅｄｉａＥｘｔＭｇｒ１５２とが、メディア拡張機能１７６と直接的に対話し、ここで、メディア拡張機能１７６が、適切な．ｄａｔ ｆｉｌｅを、エスカレートされたメディアに追加するだろう。
【００３３】
図８は、メディア送信をエスカレートするためのアーキテクチャの１つの実施形態に関するブロック図である。この実施形態では、ＩＭｅｄＥｘｔインターフェース２００は、ＯＥＭレイヤ中に位置している。ＱＣＣ ＭｅｄｉａＥｘｔＭｇｒ１９２は、ＭｅｄｉａＭｇｒ１９０、および、ＢＲＥＷ１９４のＩＭｅｄＥｘｔ２００コンポーネントと対話しているＱＣｈａｔクライアントに加えられる新しいオブジェクトである。メディア拡張機能は、ソケット２９８や、ＩＶｏｃｏｄｅｒ（図５では１２８）インターフェースと代替的に、ＤＳおよびＭＶＳ ＡＰｌを使用する。メディアのパック化およびアンパック化は、ＡＭＳＳ２０４中のデータサービス（ＤＳ）２０６タスクの状況で実行し、これは、常駐ＤＳＰ（デジタル信号処理）２０８も利用する。優先順位付けは、トークスパートベースで、または、通話ベースでエスカレートすることができ、他のローカル性能解析にしたがうこともできる。動作では、ＩＭｅｄＥｘｔ２００ＡＰＩは、コマンドをＤＳ２０６タスクに通知し、ＤＳタスクは、新しいコマンドを処理するように、その優先順位を、ＵＩタスクよりも高い値に切り替える。送信側では、ボコーダタスクによって、入力スピーチを２０ｍｓフレームベースで処理して、音声パケットを発生させ、ＤＳ２０６タスクが、音声パケットをＲＴＰヘッダとバンドルし、ＲＴＰパケットを転送する。受信側では、イベントの通知の後、ＤＳタスクが、到来パケットを処理し、ＲＴＰヘッダをペイロードから抽出して、ペイロードをボコーダタスクに転送し、ボコーダタスクは、スピーチフレームをデコードしてプレイアウトする。
【００３４】
図９は、メディア拡張機能ＡＰＩの１つの実施形態に対するデータフロー図である。メディア拡張機能２２０ＡＰｌは、ＵＩタスク中に存在している。すべてのコマンドは、ＵＩタスクを通して通知され、メディアおよび生フレームが、ＵＩタスクに気付かれないＤＳタスクおよびボコーダタスクのレベルで交換される。フレームをＤＳＰと交換（ステップ２２２）し、メディア拡張機能ＡＰＩ２２６によりメディアバンドルをパッケージ化する、および、アンパッケージ化する２２４。この実施形態では、Ｑｃｈａｔクライアント２２８が、開始および停止ＡＰＩを、メディアのエスカレーションを達成するメディア拡張機能ＡＰＩ２２６に送る。この実施形態では、データの取り扱いを促進するためのいくつかのＡＭＳＳ ＡＰＩが存在する：
ＤＳ（図５では１５６）ＡＰｌ：
ＡＰＩ：                      機能
ｄｓｓ＿ｓｏｃｋｅｔ        ソケットを開く
ｄｓｓ＿ｂｉｎｄ            ソケットをバインドする
ｄｓｓ＿ｓｅｎｄｔｏ        ソケットを通してＵＤＰパケットを送る
ｄｓｓ＿ｒｅｃｖｆｒｏｍ    ソケットを通してＵＤＰパケットを受け取る
ｄｓｓ＿ｃｌｏｓｅ          ソケットを閉じる
ＭＶＳ（図５では１５８）ＡＰｌ：
ＡＰＩ：                    機能：
ｍｖｓ＿ａｃｑｕｉｒｅ      デバイス使用のためにＭＶＳを取得
ｍｖｓ＿ｓｔａｎｄｂｙ      使用のために指定されたボコーダを準備して、Ｍｖｓ−ｅｎａｂｌｅ（）を待つ
ｍｖｓ＿ｅｎａｂｌｅ        指定されたボコーダモードによりパケットをクライアントが転送できるようにする
ｍｖｓ＿ｌｉｓｔｅｎ        クライアントがパケットを聞くことが可能になる
ｍｖｓ＿ｒｅｌｅａｓｅ      他のものが使用するためにＭＶＳをリリース
ｍｖｓ＿ｍｏｄｅ−ｓｕｐｐｏｒｔｅｄ  要求されたモードがサポートされているか否かを返す
【００３５】
メディアエスカレーションのさまざまな実施形態の使用により、メディアバンドルを取り扱うさまざまなレイヤから、１２０ｍｓのボコーダインターフェース遅延を最適になくすことができる。さらに、優先メディアがエスカレートされることから、Ｑｃｈａｔが複数のアプリケーションと同時に実行しているときの性能向上が実現されるだろう。また、コンピュータプラットフォーム８２上に常駐している他のアプリケーションは、ＩＭｅｄＥｘｔ ＡＰｌを呼び出し、動的または静的アプリケーション上で、独立して、Ｍｅｄｉａ拡張機能を使用することができる。
【００３６】
図１０は、ワイヤレスインターフェースリンクをＡＰＩに選択的に割り当てるメディアハンドラに対するプロセスの１つの実施形態のフローチャートである。ステップ２４０において示したように、メディアハンドラは、データバンドルを送信するための要求をＡＰＩから受け取って、決定２４２で示したように、データバンドルが、エスカレーションを要求する優先データバンドルとなるであろうか否かについての決定を行う。データバンドルのエスカレートされた送信が必要である場合、ステップ２４４において示したように、例えば、優先ファイル拡張子を追加すること等によって、送信のために、データバンドルをワイヤレスインターフェースに送る。そうでなく、データバンドルが決定２４２におけるデータバンドルにならない場合、データバンドルは、予め規定されたプロセス２４６において示したように、通常の取り扱いのために（ＢＲＥＷのような）ＯＳに渡される。
【００３７】
概略すると、ワイヤレス通信デバイス１４、１６、１８は、オペレーティングシステム１０４を有するコンピュータプラットフォーム８２を備えており、オペレーティングシステム１０４は、メディアを取り扱い、メディアを含む送出優先データバンドルを発生させるように構成されているアプリケーションプログラミングインターフェースを含む複数のレイヤを含む。ワイヤレス通信インターフェース９２もまた、ここに存在しており、これらと通信しており、複数のレイヤのうちの１つよりも多いレイヤは、アプリケーションプログラミングインターフェースからワイヤレス通信インターフェース９２に送信されるメディアを取り扱うように構成されている。（図７中のメディア拡張機能１７６、または、図９中のメディア拡張機能２２０のような）メディアハンドラが、オペレーティングシステムの他のソフトウェアレイヤによる送出優先データバンドルの取り扱いなしで、送出優先データバンドルを、アプリケーションプログラミングインターフェースからワイヤレス通信インターフェース９２に直接的に送ることによって、メディア送信の取り扱いを動的にエスカレートするように構成されている。
【００３８】
メディアハンドラは、予め定められている通信グループ１２における他のワイヤレス通信デバイス１４、１６、１８に対して、送出グループ通信を発生させるようにさらに構成することができ、このようなグループ通信は、トークスパートとすることができる。１つの実施形態では、メディアハンドラが、そこから送られるメディアのために、ポートをアプリケーションプログラミングインターフェースに割り当てる、あるいは代替的に、エスカレートされる送信のために、ソケットを割り当てることができる。アプリケーションプログラミングインターフェースは、別のアプリケーションプログラミングインターフェースに対するワイヤレス通信インターフェースの制御を選択的に生じさせることができ、メディアハンドラは、どのＡＰＩを優先すべきか優先順位を付けることができる。メディアハンドラは、オペレーティングシステムの他のソフトウェアレイヤによる到来データバンドルの取り扱いなしで、ワイヤレス通信インターフェースにおける到来データバンドルをアプリケーションプログラミングインターフェースに直接的にさらに送ることができ、これにより、送信の優先的な受信ができる。このように具現化されるとき、バッファを使用して、到来優先送信および送出優先送信の双方とも記憶できることにも留意すべきである。
【００３９】
したがって、ワイヤレスデバイス１４、１６、１８はまた、アプリケーションプログラミングインターフェースにおいて、メディアを含む送出優先データバンドルを発生させるステップと、オペレーティングシステムの他のソフトウェアレイヤによる送出優先データバンドルの取り扱いなしで、送出優先データバンドルをワイヤレス通信インターフェースに直接的に送るステップと、送出優先データバンドルをワイヤレス通信インターフェース９２から送信するステップとを含む、ワイヤレス通信デバイス１４、１６、１８上での、メディア送信の取り扱いを動的にエスカレートするための、発明の方法を提供することが認識できる。送出優先データバンドルの発生は、予め定められた通信グループ１２における他のワイヤレス通信デバイスへの、グループ音声通信におけるトークスパートのような、送出グループ通信を発生させることである。送出優先データバンドルをワイヤレス通信インターフェース９２に直接的に送ることは、そこから送られるメディアのために、ポートをアプリケーションプログラミングインターフェースに割り当てることによって、ソケットをアプリケーションプログラミングインターフェースに割り当てることによって、あるいは、技術的に知られているデータ送信の他の方法によって、達成することができる。
【００４０】
アプリケーションプログラミングインターフェースは、別のアプリケーションプログラミングインターフェースに対するワイヤレス通信インターフェースの制御を選択的に生じさせることができる。メディアハンドラのような、複数のレイヤのうちの１つにおけるオブフェクトは、アプリケーションプログラミングインターフェースをワイヤレス通信インターフェース９２に割り当てることができ、これは、送出データバンドルの送信に優先順位を付ける方法で実行できる。方法はまた、オペレーティングシステム１０４の他のソフトウェアレイヤによる到来データバンドルの取り扱いなしで、ワイヤレス通信インターフェース９２におけるメディアを含む到来データバンドルを、アプリケーションプログラミングインターフェースに直接的に送ることを含むことができる。このように具現化される場合、方法は、送出優先データバンドルをバッファに送り、送出データバンドルをバッファからワイヤレス通信インターフェース９２に送ることを含むことができる。
【００４１】
移動体デバイスおよび他のコンピュータプラットフォーム上で実行可能である方法を考慮して、方法は、それに応じて、コンピュータ読み取り可能媒体中に常駐するプログラムによって実行することができ、プログラムが、コンピュータプラットフォームを有する移動体デバイスまたは他のコンピュータデバイスも対して、方法のステップを実行するように指示する。コンピュータ読み取り可能媒体は、サーバのメモリとすることもでき、または、連結性のデータベース中に存在することもある。さらに、コンピュータ読み取り可能媒体は、例えば、磁気ディスクまたはテープ、光ディスク、ハードディスク、フラッシュメモリ、または技術的に知られているような他の記憶媒体等の、ワイヤレス通信デバイスコンピュータプラットフォーム上にロード可能である二次記憶媒体中に存在することもある。
【００４２】
１つ以上の例示的な実施形態では、記述した機能は、ハードウェア、ソフトウェア、ファームウェア、または、これらの任意の組み合わせで実現されてもよい。ソフトウェアで実現される場合、機能は、１つ以上の命令またはコードとしてコンピュータ読み取り可能媒体上に記憶されてもよく、あるいは、１つ以上の命令またはコードとしてコンピュータ読み取り可能媒体上に送信されてもよい。コンピュータ読み取り可能媒体は、１つの場所から別の場所へのコンピュータプログラムの転送を促進する何らかの媒体を含むコンピュータ記憶媒体および通信媒体の双方を含む。記憶媒体は、コンピュータによってアクセスできる何らかの利用可能な媒体であってもよい。例示によると、このようなコンピュータ読み取り可能媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭまたは他の光ディスク記憶デバイス、磁気ディスク記憶または他の磁気記憶デバイス、あるいは命令またはデータ構成の形態で所望のプログラムコードを伝送または記憶するために使用でき、コンピュータによってアクセスできる他の何らかの媒体を含んでいてもよいが、これらに限定されない。また、あらゆる接続は、コンピュータ読み取り可能媒体と適切に呼ばれている。例えば、ソフトウェアが、ウェブサイト、サーバ、あるいは同軸ケーブルや、光ファイバケーブルや、撚り対や、デジタル加入者線（ＤＳＬ）、あるいは赤外線、無線、マイクロ波のようなワイヤレス技術を使用している他の遠隔ソースから送信された場合、同軸ケーブル、光ファイバケーブル、撚り対、ＤＳＬ、あるいは赤外線、無線、およびマイクロ波のようなワイヤレス技術は、媒体の定義に含まれる。ここで使用したようなディスク（ｄｉｓｋおよびｄｉｓｃ）は、コンパクトディスク（ＣＤ）、レーザディスク、光ディスク、デジタル汎用ディスク（ＤＶＤ）、フロッピー（登録商標）ディスク、ブルーレイ（登録商標）ディスクを含むが、一般的に、ディスク（ｄｉｓｋ）は、データを磁気的に再生する一方で、ディスク（ｄｉｓｃ）はデータをレーザによって光学的に再生する。先のものを組み合わせたものもまた、コンピュータ読み取り可能媒体の範囲内に含められるべきである。
【００４３】
これらの好ましい実施形態に関連して、本発明を詳しく示し、説明しているが、特許請求の範囲に記載したような、本発明の範囲を逸脱することなく、形態におけるさまざまな変更および細部にわたる変更をしてもよいことを、当業者によって理解されるであろう。さらに、本発明のエレメントは単数形で記述され、特許請求の範囲に記載されているが、単数形に対する限定が明示的に示されない限り、複数形を意図している。
以下に、本願出願時の特許請求の範囲に記載された発明を付記する。
［１］オペレーティングシステムとワイヤレス通信インターフェースとを有するコンピュータプラットフォームを備えるワイヤレス通信デバイス上での、メディア送信の取り扱いを動的にエスカレートする方法において、
前記オペレーティングシステムは、メディアを取り扱うアプリケーションプログラミングインターフェースを含む複数のレイヤを含み、
前記複数のレイヤのうちの１つよりも多いレイヤは、前記アプリケーションプログラミングインターフェースから前記ワイヤレス通信インターフェースに送信されるメディアを取り扱うように構成され、
アプリケーションプログラミングインターフェースにおいて、メディアを含む送出優先データバンドルを発生させることと、
前記オペレーティングシステムの他のソフトウェアレイヤによる前記送出優先データバンドルの取り扱いなしで、前記送出優先データバンドルを前記ワイヤレス通信インターフェースに直接的に送ることと、
前記送出優先データバンドルを前記ワイヤレス通信インターフェースから送信することとを含む方法。
［２］前記送出優先データバンドルの発生は、予め定められた通信グループ中の他のワイヤレス通信デバイスへの送出グループ通信を発生させる［１］記載の方法。
［３］前記送出優先データバンドルの発生は、グループ音声通信におけるトークスパートである［２］記載の方法。
［４］前記送出優先データバンドルを前記ワイヤレス通信インターフェースに直接的に送ることは、そこから送られるメディアのために、ポートを前記アプリケーションプログラミングインターフェースに割り当てることによって達成される［１］記載の方法。
［５］前記送出優先データバンドルを前記ワイヤレス通信インターフェースに直接的に送ることは、そこから送られるメディアのために、ソケットを前記アプリケーションプログラミングインターフェースに割り当てることによって達成される［１］記載の方法。
［６］前記アプリケーションプログラミングインターフェースは、別のアプリケーションプログラミングインターフェースに対する前記ワイヤレス通信インターフェースの制御を選択的に生じさせることをさらに含む［１］記載の方法。
［７］前記送出優先データバンドルをバッファに送り、前記送出データバンドルを前記ワイヤレス通信インターフェースに送ることをさらに含む［１］記載の方法。
［８］前記複数のレイヤのうちの１つにおけるオブジェクトが、アプリケーションプログラミングインターフェースを前記ワイヤレス通信インターフェースに割り当てる［１］記載の方法。
［９］前記ワイヤレス通信インターフェースにおける前記送出データバンドルの送信に優先順位を付けることをさらに含む［１］記載の方法。
［１０］前記オペレーティングシステムの他のソフトウェアレイヤによる到来データバンドルの取り扱いなしで、前記ワイヤレス通信インターフェースにおけるメディアを含む前記到来データバンドルをアプリケーションプログラミングインターフェースに直接的に送ることをさらに含む［１］記載の方法。
［１１］ワイヤレス通信デバイスにおいて、
オペレーティングシステムを備えるコンピュータプラットフォームと、
ワイヤレス通信インターフェースと、
前記オペレーティングシステムの他のソフトウェアレイヤによる送出優先データバンドルの取り扱いなしで、送出優先データバンドルを、前記アプリケーションプログラミングインターフェースから前記ワイヤレス通信インターフェースに直接的に送ることによって、メディア送信の取り扱いを動的にエスカレートするように構成されているメディアハンドラとを具備し、
前記オペレーティングシステムは、メディアを取り扱い、メディアを含む送出優先データバンドルを発生させるように構成されているアプリケーションプログラミングインターフェースを含む複数のレイヤを含み、
前記複数のレイヤのうちの１つよりも多いレイヤは、前記アプリケーションプログラミングインターフェースから前記ワイヤレス通信インターフェースに送信されるメディアを取り扱うように構成されているデバイス。
［１２］前記メディアハンドラは、予め定められた通信グループ中の他のワイヤレス通信デバイスへの送出グループ通信を発生させるようにさらに構成されている［１１］記載のデバイス。
［１３］前記メディアハンドラは、送出優先データバンドル中でグループ音声通信におけるトークスパートを発生させるようにさらに構成されている［１２］記載のデバイス。
［１４］前記メディアハンドラは、そこから送られるメディアのために、ポートを前記アプリケーションプログラミングインターフェースに割り当てるようにさらに構成されている［１１］記載のデバイス。
［１５］前記メディアハンドラは、そこから送られるメディアのために、ソケットを前記アプリケーションプログラミングインターフェースに割り当てるように構成されている［１１］記載のデバイス。
［１６］前記少なくとも１つのアプリケーションプログラミングインターフェースは、別のアプリケーションプログラミングインターフェースに対する前記ワイヤレス通信インターフェースの制御を選択的に生じさせる［１１］記載のデバイス。
［１７］前記メディアハンドラは、前記送出優先データバンドルをバッファに送るようにさらに構成されている［１１］記載のデバイス。
［１８］アプリケーションプログラミングインターフェースを前記ワイヤレス通信インターフェースに割り当てるように構成されている前記複数のレイヤのうちの１つにおけるオブジェクトをさらに具備する［１１］記載のデバイス。
［１９］前記メディアハンドラは、前記ワイヤレス通信インターフェースにおける前記送出データバンドルの送信に優先順位を付けるようにさらに構成されている［１１］記載のデバイス。
［２０］前記メディアハンドラは、前記オペレーティングシステムの他のソフトウェアレイヤによる到来データバンドルの取り扱いなしで、前記ワイヤレス通信インターフェースにおける前記到来データバンドルをアプリケーションプログラミングインターフェースに直接的に送るようにさらに構成されている［１１］記載のデバイス。
［２１］ワイヤレス通信デバイスにおいて、
メディアを取り扱い、メディアを含む送出優先データバンドルを発生させるように構成されているアプリケーションプログラミングインターフェースを含む複数のレイヤを含み、前記ワイヤレス通信デバイス上のコンピュータプラットフォームをオペレーティングする手段と、
ワイヤレス通信を行うための手段と、
前記オペレーティングシステムの他のソフトウェアレイヤによる送出優先データバンドルの取り扱いなしで、送出優先データバンドルを、前記アプリケーションプログラミングインターフェースから前記ワイヤレス通信を行うための手段に直接的に送ることによって、メディア送信の取り扱いを動的にエスカレートする手段とを具備し、
前記複数のレイヤのうちの１つよりも多いレイヤは、前記アプリケーションプログラミングインターフェースから前記ワイヤレス通信を行うための手段に送信されるメディアを取り扱うように構成されているワイヤレス通信デバイス。
［２２］コンピュータ読み取り可能プロダクトにおいて、
コンピュータ読み取り可能媒体を含み、
前記コンピュータ読み取り可能媒体は、
オペレーティングシステムとワイヤレス通信インターフェースとを有するコンピュータプラットフォームを備えるワイヤレス通信デバイス上のアプリケーションプログラミングインターフェースにおいて、メディアを含む送出優先データバンドルを発生させるための１組の命令と、
前記オペレーティングシステムの他のソフトウェアレイヤによる前記送出優先データバンドルの取り扱いなしで、前記送出優先データバンドルを前記ワイヤレス通信インターフェースに直接的に送るための１組の命令と、
前記送出優先データバンドルを前記ワイヤレス通信インターフェースから送信するための１組の命令とを含み、
前記オペレーティングシステムは、メディアを取り扱うアプリケーションプログラミングインターフェースを含む複数のレイヤを含み、
前記複数のレイヤのうちの１つよりも多いレイヤは、前記アプリケーションプログラミングインターフェースから、前記ワイヤレス通信を行うための手段に送信されるメディアを取り扱うように構成されているコンピュータ読み取り可能プロダクト。
【図１】
0005497009.tif 000002
【図２】
0005497009.tif 000003
【図３】
0005497009.tif 000004
【図４】
0005497009.tif 000005
【図５】
0005497009.tif 000006
【図６】
0005497009.tif 000007
【図７】
0005497009.tif 000008
【図８】
0005497009.tif 000009
【図９】
0005497009.tif 000010
【図１０】
0005497009.tif 000011