(57)【要約】本発明はホストデバイス（２１０）と通信するためのトークン（１０）に関する。トークンは、少なくとも1つのＵＳＢ通信チャネル（２３０、２３４、２３６、２３８）を通じて通信する手段を備える。本発明によればトークンは、トークンの少なくとも1つの能力を特定するよう要求するコマンドを、少なくとも1つのＵＳＢ通信チャネル（２３０、２３４、２３６、２３８）を通じて受信することができ、また受信コマンドへの回答として、ＨＩＤ用のＵＳＢデバイスクラスをサポートするトークンであると特定する応答を、少なくとも1つのＵＳＢ通信チャネル（２３０、２３４、２３６、２３８）を通じて送信することができる。本発明は、これに対応する通信システム及び方法にも関する。【選択図】      図２
2013516011.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも1つのＵＳＢ通信チャネル（２３０、２３２、２３４、２３６、２３８）を通じて通信する手段（１２、１４、１６）を備え、ホストデバイス（２１０）と通信するＵＳＢトークン（１０）であって、ヒューマンインタフェースデバイス用のＵＳＢデバイスクラスをサポートする前記ＵＳＢトークンは：
−少なくとも１つのＵＳＢ通信チャネル（２３０、２３２、２３４、２３６、２３８）を通じて、前記トークンからのプロアクティブコマンドであるＨＩＤレポートに関するデータを送信し、
−少なくとも１つのＵＳＢ通信チャネル（２３０、２３２、２３４、２３６、２３８）を通じて、前記プロアクティブコマンドに対する応答を受信する、
ことができることを特徴とするＵＳＢトークン。
【請求項２】
請求項１に記載のＵＳＢトークンであって、少なくとも１つのＵＳＢ通信チャネルを通じて特定のＨＩＤ使用テーブル（２２３）に関するデータを送信でき、前記ホストデバイスは：
−前記ＨＩＤ使用テーブル（２２３）に、前記トークンからのプロアクティブコマンドである、少なくとも1つのＨＩＤレポートとしてデータを解釈し、
−前記プロアクティブコマンドを、前記ホストデバイスが実行する少なくとも１つの対応動作と関連付け、
−前記ホストデバイスが実行する前記対応動作により決定される応答を、前記ＵＳＢトークンに送信しなくてはならない、ことを特徴とするＵＳＢトークン。
【請求項３】
請求項１又は２に記載のＵＳＢトークンであって、前記ホストデバイスから、少なくとも１つのＵＳＢ通信チャネル（２３４）を通じて、少なくとも１つのイベントに関するデータを受信できる、ことを特徴とするＵＳＢトークン。
【請求項４】
請求項１乃至３のいずれかに記載のＵＳＢトークンであって、少なくとも1つの前記ＵＳＢ通信チャネルは、
−ＵＳＢデフォルトパイプ‘０’（２３０）と；
−ＵＳＢコントロールパイプ（２３０）と；
−ＵＳＢインタラプトＩＮパイプ（２３２）と；
−ＵＳＢインタラプトＯＵＴパイプ（２３４）と；
−少なくとも１つのバルク転送パイプ（２３６、２３８）と；
を備える、ことを特徴とするＵＳＢトークン。
【請求項５】
請求項１乃至４のいずれかに記載のＵＳＢトークンであって、別の通信チャネルを通じて通信する手段（１１４、１１６、１１８）を含み、前記別の通信チャネルは１つ以上のインタフェースとして、
−アプリケーションプロトコルデータ単位；
−インターネットプロトコル；
−ハイパーテキスト・トランスファプロトコル、及び／又は；
−マスストレージプロトコル；
を備える、ことを特徴とするＵＳＢトークン。
【請求項６】
請求項２に記載のＵＳＢトークンであって、少なくとも１つの前記対応動作は：
−前記ホストデバイスが制御する表示画面に情報の少なくとも一部を表示する動作と；
−ホストデバイスのマン−マシンインタフェースを通じて交信することをユーザに要求する動作と；
−前記ホストデバイスに、前記ＵＳＢトークンからのプロアクティブコマンドを取り出すよう要求する動作と；
−前記ホストデバイスを通じて、別の外部装置にメッセージを送信する動作と；
−前記プロアクティブコマンド内で特定された、前記ＵＳＢトークンに記憶されているファイルを、マスストレージインタフェースなどの特定のインタフェースを通じて取り出す動作と；
−インターネットプロトコルインタフェースなどの特定のインタフェースを通じ、前記ＵＳＢトークンがサポートする、あるいは前記ＵＳＢトークンから、またはこれを通じて開始されるウェブサーバのアプリケーションにおいて、少なくとも１つのオペレーションを実行する要求を、前記ＵＳＢトークンに送信する動作と；
からなる群に属する少なくとも1つの動作である、ことを特徴とするＵＳＢトークン。
【請求項７】
請求項１乃至６のいずれかに記載のＵＳＢトークンであって、サービス加入者鍵を安全に記憶する手段を備え、前記サービス加入者鍵は、加入者が移動無線通信サービスを享受できるよう認証するために用いられる、ことを特徴とするＵＳＢトークン。
【請求項８】
請求項１乃至７のいずれかに記載のＵＳＢトークンであって、ＨＩＤレポートとして、返信での応答を要求するプロアクティブコマンドを、ＵＳＢバルク転送パイプ又はインターネットプロトコル通信チャネルなどの特定の通信チャネルを通じて送信できる、ことを特徴とするＵＳＢトークン。
【請求項９】
請求項１乃至８のいずれかに記載のＵＳＢトークンであって、前記ＵＳＢトークンからのＨＩＤレポートに関するデータには、前記ＵＳＢトークンからのプロアクティブコマンドがカプセル化されていること、及び／又は、ＨＩＤレポートに関連し前記ＵＳＢトークンで受信されるデータには、前記プロアクティブコマンドに対する応答がカプセル化されていること、を特徴とするＵＳＢトークン。
【請求項１０】
ホストデバイス（２１０）とＵＳＢトークン（１０）との間で通信する方法（３０）であって、前記ＵＳＢトークンと前記ホストデバイスは、少なくとも１つのＵＳＢ通信チャネル（２３０、２３２、２３４、２３６、２３８）を通じて、それぞれＵＳＢトークン（１０）又はホストデバイス（２１０）と通信する手段を備えており、ヒューマンインタフェースデバイス用のＵＳＢデバイスクラスをサポートする前記ＵＳＢトークンは、
少なくとも1つのＵＳＢ通信チャネル（２３０、２３２、２３４、２３６、２３８）を通じて、前記トークンからのプロアクティブコマンドであるＨＩＤレポートに関するデータを前記ホストデバイスに送信し、
前記ホストデバイスは、少なくとも1つのＵＳＢ通信チャネル（２３０、２３２、２３４、２３６、２３８）を通じて、前記プロアクティブコマンドに対する応答を前記ＵＳＢトークンに返信する、ことを特徴とする方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は全般的に、ホストデバイスと通信するためのトークンに関する。
本明細書によれば、トークンは、外界と通信し特にホストデバイスと協働する携帯スマートオブジェクトであれば、いかなるものでも良い。
さらに、本発明はホストデバイスとトークンとを含む通信システムに関する。
また、本発明はホストデバイスとトークンとの間の通信方法にも関する。
本発明は、トークンである加入者識別モジュール（ＳＩＭ）カードと呼ばれるスマートカードが、ホストデバイスである携帯電話と協働する、移動無線通信の分野に特に適用できる。
【背景技術】
【０００２】
公知のように、ユーザが携帯電話のキーボードで、ＳＩＭカードのサポートするアプリケーションを選択すると、ＳＩＭカードは直ちにプロアクティブ（ｐｒｏａｃｔｉｖｅ）セッションを実行することができる。即ち、ＳＩＭカードは携帯電話に向けて少なくとも１つのコマンドを発信することができる。
【０００３】
プロアクティブセッションは、携帯電話がマスタ、ＳＩＭカードがスレーブとなる従来のマスタスレーブ機構をとらず、マスタであるＳＩＭカードがスレーブである携帯電話に、いわゆるプロアクティブコマンドを送信することで、携帯電話からの動作を要求する通信を開始することを特徴とする。
【０００４】
ＳＩＭカードのこうしたプロアクティブ能力（ｃａｐａｂｉｌｉｔｙ）は、欧州電気通信標準化機構（ＥＴＳＩ）技術仕様書（ＴＳ）１０２  ２２３の８．２．０版（２００９−０１）をはじめとする複数の標準仕様書に記載されており、カードアプリケーションツールキット（ＣＡＴ）として知られている。このＣＡＴは、ＳＩＭカードにより提供されるアプリケーションプロトコルデータ単位（ＡＰＤＵ）アプリケーションの実行を可能にする。
【０００５】
ＡＰＤＵアプリケーションを実行するために従来のマスタスレーブ機構を解消できるよう、携帯電話は、ＳＩＭカードにダミーコマンドを送信することで定期的にポーリングを行い、携帯電話により実行されるべきプロアクティブコマンドをＳＩＭカードが有するか否かを確認する。
【０００６】
またＳＩＭカードは絶えず進化しており、ユニバーサルシリアルバス（ＵＳＢ）ＳＩＭカードというＳＩＭカードに至っては、ユニバーサルシリアルバス（ＵＳＢ）通信チャネルを備え、１Ｍｂｐｓ以上のデータレートで携帯電話とＵＳＢ  ＳＩＭカードとの間でデータ交換ができる。
【０００７】
さらにＵＳＢ  ＳＩＭカードは、例えば  ＵＳＢ  ＳＩＭカードに内蔵されたウェブサーバを通じてサービスにアクセスできるよう、ＡＰＤＵ適用（ａｐｐｌｉｃａｔｉｖｅ）層以外にも１つ以上の別の適用層をサポートしている。したがって、前述した別の適用層上で、ＵＳＢ  ＳＩＭカードにプロアクティブコマンドの送信を要求するイベントが発生すると、ＵＳＢ  ＳＩＭカードは、プロアクティブ能力にアクセスするためＡＰＤＵ適用層にジャンプしなければならない。
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかし、ＵＳＢカードのプロアクティブ能力にアクセスするこのような方法は、効率的ではない。なぜならこの方法では、ＡＰＤＵ適用層に関するソースコードの重複、又はＡＰＤＵ適用層におけるポーリング待機を伴うからである。そのため、ＵＳＢ  ＳＩＭカードの、より一般化して言えばＵＳＢトークンの、より効率的なプロアクティブ能力を有する適用層の提供が必要とされている。
【課題を解決するための手段】
【０００９】
本発明は、ホストデバイスと通信するトークンを提供することで、上記の必要を満たす解決方法を提示する。トークンは少なくとも１つのＵＳＢチャネルを通じて通信する手段を有する。
【発明の効果】
【００１０】
本発明によればトークンは、トークンの能力（ｃａｐａｂｉｌｉｔｙ）を少なくとも1つ特定するよう要求するコマンドを、少なくとも1つのＵＳＢ通信チャネルを通じて受信し；受信コマンドに対する回答として、ヒューマンインタフェースデバイス（ＨＩＤ）用のＵＳＢデバイスクラスをサポートすることを特定する応答を、少なくとも1つのＵＳＢ通信チャネルを通じて送信することができる。
【００１１】
本発明は、トークンが、その能力について要請されたとき、ＨＩＤ用のＵＳＢデバイスクラスをサポートしていることを、ＵＳＢリンクを通じて伝達できるように構成されていることを、主な特徴とする。
トークンは、少なくとも1つのマイクロプロセッサをデータ処理手段として備え、少なくとも1つのメモリを備え（又は少なくとも1つのメモリに接続され）、さらに少なくとも1つの入出力通信インタフェースを備えている電子デバイスであれば、いかなるものでもよい。
【００１２】
トークンは、ＵＳＢセキュア・リムーバブル・モジュール（ＳＲＭ）の電子媒体であればいかなるものでもよい。例えば、ＵＳＢスマートカード、ＵＳＢスマートドングルや、ホストデバイスに好ましくは着脱可能に固定されるチップなどの形態をとってもよい。トークンは、フォームファクタの異なるいかなる電子媒体であってもよい。
【００１３】
ホストデバイスに対しトークンがＨＩＤ用のＵＳＢデバイスクラスであると自己提示することなど、当業者は想到しえなかったであろう。実際、ＨＩＤ用のＵＳＢデバイスクラスはその名の通り、直接人間と接触する、つまり人間と交信する装置を対象とするものであり、一方トークンは公知の通り、人間とは直接やり取りせず、他の装置とのみ交信するものである。
【００１４】
ＨＩＤ用のＵＳＢデバイスクラス規定には、勿論、キーボード、マウス、ポインティングデバイス、あるいはジョイスティックなど、人間からの入力を受け人間に出力を返せるものが含まれる。
【００１５】
本発明の解決方法において、ホストデバイスは、ＵＳＢ  ＨＩＤ周辺装置であるトークンにより開始されたサービスを享受するにあたり、既存の標準ＵＳＢ  ＨＩＤドライバを用いる。そのため当該解決方法では、新たなＵＳＢクラスドライバの開発や、既存の標準ＵＳＢクラスドライバの変更が不要となる。
【００１６】
さらに上記従来の方法とは対照的に、本願の解決方法では、ＡＰＤＵ適用層など、別のプロアクティブ適用層に関するソースコードが重複することや、ホストデバイスが開始するポーリングを適用層で待機することも回避できる。このような利点は、トークンがサポートする適用サービスの数に関わらず共通である。
【００１７】
更なる側面によれば、本発明は通信システムでもある。この通信システムは、ホストデバイスとトークンとを含む。トークンとホストデバイスは、少なくとも1つのＵＳＢ通信チャネルを通じて、それぞれホストデバイス又はトークンと通信する手段を備えている。
【００１８】
本発明によればトークンは、トークンの能力を少なくとも1つ特定するよう要求するコマンドを、少なくとも1つのＵＳＢ通信チャネルを通じてホストデバイスから受信し；受信コマンドに対する回答として、ＨＩＤ用のＵＳＢデバイスクラスをサポートするトークンであると特定する応答を、少なくとも1つのＵＳＢ通信チャネルを通じて、ホストデバイスに送信することができる。
【００１９】
ホストデバイスは、ＵＳＢ  ＨＩＤ周辺装置であるトークンと交信し、トークンからプロアクティブコマンドを通じて要求された動作を実行する。さらにホストデバイスは、要求された動作の実行結果又は実行計画を（トークンに）送信することで、要求に応答できる。
【００２０】
更なる側面によれば、本発明はホストデバイスとトークンとの間の通信方法でもある。トークンとホストデバイスは、それぞれホストデバイス又はトークンと、少なくとも1つのＵＳＢ通信チャネルを通じて通信する手段を備える。
【００２１】
本発明によれば、ホストデバイスは、トークンの能力を少なくとも1つ特定するよう要求するコマンドを、少なくとも1つのＵＳＢ通信チャネルを通じてトークンに送信する。トークンは受信コマンドに対する回答として、ＨＩＤ用のＵＳＢデバイスクラスをサポートするトークンであると特定する応答を、少なくとも1つのＵＳＢ通信チャネルを通じてホストデバイスに送信する。
【００２２】
ＵＳＢ  ＨＩＤインタフェースを使用することで、トークンはプロアクティブ能力を下位層で利用できるようになる。このプロアクティブ能力は、インターネットプロトコルインタフェース、ＡＰＤＵインタフェース、マスストレージインタフェース、及び／又はその他のインタフェースなどの、あらゆる上位（適用（ａｐｐｌｉｃａｔｉｖｅ））層と容易に共有することができる。そのため、各層それぞれに通信オーバーヘッドを設けなくてよい。
【００２３】
トークンは、ＵＳＢ  ＨＩＤ周辺装置として用いられることで、下位層において“プロアクティブ”能力を提供する。すると結果的に、プロアクティブ能力を必要とするアプリケーションの性質によらず、少なくとも1つのＵＳＢ通信チャネルを通じて、プロアクティブ能力が実装される。
【００２４】
個々のプロアクティブコマンドとそれに対応する応答とは、トークンからホストデバイスへのデータを表すＨＩＤレポートディスクリプタに関連づけられている必要がある。これにより、各ＨＩＤレポートを、プロアクティブ機能又はトークンにより開始されるサービスとして、ホストデバイスによる対応の使用に関連づけることができる。
【図面の簡単な説明】
【００２５】
本発明のさらなる特徴や利点は、好ましい実施例の詳細を読めば、より明確に把握できる。この実施例は、以下の図面との関連において、例示的かつ非限定的なものとして提示される：
【図１】ホストデバイスに対し、ＵＳＢ  ＨＩＤ周辺装置であると示して振舞うことが可能なトークンであるＵＳＢ  ＳＩＭ型スマートカードの、一実施例の簡略図である。
【図２】ホストデバイスである携帯電話と図１のトークンとを含む通信システムの、一実施例の簡略図である。このシステムにおいてホストデバイスは、トークンからの要求、又はホストデバイスの主導による動作を実行することができる。
【図３】図２の通信システムにおけるホストデバイスとトークンとの間のメッセージフローを３例図示したものである。ここではトークンからのＨＩＤレポートが、ホストデバイスで実行される動作をトリガするために用いられている。
【図４】特に図１のトークンとホストデバイスであるＵＳＢ  Ｏｎ−Ｔｈｅ−Ｇｏ電話との間における、メッセージフローの別の実施例を図示したものである。このときトークンはホストデバイスのサービスを制御して利用することができ、これには外部装置も関与している。
【発明を実施するための形態】
【００２６】
以下、本発明の記載においては、特にＵＳＢ標準仕様書２．０、又はＨＩＤ標準仕様書１．１１版対応のＵＳＢデバイスクラス規定で定義されている、装置やメッセージの名称を参照している。
以下では、本発明のトークンが、ホストデバイスである携帯電話に接続するＵＳＢ  ＳＩＭ型スマートカードである場合について検討している。
【００２７】
トークンは、ＵＳＢ  ＳＩＭ型スマートカードのかわりに、例えばＵＳＢドングル、ＵＳＢスマートカード、及び／又は異なるフォームファクタを有する、その他あらゆる電子媒体であってもよい。さらに別の実施例によれば、トークンは、ホストデバイスに、可能であれば着脱できる方法で固定されるチップ、又はホストデバイス内にはんだ付けされるチップである内蔵セキュアエレメント等であってもよい。
【００２８】
同様にホストデバイスも、携帯電話ではなく、例えばセットアップボックス、デスクトップコンピュータ、ラップトップコンピュータ、メディアプレーヤ、ゲーム機、ハンドセット及び／又は携帯情報端末（ＰＤＡ）であってもよい。
なお、本発明の以下の実施例は、単に例示を目的とするものであって、本発明の範囲を限定するためのものではない。
【００２９】
図１は、トークンであるＵＳＢ  ＳＩＭ型スマートカード１０内のチップ１１０に組み込まれた機能的コンポーネントを概略的に示したものである。
このようなトークンはパーソナルコンピュータ（ＰＣ）と比較して、例えばデータ処理能力やメモリ容量が低いなど、演算手段の性能が限られた装置である。
【００３０】
トークンは一般的なＨＩＤとは対照的に、直接人間と接触することはない。
なぜなら、人間はホストデバイスのマン−マシンインタフェースを通じて交信し、トークンにアクセスするからである。
ＵＳＢ  ＳＩＭ型スマートカード１０は、ホストデバイスである携帯電話と交信するためのものである。
【００３１】
簡明を期すため、携帯電話とＵＳＢ  ＳＩＭ型スマートカードを、以下ではそれぞれ電話、及びＵＳＢカードと呼ぶ。
ＵＳＢカード１０は、１つの電話（又はハンドセット）に対応付けられた固有の番号である、国際移動体加入者識別番号（ＩＭＳＩ）、及びサービス加入者鍵Ｋｉを安全に記憶している。
【００３２】
ＩＭＳＩは、例えばＧＳＭ（登録商標）（“Ｇｌｏｂａｌ  Ｓｙｓｔｅｍ  ｆｏｒ  Ｍｏｂｉｌｅ  ｃｏｍｍｕｎｉｃａｔｉｏｎｓ”の頭字語）、ＵＭＴＳ（“Ｕｎｉｖｅｒｓａｌ  Ｍｏｂｉｌｅ  Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｓｙｓｔｅｍ”の頭字語）及び／又はＣＤＭＡ（“Ｃｏｄｅ  Ｄｉｖｉｓｉｏｎ  Ｍｕｌｔｉｐｌｅ  Ａｃｃｅｓｓ”の頭字語）ネットワークなどの、少なくとも1つの移動無線通信ネットワークとの関連において、１人の加入者を特定するために用いられる。
【００３３】
サービス加入者鍵Ｋｉは、（ユーザにより個人識別番号（ＰＩＮ）として付与されたデータがＵＳＢカードにより照合され、）電話ユーザがＵＳＢカードにより認証されたときのみ解除され使用される。サービス加入者鍵Ｋｉは、前記移動無線通信ネットワークを通じて提供されるサービスを、加入者が利用できるよう認証するために用いられる。
【００３４】
ＵＳＢカード１０は例えば、ＧＳＭネットワーク用のＵＳＢ  ＳＩＭスマートカード、ＵＭＴＳネットワーク用の汎用加入者識別モジュール（ＵＳＩＭ）などのネットワークアクセスアプリケーションを含む、ＥＴＳＩ  ＴＳ  １０２  ２２１に記載のリムーバブル・ユーザ・アイデンティティ・モジュール（ＲＵＩＭ）又は汎用集積回路カード（ＵＩＣＣ）、ＣＤＭＡネットワーク用のＣＤＭＡ加入者識別モジュール（ＣＳＩＭ）、ＩＰマルチメディアサブシステム（ＩＭＳ）用のインターネット・プロトコル・マルチメディア・サービス加入者識別モジュール（ＩＳＩＭ）などでありうる。
【００３５】
当然ながら、上記のリストは網羅的なものではなく、単に例示を目的としたものであり、本発明の範囲を限定するためのものではない。
ＵＳＢカード１０のチップ１１０は、データ処理手段として少なくとも1つのマイクロプロセッサ１２と、揮発性及び不揮発性メモリ１４と、少なくとも1つの入出力（Ｉ／Ｏ）インタフェース１６とを備えており、これらは全てデータ及び制御用内部バス１３を通じて接続されている。
【００３６】
Ｉ／Ｏインタフェース１６は、前記チップ１１０の外部、即ちホストデバイスである少なくとも1つの電話と、対応の電話Ｉ／Ｏインタフェースを通じてデータを送受信するために用いられる。
Ｉ／Ｏインタフェース１６は、ＵＳＢ標準仕様書に準じた少なくとも1つのＵＳＢ通信チャネルを物理リンクとして備えていてもよい。
【００３７】
ＵＳＢ通信チャネルは、ＵＳＢデフォルトパイプとしてＵＳＢコントロールパイプ“０”（ゼロ）を備え、論理リンクとしてＵＳＢコントロールパイプ、ＵＳＢインタラプトＩＮパイプ、1つ以上のＵＳＢバルク転送パイプ、及び／又はＵＳＢインタラプトＯＵＴパイプを備える。
【００３８】
さらにＩ／Ｏインタフェース１６は、例えばＡＰＤＵ通信チャネル、インターネットプロトコル（ＩＰ）通信チャネル、ハイパーテキスト・トランスファ・プロトコル（ＨＴＴＰ）通信チャネル、及び／又はマスストレージ通信チャネルなどの、１つ以上の別の通信チャネルを備えうる。
【００３９】
マイクロプロセッサ１２は、ＵＳＢカード１０がサポートするチップメモリ１４に記憶されたあらゆるアプリケーションを実行する。
マイクロプロセッサ１２は、チップ１１０の全てのコンポーネントを制御し、これらと通信する。例えば、メモリ１４と通信し、読出しや、可能であれば書き込みも行なう。
【００４０】
メモリ１４は、１つ以上のＥＥＰＲＯＭ（“Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ”の頭字語）と、１つ以上のＲＯＭ（“Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ”の頭字語）と、１つ以上のフラッシュメモリとからなる不揮発性メモリ１４２、及び／又は、例えば１つ以上のＲＡＭ（“Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ”の頭字語）など、異なる種類の別のメモリからなる揮発性メモリ１４４により構成されうる。
【００４１】
本発明によれば、ＵＳＢカード１０のチップ１１０は、外部装置と交信するために、少なくとも1つのＵＳＢ通信チャネルを通じて外部、特にＵＳＢ電話とやり取りできるように構成されている。
【００４２】
ＵＳＢカード１０にＵＳＢ  ＨＩＤデバイスクラスを使用することによる解決方法では、特にＵＳＢカード１０がマスタ役、ＵＳＢ電話がスレーブ役を担うとき、ＵＳＢ電話とＵＳＢ  ＨＩＤ周辺装置であるＵＳＢカード１０との間に確立されるマスタスレーブ関係を活用することができる。
【００４３】
これにより、ＵＳＢカード１０は少なくとも1つのプロアクティブコマンド（即ち、ＵＳＢカード１０から開始するコマンド）を電話に送信することができる。電話は、このプロアクティブコマンドを解釈し、要求された対応の動作を行うことでコマンドを実行できる。
【００４４】
チップ１１０は特定のＨＩＤ使用テーブル（ｕｓａｇｅ  ｔａｂｌｅ）を記憶しうる。ＨＩＤ使用テーブルは、ＵＳＢカード１０とそのホストデバイスとの間で交換されうる各種レポートの意味（“使用（ｕｓａｇｅ）”）を定義する。より正確には、ＨＩＤ使用テーブルは、初めにＵＳＢデバイスであるＵＳＢカード１０からホストデバイスに送信される各種レポートのフォーマットである。
【００４５】
ＨＩＤ使用テーブルは基本的に、各レポートを１つ以上の対応の動作に関連付けるため、使用されるディスクリプタに割り当てられた使用タグ（ｕｓａｇｅ  ｔａｇ）を記述するものである。
本発明の範囲内における、ディスクリプタとイベントへの使用割り当てについては、ＥＴＳＩ  ＴＳ  １０２  ２２３  ８．２．０版（２００９−０１）の、特に段落６及び６．４に定義されるプロアクティブコマンド、及び／又は、その他可能な追加のプロアクティブコマンドを参照している。
【００４６】
ＨＩＤ使用テーブルによって、ホストデバイスである電話は、ＵＳＢ  ＨＩＤ周辺装置のチップ１１０から受信した特定のデータを、その意味、即ちその目的の使用と合致させることができる。
ＨＩＤ使用テーブルは少なくとも1つのＨＩＤレポートを含む。各ＨＩＤレポートは、ＵＳＢカード１０がサポートするプロアクティブコマンドに対応した情報を伝達する。
【００４７】
チップ１１０が特定のＨＩＤ使用テーブルに関するデータを、電話に伝達できるようにしても良い。
電話が特定のＨＩＤ使用テーブルを（場合によってはＵＳＢカード１０から受信して）取得すると、電話はＵＳＢ  ＨＩＤ周辺装置であるＵＳＢカード１０からの少なくとも1つのＨＩＤレポートとして、データを解釈できるようになる。
【００４８】
ＵＳＢカード１０はＵＳＢ通信チャネルを通じ、チップ１１０のいずれかのＩ／Ｏインタフェース１６で発生したイベントについて、プロアクティブコマンドとして、ＨＩＤレポートを電話に送信する。
ＵＳＢ通信チャネルはＵＳＢインタラプト（ＩＮ）パイプをサポートしうる。ＵＳＢインタラプト（ＩＮ）パイプにより、ＵＳＢ  ＨＩＤ周辺装置は、上記のようなＨＩＤレポートを、ホストである電話にＵＳＢ  ＨＩＤ周辺装置の主導で送信できるようになる。
【００４９】
このようにＨＩＤレポートの送信をトリガすることで、ＵＳＢカード１０がプロアクティブコマンドを有するか否かを電話が自律的に確認するために、電話が上位層で定期的なポーリングを実行することを回避できる。
ＵＳＢ通信チャネルがＵＳＢインタラプト（ＩＮ）パイプを全くサポートしていない場合でも、例えばＵＳＢデフォルトパイプ、即ちＵＳＢコントロールパイプ“０”などの、別のＵＳＢ通信パイプで、下位層ポーリング機構が実行されうる。
【００５０】
このような下位層ポーリング機構は、例えばＡＰＤＵ適用層などの適用層、即ち上位層で実行されるポーリング機構と比べて、オーバーヘッドを大幅に軽減することができる。
電話は、プロアクティブコマンドとしてデータを解釈するとすぐに、このプロアクティブコマンドを、ホストデバイスである電話が実行すべき１つ以上の対応動作に関連付ける。
【００５１】
動作としては、ＥＴＳＩ  ＴＳ１０２  ２２３中で特定されている、ＣＡＴ（“Ｃａｒｄ  Ａｐｐｌｉｃａｔｉｏｎ  Ｔｏｏｌｋｉｔ”の頭字語）として知られる動作、例えば：
−電話のマン−マシンインタフェースを通じてユーザが選択できるメニューを表示する；
−電話のマン−マシンインタフェースを通じた交信をユーザに要求する；
【００５２】
−ショートメッセージサービス（ＳＭＳ）などのメッセージを、電話が接続している移動無線通信ネットワークに送信する；及び／又は
−ＵＳＢカード１０から電話に与えられたプロアクティブコマンド、及びＵＳＢカード１０から電話に送信するべきプロアクティブコマンドを検索するよう電話に要求する；
などの少なくとも１つの動作でありうる。
【００５３】
さらに動作は、以下：
−特定のイベントが発生したとき、ＵＳＢカード１０に通知する；
−ホストデバイス自体に内蔵又は接続されている表示画面に、情報の少なくとも一部を表示する；
−プロアクティブコマンド内で、又はプロアクティブコマンドによって特定される別の加入者に、ホストデバイス及び可能な場合には移動無線通信ネットワークを通じてメッセージを送信する；
【００５４】
−プロアクティブコマンド内で、あるいはプロアクティブコマンドにより特定され、ＵＳＢカード１０内に記憶されている少なくとも1つのファイルを、例えばマスストレージインタフェースなどの、プロアクティブコマンド内で、あるいはプロアクティブコマンドにより特定される特定のインタフェースを通じて取り出す；
−インターネットプロトコルインタフェースなど、プロアクティブコマンド内で、あるいはプロアクティブコマンドにより特定される特定のインタフェースを通じて、1つ以上の所定のオペレーションを、ＵＳＢカード１０から、又はこれを通じて開始されるか、ＵＳＢカード１０によりサポートされるウェブサーバアプリケーション上で実行するように、ＵＳＢカード１０に要求を送信する；
などの動作の少なくとも一部でありうる。
【００５５】
上記の動作リストは、ＵＳＢカード１０がホストである電話に要求できる動作の数を限定することを意図したものではない。
電話は、要求された動作を実行してしまうとすぐに、ＵＳＢカード１０に応答を返信する。
【００５６】
ＵＳＢカード１０は予めプロアクティブコマンドにおいて、特定のＵＳＢ通信チャネル、又はＩＰ通信チャネルなどの別の利用可能な通信チャネル（又はインタフェース）を通じて応答を返信するよう要求しておくこともできる。
このようにして、応答のデータ量又は所望のレイテンシに応じて、ＵＳＢバルク転送パイプなど最適なＵＳＢ通信パイプを用いることにより、下位層のプロアクティブ機能（ｆｕｎｃｔｉｏｎａｌｉｔｙ）又は能力を提供するのに用いられるＵＳＢインタラプトパイプ又はＵＳＢコントロールパイプのオーバーロードを避けることができる。
【００５７】
本発明のＵＳＢカード１０の大きな利点は、ホストである電話とは独立した方法でプロアクティブ能力を提供できることである。ただし前提として、電話は、接続されたＵＳＢデバイスをＵＳＢ  ＨＩＤ周辺装置として認識でき、あらゆるＨＩＤレポートを、電話が取得している対応のプロアクティブコマンドとして、即ち、電話の製造者に依らない方法で解釈できるものとする。
【００５８】
図２の通り、通信システム２０は、ＵＳＢカード１０と電話２１０とを含み、電話２１０は少なくとも1つのＵＳＢ通信チャネルを通じてＵＳＢカード１０に接続されている。
ＵＳＢカード１０は、挿入先の電話２１０から挿脱可能であってもよい。
図２は、電話２１０と交信するために、下位層で実行されるＵＳＢカード１０のプロアクティブ能力を利用するアプリケーション各種を体系的に示したものである。
【００５９】
以下ＵＳＢカード１０は、ＥＴＳＩ  ＴＳ  １０２  ２２３に定義されるようなプロアクティブサービスをサポートするために、ＨＩＤクラスを他のサポートするクラスに加えて用いる、ＥＴＳＩ  ＴＳ  １０２  ６００に準じたＵＳＢカードなどのようなＵＳＢコンポジットデバイスとして自己提示するものとする。
【００６０】
ＵＳＢカード１０は、好ましくはＥＴＳＩ  ＴＳ  １０２  ２２３  ８．２．０．版（２００９−０１）のＣＡＴをサポートする。ＥＴＳＩ  ＴＳ  １０２  ２２３  ８．２．０．版（２００９−０１）は、特に使用されうるプロアクティブコマンドとイベントのため、本明細書に参照として組み込まれる。一方で、その他のプロアクティブコマンド及び／又はイベントを定義しＣＡＴプロアクティブコマンドに追加することもできる。
【００６１】
電話２１０もまた、データ処理手段である電話マイクロプロセッサと、電話メモリと、少なくとも1つの入出力インタフェースを備える（図示せず）。
電話２１０は、演算手段としてはＵＳＢカード１０よりも優れた性能を有する。
電話２１０は、ＵＳＢカード１０と協働できるように、ＵＳＢ  ＨＩＤ周辺装置であるＵＳＢカード１０とデータ交換を行なうためのＵＳＢ  ＨＩＤドライバ２２２と、ＵＳＢカード１０のプロアクティブ能力に対応するためのＨＩＤ使用テーブル２２３とを、電話メモリ内に備える。
【００６２】
ＨＩＤ使用テーブル２２３は遠隔サーバ（図示せず）から付与しておいてもよく、この遠隔サーバは、サーバ自体によって、又は移動無線通信オペレータなどのサービスオペレータによって管理される。
電話２１０は、電話メモリ内にＣＡＴプロアクティブコマンドマネージャ２１２を格納してサポートしており、電話２１０がＵＳＢカード１０から受信しうる全てのプロアクティブコマンドを管理できる。
【００６３】
電話２１０は、ＡＰＤＵに基づくアプリケーション２１４、インターネットプロトコルに基づくアプリケーション２１６、及び／又はマスストレージプロトコルに基づくアプリケーション２１８など、複数のアプリケーションを電話メモリ内にサポートしうる。
【００６４】
異なるプロトコルに基づくこれら各種のアプリケーションは、ＵＳＢスマートカード集積回路装置（ＩＣＣＤ）ドライバ２２４（ＥＴＳＩ  ＴＳ  １０２  ６００に記載）、イーサネット（登録商標）エミュレーションモデル（ＥＥＭ）用の標準イーサネットＵＳＢ通信クラスのデバイスドライバ２２６（ＥＴＳＩ  ＴＳ  １０２  ４８３に記載）、及び／又はマスストレージドライバ２２８など、それぞれ異なる独立した適用インタフェースドライバを通じて、下位層において通信する。
ＵＳＢカード１０は、１つ以上のＵＳＢ通信チャネルを介して電話２１０と通信し、協働する。
【００６５】
ＵＳＢ通信機能は、ＵＳＢバス上での高頻度な下位層ポーリング機構に基づいている。このＵＳＢバス上に、所望の通信での必要に応じて、各種のＵＳＢ通信チャネル又は“パイプ”が確立される。このパイプの中でも、ＵＳＢ  ＨＩＤ周辺装置からホストデバイスへのＵＳＢインタラプトパイプ、即ちＵＳＢインタラプトＩＮパイプ２３２は、ホストデバイスに、コンピュータマウスの動きなどのユーザのインタラクションやイベントを知らせるために、ユーザインタフェースによって用いられる。
【００６６】
このように人間と交信する装置をサポートするのに用いられる標準ＵＳＢクラスはＨＩＤクラスである。ＨＩＤクラスはまた、ホストデバイスからＵＳＢ  ＨＩＤ周辺装置へのＵＳＢインタラプトＯＵＴパイプ２３４の使用もサポートする。
【００６７】
いわゆるＵＳＢコンポジットデバイスであるＵＳＢカード１０は、ＵＳＢ上で定義された複数の独立した適用インタフェース、例えば
−ＡＰＤＵインタフェース１１４；
−インターネットプロトコル（ＩＰ）インタフェース１１６；及び
−マスストレージ（ＭＳ）インタフェース１１８；
などをサポートする。
【００６８】
これらの各適用インタフェースは、電話側の対応ドライバと協働するために、少なくとも1つのＵＳＢ通信チャネルを使用することができる。
ＡＰＤＵインタフェース１１４は、ＵＳＢコントロールパイプとも呼ばれる双方向のＵＳＢデフォルトエンドポイント“０”２３０を用いて、電話２１０がサポートするＵＳＢスマートカードＩＣＣＤドライバ２２４とやり取りすることができる。
【００６９】
インターネットプロトコルインタフェース１１６は、双方向のＵＳＢバルク転送パイプ２３６を用いて、電話２１０がサポートするＵＳＢイーサネットエミュレーションモデルドライバ２２６とやり取りすることができる。
同様に、マスストレージインタフェース１１８は、別の双方向のＵＳＢバルク転送パイプ２３８を用いて、電話２１０がサポートするＵＳＢマスストレージドライバ２２８とデータ交換することができる。
【００７０】
ＵＳＢカード１０は、複数のＵＳＢデバイスクラスの中からＨＩＤ用のＵＳＢデバイスクラスをサポートするＵＳＢコンポジットデバイスであることを、電話２１０に対して宣言するよう構成されている。
また他の実施例によれば、ＵＳＢカード１０は、ＨＩＤ用のＵＳＢデバイスクラスをサポートするＵＳＢコンパウンドデバイスであることを、電話２１０に宣言するよう構成されている。
【００７１】
ＵＳＢ  ＨＩＤデバイスクラスが、本発明によればプロアクティブ能力イネーブラとして、ＵＳＢ周辺装置により（他のＵＳＢデバイスクラス、又は非接触インタフェースなどの他の通信チャネルを通じて）提供される他のサービスのために動作すると考えられることに、留意されたい。
即ち、他のＨＩＤデバイスの場合と同様、ＵＳＢ  ＨＩＤデバイスクラスは、必ずしもデバイスの自立的な機能を表すわけではない。
【００７２】
したがって、トークンであるＵＳＢカード１０上でＵＳＢ  ＨＩＤクラスをサポートする利点は主に、他のＵＳＢデバイスクラスとの協働によって、又はＩＰ通信チャネルなど他の物理的通信チャネルの存在によって生じる。
【００７３】
自明の通り、ＵＳＢコンポジットデバイスとＵＳＢコンパウンドデバイスの双方とも、複数のＵＳＢデバイスクラスをサポートしている。ＵＳＢコンポジットデバイスの特定のＵＳＢデバイスクラスは、専用アドレスを通じてホストデバイスからアクセスされる。一方、ＵＳＢコンパウンドデバイスのＵＳＢデバイスクラスは、全てのＵＳＢデバイスクラスと共有のただ１つのアドレスを介してホストデバイスからアクセスされる。
【００７４】
ＨＩＤ用のＵＳＢデバイスクラスをサポートすることを宣言するために、ＵＳＢカード１０は、ＵＳＢカード１０のサポートする機能又はサービスの特定を要求するコマンドを、電話２１０からＵＳＢデフォルトエンドポイント“０”２３０などの１つのＵＳＢ通信チャネルを通じて受信できるように構成されている。
ＵＳＢカード１０は、このようなコマンドを受信し解釈すると、ＨＩＤ用のＵＳＢデバイスクラスをサポートしていることを示す応答を、例えばＵＳＢデフォルトエンドポイント“０”２３０などのＵＳＢ通信チャネルを通じて、電話２１０に返信することができる。
【００７５】
ＵＳＢ  ＨＩＤ周辺装置であるＵＳＢカード１０は、プロアクティブセッションを管理する手段であるプロアクティブ能力マネージャ１１２により、下位層においてＵＳＢカード１０のプロアクティブ能力を管理する。
ＵＳＢカード１０のプロアクティブ能力のマネージャ１１２は、ＵＳＢカード１０のサポートするあらゆる種類のアプリケーション、例えば、ＵＳＩＭやＩＳＩＭに代表されるＡＰＤＵインタフェース１１４を用いたＡＰＤＵアプリケーション、又はＩＰインタフェース１１６を用いたスマートカードウェブサーバ（ＳＣＷＳ）アプリケーションなどからアクセス可能である。
【００７６】
自明の通り、ＵＳＢカード１０は、電話２１０の内部にローカルに存在するアプリケーション、及び、例えば電話２１０の接続する移動無線通信ネットワークに包含又は接続されるデバイスの内部などに、遠隔的に存在するアプリケーションに、ウェブサーバサービスを提供する。
ＳＣＷＳアプリケーションがＵＳＢカード１０で実行されているときに、プロアクティブサービスへのアクセスが必要な場合、ＵＳＢカード１０はプロアクティブ能力のマネージャ１１２によりＣＡＴプロアクティブコマンド（又はこれに類似のもの）にアクセスできる。
【００７７】
より正確には、プロアクティブ能力のマネージャ１１２はＩＰインタフェース１１６を通じて、例えば実行中のＳＣＷＳアプリケーションなどの適用層から、プロアクティブコマンドを利用する指令を受信する。
プロアクティブ能力のマネージャ１１２はこの指令を、前記プロアクティブコマンドに関連する、対応のＨＩＤレポートに変換する。
【００７８】
すると対応ＨＩＤレポートは、例えばＵＳＢインタラプトＩＮパイプ２３２などを通じて電話２１０（より正確にはＵＳＢ  ＨＩＤドライバ２２２）に送信される。
ＵＳＢインタラプトＩＮパイプ２３２のＨＩＤデフォルトアイドルレートは、Ｉｎｆｉｎｉｔｙに設定してもよい。
【００７９】
電話２１０が、例えば電話２１０が接続する移動無線通信ネットワーク（図示せず）に含まれるデバイスからの呼び出しなどの特定のイベントを、インタラプトＯＵＴパイプ２３４を通じてＵＳＢカード１０に送信し通知したことをうけて、前記適用層がプロアクティブサービスの呼び出しを要請することもできる。
ＵＳＢカード１０は、ＵＳＢインタラプトＩＮパイプ２３２を通じ、プロアクティブコマンドを直接送信するか、又は電話２１０よりＵＳＢインタラプトＯＵＴパイプ２３４を通じて通知されたイベントに応答して送信する。
【００８０】
あるいは、ＵＳＢカード１０はＨＩＤポーリングコマンド、即ち電話２１０からの‘ＧＥＴ  ＲＥＰＯＲＴ’に応答して、ＵＳＢコントロールパイプ２３０を通じてプロアクティブコマンドを返信する。
ＵＳＢカード１０が、異なるアプリケーションに対応した複数のＵＳＢデバイスクラスをサポートするＵＳＢコンポジット又はコンパウンドデバイスであるような場合でも、プロアクティブサービスは一括して下位層で実行される。
【００８１】
これによりプロアクティブサービスは、関連するあらゆるデバイスクラスにとって、（上位層である各適用層のレベルで供給又は移植されるのではなく）ＨＩＤインタフェースを通じて効率的に利用できるものとなる。そのため、ＵＳＢカード１０がサポートする各ＵＳＢデバイスクラスに対応した適用層レベルにおいて別のプロアクティブフレームワークを作成する必要はない。
【００８２】
ＵＳＢカード１０は、プロアクティブコマンドにより要求された対応の動作を、可能性のあるクラスのうち、どのＵＳＢデバイスクラスにおいて電話２１０により実行するかを特定できるという柔軟性を持ちうる。
プロアクティブコマンドを通じて要求された動作は、例えば特定のウェブサーバアプリケーション、又は特定のマスストレージファイルなど、ＵＳＢカード１０及び電話２１０のサポートする他のＵＳＢデバイスクラスを利用してもよい。
【００８３】
例えば、呼制御に関するプロアクティブコマンドは、ＵＳＢ  ＥＥＭクラスの先頭に実装されるＩＰインタフェース１１６を用いたアプリケーションにより、接続を確立するために使用される。
他の実施例によれば、プロアクティブコマンドは、ウェブサーバコンテンツをホストの（例えば電話帳データ用の）内部メモリと同期するか、又はプロアクティブコマンド自体により指示された情報を取り出すなど、ＵＳＢカード１０のサポートする特定のウェブサーバアプリケーション上で、特定の動作を実行することを電話２１０に指示するように、定義されうる。
【００８４】
例えば、メッセージを送信するため重いデータ転送を必要とする“ＳＵＢＭＩＴ  ＭＭＳ”（“Ｍｕｌｔｉｍｅｄｉａ  Ｍｅｓｓａｇｅ  Ｓｅｒｖｉｃｅ”の頭字語）などのプロアクティブコマンドは、ＵＳＢカード１０のサポートするＵＳＢマスストレージメモリ空間に記憶されたファイルからメッセージを取り出すよう指示するように、定義されうる。
【００８５】
他の実施例によると、プロアクティブコマンドにより指定された、ＵＳＢカードがサポートするＵＳＢマスストレージメモリ空間にあるファイルを取り出すためのプロアクティブコマンドは、電話２１０にアイドル画面動画を表示するよう定義されうる。
ＵＳＢカード１０が複数のＵＳＢデバイスクラスを実装しているときは、電話２１０に、特定の動作を要求する受信プロアクティブコマンドへの応答を送信するために利用可能な、最適なＵＳＢ通信チャネル（又はインタフェース）を指示することが適切である。
【００８６】
ＨＩＤ用の標準ＵＳＢデバイスクラスは、他のデバイス、即ち人間と交信する周辺装置を対象とするものだが、ＵＳＢカード１０はこのＵＳＢ  ＨＩＤクラスを上手く利用している。実際、電話２１０とＵＳＢカード１０の間で用いられる既存の標準ＵＳＢソフトウェアスタックを変更する必要はない。
ＵＳＢ  ＨＩＤ周辺装置であるＵＳＢカード１０は、ＵＳＢインタラプトＩＮパイプ２３２を用いる代わりに、ＨＩＤポーリング機構を利用することもできる。
【００８７】
ＨＩＤポーリング機構は、ＵＳＢインタラプトＯＵＴパイプ２３４上の既存のハードウェアポーリング機構を用いる既存のトランスポートレベルのポーリングを使用するか、ＵＳＢデフォルトパイプ“０”２３０上で下位ＵＳＢコマンドを定期的に送信することにより、下位層において実行される。後者の場合、下位層ポーリング機構は、上位層である適用層レベルで、例えばＡＰＤＵインタフェース上でＣＡＴを用いて実行されるポーリングと比較して、プロアクティブ能力の提供に関わる通信オーバーヘッドを大幅に軽減することができる。
【００８８】
プロアクティブコマンドの受信と解釈について、電話２１０は、ＣＡＴプロアクティブコマンドマネージャ２１２がアドレス指定するＨＩＤ使用テーブル２２３により、ＨＩＤ使用テーブルにおいて受信プロアクティブコマンドとの対応が示される動作を行なうことで、このプロアクティブコマンドを処理することができる。
【００８９】
ＨＩＤ使用テーブル２２３は、異なる種類のＨＩＤレポートが、それぞれ目的の使用に関連付けられるように記述されている。ＨＩＤ使用テーブル２２３は、電話メモリに（製造時にロードされて）最初から記憶されているか、ＵＳＢカード１０から、又は電話２１０の接続する移動無線通信ネットワークに包含又は接続されるデバイスの１つである遠隔サーバからロードされる。
【００９０】
各種の実施例も可能である。
ＥＴＳＩ  ＴＳ  １０２  ２２３のプロアクティブコマンドにおける既存の実施例に対する変更を最小限にしたい場合、所望の動作に関して、サポートされたどのＵＳＢデバイスクラスおいて動作を実行すべきかを指示するために、ＵＳＢカード１０から電話２１０へのＨＩＤレポートタイプが１つだけ必要となる。
【００９１】
このようなＨＩＤレポートはＨＩＤ“ショート”アイテムを用いて実装される。要求された動作は、特定されたＵＳＢ通信チャネル又はインタフェース上で実行される。例えばＨＩＤレポートは、ＵＳＢ  ＩＣＣＤインタフェース上で“ＦＥＴＣＨ”コマンドを用いて取り出すべき、標準ＥＴＳＩ  ＴＳ  １０２  ２２３プロアクティブコマンド、即ち、ＵＳＢカード側にあり電話２１０が検索すべき利用可能なプロアクティブコマンドの長さを示す。
【００９２】
対応するＨＩＤ使用テーブル２２３は、定義されたＨＩＤレポートが、あるＣＡＴプロアクティブコマンドに対応していると示すだけでよい。
こうした実施例では、ＵＳＢインタラプトＩＮパイプ２３２と共に既存のＣＡＴを用いることでＨＩＤポーリング機構を省略することができるので、新たなソフトウェアプログラムを作成しなくてよい。
【００９３】
別の実施例では、直にバイト列（最長２５６バイト）を含む入力（即ちＵＳＢカード１０から電話２１０への）ＨＩＤレポートの総称型を定義できるので、電話２１０はこれを、プロアクティブコマンドを含むタグ・長さ・値データオブジェクトとして、即ちＥＴＳＩ  ＴＳ  １０２  ２２３の“ＦＥＴＣＨ”コマンドにより取り出すプロアクティブコマンドに当たるデータとして解釈することができる。
【００９４】
総称型出力（即ち、電話２１０からＵＳＢカード１０への）ＨＩＤレポートは応答データ（即ち、ＥＴＳＩ  ＴＳ  １０２  ２２３に準ずる“ＴＥＲＭＩＮＡＬ  ＲＥＳＰＯＮＳＥ”コマンドで送信されるデータに当たるフォーマット）を伝達するよう定義されうる。
追加の出力ＨＩＤレポートは、特にＵＳＢコントロールパイプ２３０であるＵＳＢデフォルトパイプ“０”２３０のみがＨＩＤレポートの転送に利用可能であるとき、イベントを伝達するよう定義されうる。
【００９５】
このような追加ＨＩＤレポートは、ＥＴＳＩ  ＴＳ  １０２  ２２３プロアクティブコマンドをＵＳＢスマートカードＩＣＣＤインタフェース２２４上に実装するよりも、転送プロトコルのオーバーヘッドを大幅に軽減することができる。
ＨＩＤに完全に移行したい場合、各プロアクティブコマンドについて入力（即ち、ＵＳＢカード１０から電話２１０への）ＨＩＤレポートを定義し、さらにこのＨＩＤレポートにおいて、電話による実行動作の報告先となるサポートされたＵＳＢデバイスクラスを示すこともできる。
【００９６】
例えば、ＴＳ  １０２  ２２３プロアクティブコマンド用に定義されたレポートは、ＥＴＳＩ  ＴＳ  １０２  ２２３に開示されている“ＦＥＴＣＨ”コマンドへの応答として返される包括ＴＬＶ構造のコマンドパラメータを複製するためにＨＩＤ“ロング”アイテムからなるＨＩＤ“コレクション”でありうる。
【００９７】
以下、図３との関連において、ＵＳＢカード１０と電話２１０との間におけるメッセージのセット３０の一実施例を記載する。
設定フェーズに先立ち、ＵＳＢ２．０仕様書に記載のＵＳＢ機能に関して初期化フェーズ（図示せず）が成功裏に実施されていることを前提とする。
【００９８】
ＵＳＢデバイスであるＵＳＢカード１０は、ＵＳＢバスに接続され電源供給を受けると、その存在を電話２１０に示す。すると電話２１０はＵＳＢカード１０の装着を認知し、ＵＳＢカード１０にアドレスを割り当てる。また電話２１０は、ＵＳＢカード１０の動作可能な速度（例えばＬｏｗ  Ｓｐｅｅｄか、Ｆｕｌｌ  Ｓｐｅｅｄか）も認識できる。ＵＳＢデフォルト通信チャネルが利用可能となり、電話２１０はこれを用いてＵＳＢカード１０とメッセージを交換できるようになる。
【００９９】
設定フェーズにおいて、初めに電話２１０はＵＳＢカード１０にその能力を正確に列挙するよう要求し、ＵＳＢカード１０は返信で、（可能な場合、他のＵＳＢデバイスクラスの能力と関連して）ＵＳＢ  ＨＩＤ周辺装置であることを電話に報告する。
設定フェーズは、ＵＳＢ２．０仕様書、特に段落９．２．３“設定”、９．４“標準デバイスリクエスト”、表９−８“標準デバイスディスクリプタ”及び表９−１２“標準インタフェースディスクリプタ”に準拠する。
【０１００】
ＨＩＤ用のＵＳＢデバイスクラスをサポートしているという報告に対し、電話２１０は、ＵＳＢデフォルトパイプ“０”２３０を通じてＵＳＢカード１０に、電話２１０がＵＳＢカード１０から返信してほしいディスクリプタ型を指定するパラメータを伴うＧＥＴ−ＤＥＳＣＲＩＰＴＯＲ要求３２を第１のコマンドとして送信する。
【０１０１】
ＵＳＢカード１０は返信として、ＵＳＢデフォルトパイプ“０”２３０を通じて電話２１０にＨＩＤ−ＤＥＳＣＲＩＰＴＯＲ応答３４を返信する。ＨＩＤ−ＤＥＳＣＲＩＰＴＯＲ応答３４は、ＵＳＢ２．０仕様書に記載され、ＨＩＤなど様々なデバイスクラスの仕様書に拡張されたフォーマットに従って返信される。
ＨＩＤ−ＤＥＳＣＲＩＰＴＯＲ応答３４は、ＵＳＢカード１０の動作方法や、電話２１０のデータ交換方法が分かるように、ＵＳＢカード１０のサポートするＨＩＤクラスの具体的な特徴を宣言できるようにする。
【０１０２】
さらにＨＩＤ−ＤＥＳＣＲＩＰＴＯＲ応答３４は、電話２１０に各種サービスを提供する複数の設定を提示することができるので、電話２１０は電話２１０の所望の環境設定を選択することができる。ＵＳＢカード１０は、例えばＵＳＢカード１０がＨＩＤクラスだけでなくＵＳＢスマートカードクラスもサポートできるような設定を提示することができる。
【０１０３】
電話２１０は、ＨＩＤ−ＤＥＳＣＲＩＰＴＯＲ応答３４を受信し解釈することで、ＵＳＢカード１０が少なくともＨＩＤクラスをサポートしているということを認知する。電話２１０はＵＳＢカード１０により提示された複数の候補の中から設定を選択できる。
電話２１０はＵＳＢカード１０に、サポートするＨＩＤクラスについての更なる詳細、例えば、サポートするレポートフォーマットなどについて要求することができる。
【０１０４】
電話２１０は、電話２１０が使用するのに好適なＵＳＢカード１０のデバイス設定について決定する。
この決定について通知するには、電話２１０はＵＳＢカード１０にＳＥＴ−ＣＯＮＦＩＧＵＲＡＴＩＯＮコマンド３６を送信する。するとＵＳＢカード１０は、ＨＩＤクラスを含む設定のうちいずれをアクティベートすべきかを認識する。
【０１０５】
ＵＳＢカード１０のサポートする設定に応じて、ＨＩＤ１．１仕様書の段落４に従い、各種の環境設定パラメータ、例えばＵＳＢカード１０から返信されるいずれかのインタフェースディスクリプタ内のｂＩｎｔｅｒｆａｃｅＣｌａｓｓ、ｂＩｎｔｅｒｆａｃｅＳｕｂｃｌａｓｓ、ｂＩｎｔｅｒｆａｃｅＰｒｏｔｏｃｏｌフィールドなどを、それぞれ０３ｈ、００ｈ、００ｈに設定することにより、ＵＳＢカード１０がＨＩＤクラスをサポートしていることが示される。
【０１０６】
インターネットサイトhttp://www.usb.org/developers/defined classでも確認できる通り、値０３ｈはＨＩＤデバイスに割り当てられたＵＳＢクラスコードである。
電話２１０とＵＳＢカード１０が、互いにＨＩＤクラスをサポートしていると分かると、両者はそれに応じて特にＵＳＢカード１０の主導でＨＩＤレポートを用いてデータを交換する。
【０１０７】
ＨＩＤレポートは、好ましくはＵＳＢカード１０から電話２１０に与えられるＨＩＤレポートディスクリプタに従ってフォーマットされたデータパケットに関係している。
ＵＳＢカード１０がＨＩＤレポートを電話２１０に送るとき、ＵＳＢカード１０は、好ましくは単方向のＵＳＢインタラプトＩＮパイプ２３２を使用する。逆に、電話２１０がＵＳＢカード１０にＨＩＤレポートを送信するときは、電話２１０は、好ましくは単方向のＵＳＢインタラプトＯＵＴパイプ２３４を使用する。
【０１０８】
ＵＳＢカード１０は、例えば通信サービス又はユーザインタフェースサービスなど、特に電話側でのみ利用可能なサービスによるアプリケーションを少なくとも１つ実行する。ＵＳＢカード１０が電話２１０に対してＨＩＤ周辺装置として提示されることで、ヒューマンインタフェースを持たないＵＳＢカード１０が、電話２１０により提供されうるサービスを自ら要求することが可能になる。
【０１０９】
ＨＩＤクラスは、具体的には、通常電話２１０（ＵＳＢバスに電源を供給し接続されたＵＳＢ周辺装置を制御する）と、ＵＳＢ周辺装置としてのＵＳＢカード１０（ホストデバイスにサービスを提供する）との間に通常暗黙に含意されるマスタスレーブ関係をあえて解消する方法として、使用することができる。
【０１１０】
ＵＳＢカード１０からデータ交換を開始するプロアクティブコマンドの実施例を以下に３例示す。定義づけのため、括弧内ではＥＴＳＩ  ＴＳ  １０２  ２２３  ８．２．０版（２００９−０１）の特に段落６及び６．４に記載されている対応のプロアクティブコマンドに言及する。
【０１１１】
このように、ＵＳＢカード１０は電話２１０に３つの異なるプロアクティブコマンドを送信することでマスタ役を担う。各プロアクティブコマンドはそれぞれ対応のＨＩＤレポート内にカプセル化されている。実行されたプロアクティブコマンドとイベントのやり取りには、ＵＳＢ  ＨＩＤクラスのＨＩＤレポートを用いる。
このようなやり取りは、ＵＳＢカード１０のＡＰＤＵインタフェース１１４上で、ＥＴＳＩ  ＴＳ  １０２  ２２３に準じたプロアクティブコマンドとイベントの交換パターンに従って行なわれる。
【０１１２】
ＵＳＢカード１０は、電話２１０にＨＩＤ  ＩＮレポート（“Ｓｅｔ−ｕｐ  ｍｅｎｕ”）３８を第１のプロアクティブコマンドとして送信し、ＵＳＢカード１０のサポートするサービスに関する複数の要素を追加する。電話２１０は、ＨＩＤ  ＩＮレポート（“Ｓｅｔ−ｕｐ  ｍｅｎｕ”）３８を受信すると、ＵＳＢカードのサービスを、電話２１０の表示画面、又は電話２１０が接続し制御する表示画面に表示する。
【０１１３】
これに先立ち、電話２１０は、例えばＨＩＤ  ＩＮレポートを受領したことを示すためにＨＩＤ  ＯＵＴレポート（“Ｔｅｒｍｉｎａｌ  Ｒｅｓｐｏｎｓｅ”）（図示せず）をＵＳＢカード１０に送信し、ＵＳＢカード１０のサービスを実行する用意があることを通知しておいてもよい。
電話ユーザは、ＵＳＢカードのサービスを知ると、電話２１０に接続又は包含されたマン−マシンインタフェース（電話の表示画面及び／又は電話のキーボードなど）を用いて、ＵＳＢカード１０のサポートするアプリケーションを選択する。
【０１１４】
電話２１０は、例えば“銀行サービス”メニューなど電話ユーザが選択したメニュー項目、即ち対応のＵＳＢカードのサービスについて通知するＨＩＤ  ＯＵＴレポート（“Ｍｅｎｕ  ｓｅｌｅｃｔｉｏｎ”）３１０をＵＳＢカード１０に送信する。
【０１１５】
このようなＵＳＢカードのサービスへの要求に続いて、ＵＳＢカード１０はＨＩＤ  ＩＮレポート（“Ｓｅｌｅｃｔ  Ｉｔｅｍ”）３１２を、第２のプロアクティブコマンドとして電話２１０に直接送信し、例えば前記プロアクティブコマンドに関連する動作の一部である項目のリストを電話の表示画面に表示するよう電話２１０に要求する。
すると電話ユーザは、表示された項目の中から、例えば第１の選択肢である“残高照会”、第２の選択肢である“普通預金”、又は第３の選択肢である“口座振替”を選択できる。
【０１１６】
電話２１０とＵＳＢカード１０との間におけるデータ交換、即ち電話２１０からＵＳＢカード１０への送信、及びＵＳＢカード１０から電話２１０への別の送信は、１回ですむ。
より正確には、ＨＩＤ  ＯＵＴレポート（“ｍｅｎｕ  ｓｅｌｅｃｔｉｏｎ”）３１０と、それに続くＨＩＤ  ＩＮレポート（“ｓｅｌｅｃｔ  ｉｔｅｍ”）３１２とが、１回のデータ交換を構成している。
【０１１７】
既存のＡＰＤＵプロアクティブ能力についてＥＴＳＩ  ＴＳ  １０２  ２２３を参照すれば自明であるように、実際には少なくとも1つの追加データ交換が必要である。より正確には、追加のデータ交換は（特に、ステータスワード“ＳＷ＝９１ＸＸ”又は“ＳＷ＝９０  ００”で構成されるコマンドにより）電話２１０にＵＳＢカードのいわゆる“ステータス”について通知することと、ＵＳＢカード側で電話２１０に（特に“ＦＥＴＣＨ”で構成されるコマンドにより）検出されるのを待機しているプロアクティブコマンドを、ＵＳＢカード１０から要求することとにより成立する。
【０１１８】
電話ユーザが、表示された複数の項目の中から１つ、例えば提示された３つの中から第1の選択肢を選択すると、電話２１０は、第２のプロアクティブコマンドに対する応答として、選択された項目を含むＨＩＤ  ＯＵＴレポート（“Ｔｅｒｍｉｎａｌ  Ｒｅｓｐｏｎｓｅ”）３１４をＵＳＢカード１０に送信する。
続いて、選択された第１の選択肢を進行するため、ＵＳＢカード１０はＨＩＤ  ＩＮレポート（“Ｇｅｔ−Ｉｎｋｅｙ”）３１６を第３のプロアクティブコマンドとして電話２１０に直接送信して、電話２１０に対し、電話ユーザが複数の選択肢から１つを選択するためにキーを押下できるように、テキストを表示するよう要求する。
【０１１９】
例えば、第１の選択肢である“全ての取引を見ますか？”にはキー“１”を押下するよう付記し、第２の選択肢である“残高を見ますか？”にはキー“２”を押下するよう付記し、これら双方の選択肢を同時に表示する。
公知技術による解決方法とは異なり、電話２１０とＵＳＢカード１０との間のデータ交換、即ち電話２１０からＵＳＢカード１０への送信とＵＳＢカード１０から電話２１０への別の送信は、1回ですむ。
【０１２０】
より正確には、前記ＨＩＤ  ＯＵＴレポート（“Ｔｅｒｍｉｎａｌ  Ｒｅｓｐｏｎｓｅ”）３１４と、それに続く前記ＨＩＤ  ＩＮレポート（“Ｇｅｔ  Ｉｎｋｅｙ”）３１６により、１回のデータ交換が成立する。
電話ユーザが、例えばキー“１”を押下して１つの選択肢を選択すると、電話２１０は、前記第３のプロアクティブコマンドへの応答として、押下されたキーの値の指示を伴うＨＩＤ  ＯＵＴレポート（“Ｔｅｒｍｉｎａｌ  Ｒｅｓｐｏｎｓｅ”）３１８を、ＵＳＢカード１０に送信する。
【０１２１】
図４は、ＵＳＢカード１０と、携帯ＵＳＢ  Ｏｎ−Ｔｈｅ−ＧＯデバイス４１と、外部装置とが関与するメッセージフロー４０の一実施例を示したものである。
ＵＳＢ  Ｏｎ−Ｔｈｅ−ＧＯスマートホンをはじめとする携帯ＵＳＢ  Ｏｎ−Ｔｈｅ−ＧＯデバイス４１は、第３世代（３Ｇ）又は第４世代（４Ｇ）ネットワークなどの移動無線通信ネットワークにアクセスするために、モデム制御機能を提供するものとする。携帯ＵＳＢ  Ｏｎ−Ｔｈｅ−ＧＯデバイス４１はＵＳＢ  ＨＩＤドライバインタフェース４３及びモデムアプリケーションインタフェース４５を有する。
【０１２２】
さらに携帯ＵＳＢ  Ｏｎ−Ｔｈｅ−ＧＯデバイス４１は、高いデータレート、例えば１００ｋｂｉｔｓ／ｓ以上で遠隔装置とデータ交換するために、データ通信制御機能を備えている。携帯ＵＳＢ  Ｏｎ−Ｔｈｅ−ＧＯデバイス４１はデータ通信アプリケーションインタフェース（図示せず）を有する。
【０１２３】
さらに、携帯ＵＳＢ  Ｏｎ−Ｔｈｅ−ＧＯデバイス４１はＵＳＢカード１０に対し、ホストデバイスとして接続されるものとする。ＵＳＢカード１０はＵＳＢ  ＨＩＤ周辺装置として自己提示する。加えて、携帯ＵＳＢ  Ｏｎ−Ｔｈｅ−ＧＯデバイス４１とＵＳＢカード１０は、すでに対応の適切な設定メッセージを交換しているものとする。
【０１２４】
こうして携帯ＵＳＢ  Ｏｎ−Ｔｈｅ−ＧＯデバイス４１は、ＵＳＢカード１０がＨＩＤ用のＵＳＢデバイスクラスをサポートしていること、及び、ＨＩＤレポートを用いてＵＳＢカード１０とデータ交換する方法を知る。
ＨＩＤレポートは、ＵＳＢカード１０が携帯ＵＳＢ  Ｏｎ−Ｔｈｅ−ＧＯデバイス４１に優先的に提供したＵＳＢ使用テーブル内に含まれている。
携帯ＵＳＢ  Ｏｎ−Ｔｈｅ−ＧＯデバイス４１はＨＩＤ使用テーブルを記憶する。
【０１２５】
以下の実施例は、外部装置である遠隔サーバ４７にアクセスするために、ＵＳＢ周辺装置であるＵＳＢカード１０が、携帯ＵＳＢ  Ｏｎ−Ｔｈｅ−ＧＯデバイス４１のモデム能力を利用することを記述したものである。
【０１２６】
ただし当然ながら、携帯ＵＳＢ  Ｏｎ−Ｔｈｅ−ＧＯデバイス４１のその他の機能、例えば表示画面制御機能（例、外部ビデオモニタのアドレスを指定する）、キーボード制御機能（例、外部キーボードのアドレスを指定する）、及び／又は携帯ＵＳＢ  Ｏｎ−Ｔｈｅ−ＧＯデバイス４１で実行するアドオンアプリケーションを開始する機能などを、ＵＳＢカード１０が利用することを示すほかの例でも可能である。
【０１２７】
ＵＳＢカード１０はＨＩＤ用のＵＳＢデバイスクラスを用いて携帯ＵＳＢ  Ｏｎ−Ｔｈｅ−ＧＯデバイス４１と通信し、例えばＡＴ（ａｔｔｅｎｔｉｏｎの頭字語）コマンドのように、携帯ＵＳＢ  Ｏｎ−Ｔｈｅ−ＧＯデバイス４１に対し、ＵＳＢカード１０へのモデムサービス提供を要求するコマンドなど、少なくとも1つのプロアクティブコマンドを送信する。
【０１２８】
ＵＳＢカード１０側には、２つのアプリケーションインタフェース、具体的にはプロアクティブ能力マネージャインタフェース４１１と、ＵＩＣＣアプリケーションインタフェース４１３とがある。
初めに、プロアクティブ能力マネージャインタフェース４１１が、ＨＩＤレポート(モデム、“ＡＴＤＴ  ０１  ２３  ４５  ６７  ８９”)のような、ＡＴコマンドからなるＨＩＤレポートを、例えばＵＳＢインタラプトＩＮパイプを通じて携帯ＵＳＢ  Ｏｎ−Ｔｈｅ−ＧＯデバイス４１に、より正確にはＵＳＢ  ＨＩＤドライバインタフェース４３に送信する。
【０１２９】
携帯ＵＳＢ  Ｏｎ−Ｔｈｅ−ＧＯデバイス４１は、記憶済みのＨＩＤ使用テーブルから現行のＨＩＤレポートに関連する動作を取り出すことで、前記プロアクティブコマンドを取得する。こうして、携帯ＵＳＢ  Ｏｎ−Ｔｈｅ−ＧＯデバイス４１は、前記プロアクティブコマンドを解釈し、これを対応する内部アプリケーションインタフェースに送ることができる。
【０１３０】
ＵＳＢカード１０に提供されるホストデバイスのサービスとしてモデム制御アプリケーションに転送される、第１のＨＩＤレポート要求は、ＵＳＢカード１０によりＡＳＣＩＩ文字列として送信されるＡＴコマンドをカプセル化した、ＨＩＤ“ロング”アイテムで構成されうる。
同様に、モデム制御アプリケーションをアドレス指定する第１のＨＩＤレポート要求に対応する第1のＨＩＤレポート応答も、ホストデバイス４１が実行するモデム制御アプリケーションによる、ＡＴコマンドの処理結果に関する応答をカプセル化したＨＩＤ“ロング”アイテムで構成されうる。
【０１３１】
ＵＳＢ  ＨＩＤドライバインタフェース４３は、カプセル化されたＡＴコマンド４４、即ち“ＡＴＤＴ  ０１  ２３  ４５  ６７  ８９”を抽出し、モデムアプリケーションインタフェース４５を通じて、アドレス指定されたモデム制御アプリケーションに転送する。
ホストデバイス４１にインストールされ実行されるモデム制御アプリケーションは、電話番号“０１  ２３  ４５  ６７  ８９”をダイヤルすることにより、モデム制御コマンドである前記ＡＴコマンドを実行する。
【０１３２】
前記電話番号がダイヤルされると、ホストデバイス４１のモデムアプリケーションインタフェース４５は、ＵＳＢカード１０によりホストデバイスを通じて開始された通話を確立するために、呼び出しメッセージ４６を遠隔サーバ４７に送信する。
遠隔サーバ４７は、呼び出しメッセージ４６を受信して通話を承認するとすぐに、要求された通話の確立が無事に完了したことを通知する“ＯＫ”などのメッセージ４８を、ホストデバイス４１に、より正確にはモデムアプリケーションインタフェース４５に返信する。
【０１３３】
するとモデムアプリケーションインタフェース４５は、要求された通話の確立が無事に完了したことを通知する“ＯＫ”などのメッセージ４１０を、ＵＳＢ  ＨＩＤドライバインタフェース４３に転送する。
ＵＳＢ  ＨＩＤドライバは上記の通知を受けるとすぐに、要求された通話の確立が無事に完了したことを通知する“ＯＫ”などのメッセージをレポート内にカプセル化することで、ＵＳＢカード１０に送信する第２のＨＩＤレポートを生成する。
【０１３４】
ＵＳＢ  ＨＩＤドライバが第２のＨＩＤレポートを生成するとすぐに、ＵＳＢ  ＨＩＤドライバインタフェース４３は、例えばＵＳＢインタラプトＯＵＴパイプを通じ、上記のように生成されたＨＩＤレポート４１２を、イベントとしてＵＳＢカード１０に、より正確にはプロアクティブ能力マネージャインタフェース４１１に送信する。
第２のＨＩＤレポートをイベントとして受信すると、プロアクティブ能力マネージャインタフェース４１１は、要求された通話の確立が無事に完了したことを通知する“ＯＫ”などのメッセージ４１４を、ＵＳＢカード１０内部のＵＩＣＣアプリケーションインタフェース４１３に送信する。
【０１３５】
ＵＩＣＣアプリケーションは、このような情報メッセージ４１４を受信すると、これを処理する。
ＵＩＣＣアプリケーションは、ＥＥＭ用イーサネットＵＳＢ通信クラスのディスクドライバ（図示せず）など、別のＵＳＢインタフェースを用いて、接続された遠隔サーバ４７と、ＨＴＴＰ要求及び応答を交換することができる。ＵＳＢ  ＥＥＭインタフェースの使用は、ホストデバイス４１に対し透過的な方法で、遠隔サーバ４７とＨＴＴＰデータを交換するのに適している。
【０１３６】
続いてＵＩＣＣアプリケーションは、特定のデータファイル、例えば壁紙、即ちＵＳＢカード１０に記憶され電話の表示画面に表示される画像などに関するデータを、接続された遠隔サーバ４７からダウンロードするＨＴＴＰ要求を生成する。
選択されたデータファイルのダウンロード要求は例えば“ｇｅｔ  ｆｉｌｅ  ｉｄ”などで、ダウンロードするファイルは対応の識別子“ｉｄ”により特定される。
【０１３７】
ＵＩＣＣアプリケーションインタフェース４１３は、選択されたデータファイルをダウンロードするＨＴＴＰ要求を遠隔サーバ４７に転送するためのメッセージ（図示せず）を、ＵＳＢカード１０内のＵＳＢ  ＥＥＭインタフェースに送信する。
ＵＳＢ  ＥＥＭインタフェースは、選択されたデータファイルをダウンロードするＨＴＴＰ要求を、ホストデバイス４１内のデータ通信アプリケーションインタフェース（図示せず）に送信する。
【０１３８】
データ通信アプリケーションは、ＵＳＢカード１０と遠隔サーバ４７との間の仲介手段として、遠隔サーバ４７と交信する。ホストデバイス４１のデータ通信アプリケーションインタフェースは、ＵＩＣＣアプリケーションが、ホストデバイス４１に対し透過的な方法で、ＨＴＴＰ要求及び応答を遠隔サーバ４７と交換できるようにする。
【０１３９】
ホストデバイス４１は、ＵＳＢカード１０からのＨＴＴＰデータを遠隔サーバへ送信するか、反対に遠隔サーバ４７からＵＳＢカード１０に送信する。
例えば、遠隔サーバ４７からダウンロードすべき選択されたデータファイルに関するデータは、ＵＳＢバルク転送パイプを用いてホストデバイス４１を通じてＵＳＢカード１０に転送される必要がある。このようにＵＳＢバルク転送パイプは、ＨＴＴＰコマンド“ｇｅｔ  ｆｉｌｅ  ｉｄ”へのＨＴＴＰ応答を、ホストデバイス４１からＵＳＢカード１０に転送するために用いられる。
【０１４０】
次に、遠隔サーバ４７は受信したＨＴＴＰコマンドを処理し、要求されたデータファイル（図示せず）をデータ通信アプリケーションインタフェースに返信する。
データ通信アプリケーションインタフェースは、ＵＳＢバルク転送パイプを通じて、ＵＳＢ  ＥＥＭインタフェースに、要求されたデータファイル（図示せず）を転送する。
すると、ＵＳＢ  ＥＥＭインタフェースは、ＵＩＣＣアプリケーションインタフェース４１３に、要求されたデータファイル（図示せず）を送信する。
【０１４１】
提案した解決方法では、ホストデバイス４１が、ホストデバイス側のＵＳＢ  ＨＩＤドライバ及び各サービスに特定のＨＩＤ使用テーブルを用いて、ＵＳＢカード１０により開始された要求をリルート（ｒｅ−ｒｏｕｔｅ）するので、ＵＳＢカード１０は、例えばモデム制御機能などのホストデバイス側の既存の機能やサービスを、低負担で利用することができる。
【図１】
2013516011.tif 000003
【図２】
2013516011.tif 000004
【図３】
2013516011.tif 000005
【図４】
2013516011.tif 000006
【国際調査報告】
2013516011.tif 000007
2013516011.tif 000008