(57)【要約】      （修正有）【課題】携帯電話アプリケーションの車載ヘッドユニットへの拡張を制御し、管理し、そして可能にするメカニズムを提供する。【解決手段】モバイル機器は、車載ヘッドユニットがモバイル機器のリソースを利用することの要求を許可するか否かを決定する。このモバイル機器は、要求を許可したことに応答して、モバイル機器のプロキシを利用して通信相手との接続を確立する。【選択図】図１
2019004499.tif 000002
【特許請求の範囲】
【請求項１】
モバイル機器と車載ヘッドユニットとを結合するステップと；
前記モバイル機器において、前記車載ヘッドユニットが前記モバイル機器のリソースを
利用することの要求を受信するステップと；
前記モバイル機器によって、前記要求を許可するか否かを決定するステップと；
前記要求を許可することを決定したことに応答して、前記モバイル機器のプロキシを利
用して、通信相手との接続を確立するステップと
を含むことを特徴とする方法。
【請求項２】
前記決定するステップが、前記通信相手に関連する識別子に基づくことを特徴とする請
求項１に記載の方法。
【請求項３】
前記識別子または前記通信相手がホワイトリストに含まれているか否かを判定するステ
ップを、さらに含むことを特徴とする請求項２に記載の方法。
【請求項４】
前記モバイル機器において前記要求を受信するポートを識別するステップと；
マッピングが、前記識別したポートに対応するエントリを含むか否かを判定するステッ
プと；
前記マッピングが前記エントリを含むものと判定したことに応答して、前記通信相手を
発見するステップと
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記モバイル機器の前記プロキシが、前記要求を前記車載ヘッドユニットから送信した
第２プロキシ・サーバーとは異なる第１プロキシ・サーバーを具えていることを特徴とす
る請求項１に記載の方法。
【請求項６】
前記第１プロキシ・サーバーが、第１ＳＯＣＫＳプロキシ・サーバーを具えていること
を特徴とする請求項５に記載の方法。
【請求項７】
前記決定するステップが、前記通信相手に関連する識別子に基づくことを特徴とする請
求項５に記載の方法。
【請求項８】
前記識別子または前記通信相手が、ホワイトリストに含まれているか否かを判定するス
テップを、さらに含むことを特徴とする請求項７に記載の方法。
【請求項９】
前記モバイル機器において前記要求を受信するポートを識別するステップと；
マッピングが、前記識別したポートに対応するエントリを含むか否かを判定するステッ
プと；
前記マッピングが前記エントリを含むものと判定したことに応答して、前記通信相手を
発見するステップと
をさらに含むことを特徴とする請求項５に記載の方法。
【請求項１０】
前記モバイル機器によって、前記要求を許可するか否かを決定するステップが：
前記要求に関連する加入／アカウント状態をチェックすることと；
前記マッピングが前記エントリを含み、かつ、前記加入／アカウント状態が所定の加入
／アカウント状態に相当するものと判定したことに応答して、前記要求を許可することを
決定することと
をさらに含むことを特徴とする請求項９に記載の方法。
【請求項１１】
処理装置による実行に応答して、当該処理装置に動作を実行させる命令を記憶したメモ
リ装置であって、前記動作が：
モバイル機器と車載ヘッドユニットとを結合するステップと；
前記モバイル機器において、前記車載ヘッドユニットが前記モバイル機器のリソースを
利用することの要求を受信するステップと；
前記モバイル機器によって、前記要求を許可するか否かを決定するステップと；
前記要求を許可することを決定したことに応答して、前記モバイル機器のプロキシを利
用して、通信相手との接続を確立するステップと
を含むことを特徴とするメモリ装置。
【請求項１２】
前記決定するステップが、前記通信相手に関連する識別子に基づくことを特徴とする請
求項１１に記載のメモリ装置。
【請求項１３】
前記動作が、前記識別子または前記通信相手がホワイトリストに含まれているか否かを
判定するステップを、さらに含むことを特徴とする請求項１２に記載のメモリ装置。
【請求項１４】
前記動作が：
前記モバイル機器において前記要求を受信するポートを識別するステップと；
マッピングが、前記識別したポートに対応するエントリを含むか否かを判定するステッ
プと；
前記マッピングが前記エントリを含むものと判定したことに応答して、前記通信相手を
発見するステップと
をさらに含むことを特徴とする請求項１１に記載のメモリ装置。
【請求項１５】
前記モバイル機器の前記プロキシが、前記要求を前記車載ヘッドユニットから送信した
第２プロキシ・サーバーとは異なる第１プロキシ・サーバーを具えていることを特徴とす
る請求項１１に記載のメモリ装置。
【請求項１６】
前記第１プロキシ・サーバーが、第１ＳＯＣＫＳプロキシ・サーバーを具えていること
を特徴とする請求項１５に記載のメモリ装置。
【請求項１７】
前記決定するステップが、前記通信相手に関連する識別子に基づくことを特徴とする請
求項１５に記載のメモリ装置。
【請求項１８】
前記動作が、前記識別子または前記通信相手がホワイトリストに含まれているか否かを
判定するステップを、さらに含むことを特徴とする請求項１７に記載のメモリ装置。
【請求項１９】
前記動作が：
前記モバイル機器において前記要求を受信するポートを識別するステップと；
マッピングが、前記識別したポートに対応するエントリを含むか否かを判定するステッ
プと；
前記マッピングが前記エントリを含むものと判定したことに応答して、前記通信相手を
発見するステップと
をさらに含むことを特徴とする請求項１５に記載のメモリ装置。
【請求項２０】
前記モバイル機器によって、前記要求を許可するか否かを決定するステップが：
前記要求に関連する加入／アカウント状態をチェックすることと；
前記マッピングが前記エントリを含み、かつ、前記加入／アカウント状態が所定の加入
／アカウント状態に相当するものと判定したことに応答して、前記要求を許可することを
決定することと
をさらに含むことを特徴とする請求項１１に記載のメモリ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
優先権
本願は、米国特許仮出願第６１／７４０３７６号、２０１２年１２月２０日出願、発明
の名称”EFFICIENT HEADUNIT COMMUNICATION INTEGRATION”に基づいて優先権を主張し、
米国特許出願第１３／６０５８４６号、２０１２年９月６日出願、発明の名称”MOBILE I
NTEGRATION PLATFORM (MIP) INTEGRATED HANDSET APPLICATION PROXY (HAP)”の一部継続
出願として優先権を主張し、米国特許出願第１３／６０５８４６号は、米国特許仮出願第
６１／５３３６９４号、２０１１年９月１２日出願、発明の名称”MOBILE INTEGRATION P
LATFORM (MIP) INTEGRATED HANDSET APPLICATION PROXY (HAP)”及び米国特許仮出願第６
１／５３８０６３号、２０１１年９月２２日出願、発明の名称”EXTENSIBLE SCHEME FOR 
OPERATING VEHICLE HEAD UNIT AS EXTENDED INTERFACE FOR MOBILE DEVICE”の非仮出願
であり、米国特許出願第１２／７７７９８９号、２０１０年５月１１日出願、発明の名称
”CENTRALIZED MANAGEMENT OF MOTOR VEHICLE SOFTWARE APPLICATION AND SERVICES”の
一部継続出願であり、米国特許出願第１２／７７７９８９号は、米国特許出願第１２／７
２９２０７号、２０１０年３月２２日出願、発明の名称”CENTRALIZED MANAGEMENT OF MO
TOR VEHICLE SOFTWARE APPLICATION AND SERVICES”の一部継続出願であり、米国特許出
願第１２／７２９２０７号は、米国特許仮出願第６１／２５２０６６号、２００９年１０
月１５日出願、発明の名称”CENTRALIZED MANAGEMENT OF MOTOR VEHICLE SOFTWARE APPLI
CATIONS AND SERVICES”及び米国特許仮出願第６１／２６０７８１号、２００９年１１月
１２日出願、発明の名称”CENTRALIZED MANAGEMENT OF MOTOR VEHICLE SOFTWARE APPLICA
TIONS AND SERVICES”の非仮出願であり、これらの特許出願の各々は、その全文を参照す
る形で本明細書に含める。
【０００２】
著作権の通知
著作権：２０１１−２０１３ Airbiquity Inc。本明細書の開示の一部は、著作権保護
を受ける題材を含む。著作権所有者は、何人による本明細書または特許開示の複製にも異
議を唱えない、というのは、米国特許商標庁の特許ファイルまたは記録中に見られるから
であるが、さもなければ、いずれにせよ全権利を留保する。米国特許法施行規則第１．７
１条ｄ項（37CFR §1.71(d)）。
【背景技術】
【０００３】
発明の背景
自動車は、ユーザ・インタフェースを有する「ヘッドユニット」を装備することができ
る。このユーザ・インタフェースは、スクリーン、スピーカ、マイクロホン、タッチスク
リーン、及び／またはキーパッド、等のような種々のリソース構成要素を含むことができ
る。
【０００４】
スマートホンまたは他の携帯電話（ハンドセットとも称する）は、その電話機上で動作
する種々のアプリケーションプログラム（「アプリケーション」）をダウンロードするこ
とができる。ユーザは、電話機のユーザ・インタフェースを利用してアプリケーションを
制御すること、及び／または、アプリケーションを（視覚表示を視る、あるいは音声出力
を聴くような）何らかの方法で利用することができる。携帯電話からヘッドユニットへア
プリケーションを拡張することは、種々のサービスプロバイダ（サービス提供業者）及び
自動車製造業者によって提供される一般的な特徴機能になっている。その結果、ユーザは
、ヘッドユニットによって提供されるより良いユーザ・インタフェース構成要素（例えば
、より大型のスクリーン及びより高品位の音声出力）を利用することができる。携帯電話
アプリケーションの車載ヘッドユニットへの拡張を制御し、管理し、そして可能にするメ
カニズムを提供することが望まれる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】米国特許第６１４４３３６号明細書
【特許文献２】米国特許第６６９０６８１号明細書
【特許文献３】米国特許第６４９３３３８号明細書
【発明の概要】
【課題を解決するための手段】
【０００６】
以下は、本発明のいくつかの態様の基本的な理解をもたらすための、本発明の概要であ
る。この概要は、本発明の主要／重要な要素を識別すること、あるいは本発明の範囲を線
引きすることを意図していない。その唯一の目的は、本発明のいくつかの概念を、後に提
示するより詳細な説明の前置きとして、簡略化した形式で提供することにある。
【０００７】
一例では、ネットワーク装置が、アプリケーション動作モードから車両状態へのマッピ
ングを記憶し、車両状態は、例えば、車両が始動しているが移動中でない第１状態、及び
車両が移動中の第２状態である。上記ネットワーク装置は、無線送信される（車両の無線
送信機または車両に結合されたモバイル機器の送信機のいずれかによって送信される）、
特定アプリケーションが車両によって給電されるインタフェースを利用することの要求を
受信する。上記ネットワーク装置は、受信した要求が指定するアプリケーション識別子を
上記マッピングと比較する。次に、上記ネットワーク装置は、上記比較に応じて、車両イ
ンタフェースの一部分を識別し、制御ソフトウェアを車両上に信号伝達して、上記特定ア
プリケーションが、車両インタフェースの上記識別された部分のみにアクセスすることを
許可する。上記アプリケーションは、上記モバイル機器上に存在して車両インタフェース
を拡張インタフェースとして利用することができ、あるいは、上記アプリケーションは、
車両自体に存在することができる。
【０００８】
一例では、処理装置が、モバイル機器のアプリケーションが車両ヘッドユニットのリソ
ースを利用することの要求をリモートネットワーク装置へ送信し、この要求は、車両ヘッ
ドユニットの第１プロファイル及びモバイル機器の第２プロファイルを含む。この要求を
送信したことに応答して、処理装置は上記リモートネットワーク装置から命令を受信し、
この命令が車載ヘッドユニットの組込みソフトウェアによって実行されて、上記アプリケ
ーションが車載ヘッドユニットのリソースを利用することを可能にする。
【０００９】
一例では、上記組込みソフトウェアが、複数の人間−機械インタフェース（ＨＭＩ：Hu
man Machine Interface）スクリーンを含むテンプレートＨＭＩアプリケーションを具え
ている。この例では、上記テンプレートＨＭＩアプリケーションが、インタプリタ・コン
ポーネントなしで動作する。
【００１０】
一例では、上記モバイル機器を、車載ヘッドユニットが当該モバイル機器のリソースを
利用することの要求を許可するか否かを決定するように構成することができる。上記モバ
イル機器は、この要求を許可することを決定したことに応答して、当該モバイル機器のプ
ロキシを利用して、通信相手との接続を確立するように構成することができる。
【００１１】
本発明の追加的な態様及び利点は、以下の好適な実施形態の詳細な説明より明らかにな
り、この説明は、添付した図面を参照しながら進める。
【図面の簡単な説明】
【００１２】
【図１】ヘッドユニットを電話機アプリケーション用の拡張インタフェースとして安全かつインテリジェントな方法で使用する使用法を制御するシステムを例示する図である。
【図２Ａ】図１のソフトウェア３２の動作を示すフローチャートを例示する図である。
【図２Ｂ】図１のソフトウェア３２によって用いることができる接続方式を示すフローチャートを例示する図である。
【図３】図１のソフトウェア３０Ａ〜Ｂの動作を示すフローチャートを例示する図である。
【図４】安全かつインテリジェントな方法でアプリケーションを選択して車両に配信するシステムを例示する図である。
【図５】図４のソフトウェアの動作を示すフローチャートを例示する図である。
【図６】図４〜５に示すシステムを、より詳細に例示する図である。
【図７】ユーザの嗜好に応じて、安全かつインテリジェントな方法でアプリケーションを選択して車両に配信するシステムを例示する図である。
【図８】図７のソフトウェアの動作を示すフローチャートを例示する図である。
【図９】図７〜８に示すシステムをより詳細に例示する図である。
【図１０】ヘッドユニットの構成に応じて、ヘッドユニット・グラフィカル・インタフェースを選択するシステムを例示する図である。
【図１１】リモート計算許可を生成してヘッドユニットに送信するシステムを例示する図である。
【図１２】モバイル機器が、新たなアプリケーションの要求を発生するか、ユーザのウェブポータルが新たなアプリケーションを選択したことに応答して、グラフィカル・ユーザ・インタフェースの更新をヘッドユニットにプッシュするシステムを例示する図である。
【図１３Ａ】ペアレンタル・コントロール方式の事前動作を示すフローチャートを例示する図である。
【図１３Ｂ】ペアレンタル・コントロール方式の動作を示すフローチャートを例示する図である。
【図１４】車載ヘッドユニットをモバイル機器用の拡張インタフェースとして動作させるシステムを例示する図である。
【図１５】図１４のサーバー、車載ヘッドユニット、及びモバイル機器によって実行することができる動作の一例を示す信号伝達図である。
【図１６】本発明の実施形態による、携帯電話ユーザ・アプリケーションを、車載ヘッドユニットのＨＭＩを利用するように拡張するためのシステムを例示する図である。
【図１７】ハンドセット・アプリケーション・プロキシ（ＨＡＰ）アプリケーションに含まれるソフトウェア・コンポーネントの例を示す機能ブロック図である。
【図１８】統合型ＨＡＰアプリケーションを通した、ユーザ・アプリケーションプログラムと車載ヘッドユニットＨＭＩとの間のデータフローを例示する略図である。
【図１９】ソフトウェア・コンポーネント間でメッセージ伝達して、ヘッドユニットＨＭＩから受信したイベントを処理するためのメッセージ伝達の例を、携帯電話上でのユーザ・アプリケーションの実行に関連して示すメッセージ伝達図または信号伝達図を例示する図である。
【図２０】ソフトウェア・コンポーネント間でメッセージ伝達して、携帯電話上で実行中のユーザ・アプリケーションから受信したメッセージを処理し、必要に応じて、ヘッドユニット上のＨＭＩに対して更新メッセージを発生するためのメッセージ伝達の例を示すメッセージ伝達図または信号伝達図を例示する図である。
【図２１】汎用的な表示スクリーンを含むＨＭＩを有する車載ヘッドユニットの一例を示す図である。
【図２２】効率的なヘッドユニット通信統合のためのシステムを例示する図である。
【図２３】（SOCKet Secure：ソケット・セキュア）ＳＯＣＫＳプロキシ・プロトコルを利用した、自動車インフォテインメント・システム（ＩＶＩ）とバックエンド（リモートサーバー）との間のデータ交換を可能にするスマートホン・アプリケーションを例示する簡略化した通信図である。
【図２４】ＩＶＩとバックエンド（リモートサーバー）との間のデータ交換を可能にするためのトランスペアレント・プロキシ・サーバー機能を提供するスマートホン・アプリケーションを例示する簡略化した通信図である。
【図２５】ＳＯＣＫＳプロキシ・プロトコル・チェイニングを利用した、自動車ＩＶＩとバックエンド（リモートサーバー）との間のデータ交換を可能にするスマートホン・アプリケーションを例示する簡略化した通信図である。
【図２６】トランスペアレント・プロキシ・チェイニングを利用した、ＩＶＩとバックエンド（プロキシ・サーバー）との間のデータ交換を可能にするためのトランスペアレント・プロキシ・サーバー機能を提供するソフトウェア・アプリケーションを例示する簡略化した通信図である。
【発明を実施するための形態】
【００１３】
好適な実施形態の詳細な説明
一例では、ユーザが、自動車のヘッドユニットを電話機用の拡張インタフェースとして
使用する目的で、この電話機を、有線または無線接続を用いて、このヘッドユニットに接
続する。次の段落に説明するように、ユーザは、リモートサーバーを介した決定に応じて
、ヘッドユニットのインタフェースを用いて電話機上のアプリケーションを制御すること
ができる。同様に、次の段落に説明するように、ユーザは、リモートサーバーを介した決
定に応じて、ヘッドユニットのインタフェース上でアプリケーションの出力を視聴または
聴取することができる。
【００１４】
電話機上及びヘッドユニット上の新規なクライアント制御ソフトウェアが、電話機から
延びる無線接続上で、リモートサーバー上の新規なサーバー制御ソフトウェアとインタフ
ェース（相互作用）する。このクライアント制御ソフトウェアは、電話機アプリケーショ
ンを識別して、ヘッドユニットを拡張インタフェースとして利用する。
【００１５】
上記サーバー制御ソフトウェアは、識別した電話機アプリケーションを、リモートサー
バーがアクセス可能な１つ以上のデータベースと比較する。この比較に基づいて、上記サ
ーバー制御ソフトウェアは、識別したアプリケーションが、ヘッドユニットを拡張インタ
フェースとして利用することを許可されているか否かを判定し、許可されていれば、ヘッ
ドユニット・インタフェースのどの構成要素を、このアプリケーションが使用することを
許可されているかを判定する。上記サーバー制御ソフトウェアは、この判定に応じて電話
機及びヘッドユニットを制御することを、上記クライアント制御ソフトウェアに信号伝達
する。従って、ヘッドユニットの拡張インタフェースとしてのあらゆる利用を、安全かつ
インテリジェントな方法で制御することができる。
【００１６】
図１に、ヘッドユニットを電話用途向けの拡張インタフェースとして安全かつインテリ
ジェントな方法で使用する使用法を制御するシステムを例示する。
【００１７】
システム１００は、それぞれが携帯電話２０（または他のモバイル機器）上に設定され
たソフトウェア３０Ａ及び３０Ｂ、及びヘッドユニット２１（あるいは、ハンドルと一体
化されたユーザ・インタフェース、または座席の背もたれと一体化されたユーザ・インタ
フェースのような、自動車によって給電される他のインタフェース）を具えている。ソフ
トウェア３０Ａ及び３０Ｂは、リモートサーバー２２上に設定されたソフトウェア３２と
インタフェースして、電話機２０上で動作しているアプリケーション４０がヘッドユニッ
ト２１のＩ／Ｏリソース１〜４にアクセスする時点及び方法を調整し制御する。
【００１８】
図２Ａに、図１のソフトウェア３２の動作を示すフローチャートを例示する。
【００１９】
ブロック２０１では、ソフトウェア３２が、電話機２０上の特定アプリケーション４０
がヘッドユニット２１のインタフェース（入力２４のリソース１〜２及び出力２５のリソ
ース３〜４を含む）を利用することの要求を受信する。この要求は、自動車及び／または
ヘッドユニット２１のユーザに対応するユーザ識別子、特定アプリケーション４０に対応
するアプリケーション識別子、及び車両状態情報を含む。ユーザ識別子は、制御ソフトウ
ェア３０Ａが携帯電話１００において最初に起動された時点でユーザによって提供された
識別子、ユーザの電話番号、等とすることができる。
【００２０】
ブロック２０２では、ソフトウェア３２がユーザを認証する。このことは、ユーザ識別
子によって識別されるユーザが、ヘッドユニット２１を用いて電話機２０のインタフェー
スを拡張するサービスの加入者のデータベース１１に一致するか否かを判定することを含
むことができる。菱形（判定ブロック）２０３においてユーザが認証されない場合、ブロ
ック２０４Ａでは、ソフトウェア３２が、アプリケーション４０によるヘッドユニット２
１へのアクセスを阻止するように、ソフトウェア３０Ａ／Ｂに信号伝達する。システム１
００は、ブロック２０２が随意的であるように構成することができる。
【００２１】
さもなければ、ユーザが認証された場合、ブロック２０４では、ソフトウェア３２が、
アプリケーション識別子をアプリケーションのリスト１２（ホワイトリストとも称する）
と比較することによって、アプリケーション４０を認証する。リスト１２をバージョン番
号によって比較し、これにより、アプリケーション４０の特定バージョンをホワイトリス
ト上で識別すると共に、異なるバージョンを除外することができる。菱形（判定ブロック
）２０５において、特定アプリケーション４０（または特定バージョン）がリスト１２上
にない場合、ブロック２０４Ａでは、ソフトウェア３２が、アプリケーション４０による
ヘッドユニット２１へのアクセスを阻止するように、ソフトウェア３０Ａ〜Ｂに信号伝達
する。
【００２２】
さもなければ、アプリケーション４０が認証された場合、ブロック２０６では、ソフト
ウェア３２が、アプリケーション識別子及び現在の車両状態情報を、アプリケーション動
作モードのマッピング１５と比較する。図に示すように、マッピング１５は、リスト１２
のアプリケーション４０毎にエントリ１７を有する。各エントリ１７は、対応するアプリ
ケーション４０を詳述するマッピングを含む。例えば、アプリケーションＡ用のエントリ
１７は、車両状態「車両移動中≦Ｘ」をリソース１、２、及び４にマッピングする（即ち
、この車両状態で、アプリケーションＡは、スクリーン１、スピーカ２、及びマイクロホ
ン４のみにアクセスすることを許可される）のに対し、アプリケーションＣ用のエントリ
１７は、車両状態「車両移動中≦Ｘ」を、リソース２及び４のみにマッピングする（即ち
、アプリケーションＣは、スピーカ２及びマイクロホン４のみにアクセスすることを許可
される）。１つの現実世界の例は、ナビゲーション・アプリケーションＡ及びビデオゲー
ム・アプリケーションＣとすることができる。これらのアプリケーションでは、同乗者が
存在する際でも、システム１００はビデオゲーム・アプリケーションＣをヘッドユニット
２１のスクリーン１上に表示することを可能にしない、というのは、このことは、過大に
運転者の気を散らすものと考えられるからであり、これに対し、アプリケーションＡはヘ
ッドユニット２１のスクリーン１上に表示することができる。現実世界の他のアプリケー
ションは、座席の背後に取り付けられたヘッドユニット及びディスプレイのような複数の
インタフェースを有する車両とすることができる。あるアプリケーションがヘッドユニッ
トへのアクセスを許可されていない状態下で、同じアプリケーションが後部座席のディス
プレイにアクセスすることを許可することができる。
【００２３】
他の例では、マッピング１５を携帯電話２０上に記憶することができることは明らかで
ある。この場合、前の段落で説明した比較を、制御ソフトウェア３０Ａによって実行する
ことができる。こうした場合、制御ソフトウェア３０Ａは、ヘッドユニット２１と通信す
ることによって、現在の車両状態をチェックする。
【００２４】
ブロック２０７では、ソフトウェア３２が、上記比較に応じて、ヘッドユニット２１の
Ｉ／Ｏリソースの一部または全部の集合を識別する。ブロック２０８では、特定アプリケ
ーション４０に、上記識別された集合のうちＩ／Ｏリソース１〜４のみへのアクセスを行
わせるように、ソフトウェア３２がリモートソフトウェアに信号伝達する。一例では、こ
うした信号伝達が、携帯電話２０上のソフトウェア３０Ａを制御し、これにより、携帯電
話２０から送信されるすべてのアクセス要求が上記識別されたＩ／Ｏリソースの集合に適
合することを含むことができる。他の例では、こうした信号伝達が、ヘッドユニット２１
上のソフトウェアを制御して、携帯電話２０から送信されるアクセス要求を、単にヘッド
ユニット２１上のＩ／Ｏリソースを無効にすることによるようなあらゆる方法で阻止する
ことを含むことができる。さらに他の例では、こうした信号伝達が、ソフトウェア３０Ａ
及びソフトウェア３０Ｂを共に制御することを含むことができる。
【００２５】
図２Ｂに、図１のソフトウェア３０Ｂが用いることができる接続方式を示すフローチャ
ートを例示する。接続方式は、図２Ａに示す方式に加えて利用することができる。
【００２６】
ブロック２０９では、ソフトウェア３０Ｂが、上記識別された集合のＩ／Ｏリソースの
いずれかが現在使用中であるか否かを判定する。菱形（判定ブロック）２１０において、
いずれも使用中でなければ、ブロック２１１Ａでは、ソフトウェア３０Ｂが、特定アプリ
ケーションに、上記識別された集合のＩ／Ｏリソースのみへのアクセスを行わせる。
【００２７】
さもなければ、上記集合のうち少なくとも１つのリソースが使用中であれば、ブロック
２１１Ｂでは、ソフトウェア３０Ｂが、上記識別された集合のうち使用中のリソース毎に
、アプリケーションの「リソースによるランキング１３」を識別する。このことを図１に
示し、ここでは、リソース１〜４毎にランキングが存在する。ブロック２１２では、ソフ
トウェア３０Ｂが、アプリケーション識別子をリソースによるランキング１３と比較して
、アプリケーション４０が、識別された部分集合の使用中のリソースのいずれかに対する
優先権（プライオリティ）を有するか否かを判定する（このことは、信号伝達によって実
行することができる、というのは、ランキング１３がリモートサーバー上に示されている
か、あるいは、このランキングが、以前の処理において車両インタフェースに送信されて
いるからである）。この比較は、特定の使用中リソースを現在使用しているアプリケーシ
ョンが、この使用中リソースを要求しているアプリケーションよりも高い優先権であると
考えられるか低い優先権であると考えられるかを示す。ブロック２１３では、ソフトウェ
ア３０Ｂが、特定アプリケーション４０に、上記識別された集合のＩ／Ｏリソース１〜４
のうち、現在使用中でないか、より低い優先権のアプリケーションが使用中であるＩ／Ｏ
リソースのみへのアクセスを行わせる。
【００２８】
図３に、図１のソフトウェア３０Ａ〜Ｂの動作を示すフローチャートを例示する。
【００２９】
ブロック３０１では、電話機２０上の特定アプリケーション４０がヘッドユニット２１
のインタフェースを利用することの要求を、ソフトウェア３０Ａ〜Ｂが送信する。ブロッ
ク３０２では、アプリケーション４０がこの時点でヘッドユニット２１にアクセスするこ
とを許可されているか否か、及び許可されていれば、リソース１〜４のどれを利用するこ
とができるかを示す戻り信号を、ソフトウェア３０Ａ〜Ｂが受信する。菱形（判定ブロッ
ク）３０３において、アプリケーション４０が許可されていない場合、ブロック３０４Ａ
では、アプリケーション４０がヘッドユニットにアクセスすることを許可されていないこ
との通知を、ソフトウェア３０Ａ〜Ｂが出力する。この通知は、携帯電話２０またはヘッ
ドユニット２１、あるいは両者によって出力することができる。
【００３０】
さもなければ、菱形（判定ブロック）３０３においてアプリケーション４０が許可され
ている場合、ブロック３０４Ｂでは、ソフトウェア３０Ａ〜Ｂが携帯電話２０及びヘッド
ユニット２１を制御して、アプリケーション４０を上記識別されたリソースに拡張させる
。衝突（コンフリクト）が原因で、（それぞれのマッピング１７より）アプリケーション
４０にとって可能なリソースの部分集合しか利用されていない場合、アプリケーション３
０Ａ〜Ｂは、通知を発生して、より高い優先権のアプリケーションを起動する前に、より
低い優先権のアプリケーションが一時停止していることについて運転者に警告することが
できる。他の例では、リソースが現在、より低い優先権のアプリケーションによって現在
使用されている場合、ソフトウェア３０Ａ〜Ｂは、より低い優先権のアプリケーションを
自動的に一時停止／終了して、より高い優先権のアプリケーションを、要求されたリソー
スを用いて起動することを可能にすることができる。
【００３１】
アプリケーション４０をヘッドユニット２１に拡張することができるものと判定された
場合、サーバー２２は、対応する「コントロールパネル」ソフトウェアをヘッドユニット
にダウンロードして、アプリケーション４０を制御することができる。要求されているア
プリケーションに基づいて、このソフトウェアをヘッドユニット２１にダウンロードした
ことによって、新たなアプリケーション、あるいは既存のアプリケーションに対する更新
が利用可能になった際に、サービスプロバイダは、「コントロールパネル」を相応にカス
タマイズし更新することができる。ヘッドユニットは、ウェブコード・レンダラを有して
、「コントロールパネル」ソフトウェアを表示することができる。
【００３２】
図１を参照すれば、ソフトウェア３０Ａ〜Ｂは、電話機２０から延びる無線接続上でソ
フトウェア３２とインタフェースする。この無線接続は、パケットデータ接続（ＧＰＲＳ
（General Packet Radio Service：汎用パケット無線サービス）、ＥＤＧＥ（Enhanced D
ata GSM Environment：拡張データＧＳＭ環境）、ＥＶＤＯ（Evolution Data Only：高速
データ専用）、ＵＭＴＳ（Universal Mobile Telecommunication System：汎用モバイル
通信システム）、ＷｉＭＡＸ（Worldwide Interoperability for Microwave Access：マ
イクロ波アクセス用の全世界的相互運用性）、Ｗｉ−Ｆｉ（Wireless Fidelity：無線忠
実性）、等を含むが、これらに限定されない）、ショート・メッセージ・サービス（ＳＭ
Ｓ：Short Message Service）、あるいは電話機２０及びリモートサーバー２２上の帯域
内信号伝達モデムを利用することができ、これについては米国特許第６１４４３３６号明
細書（特許文献１）、米国特許第６６９０６８１号明細書（特許文献２）、及び米国特許
第６４９３３３８号明細書（特許文献３）に記載されている。
【００３３】
なお、図１をさらに参照すれば、携帯電話２０は、ＵＳＢ（Universal Serial Bus：
汎用シリアルバス）接続、ブルートゥース（登録商標）接続、またはＷｉＦｉ接続のよう
な接続を用いることによってヘッドユニット２１に結合することができる。しかし、これ
らは単なる例であり、他の場合、異なる接続及び／またはプロトコルが、電話機２０のア
プリケーション４０がヘッドユニット２１のインタフェースを利用するのに適しているこ
とがある。
【００３４】
マッピング１５は、あらゆる車両状態を有することができ、例示した４つの例は、一部
の例に過ぎないことは明らかである。例えば、他の車両状態は、車両が速度「Ｘ」以上で
移動し、かつ同乗者が存在するか否かとすることができる。
【００３５】
ヘッドユニット２１が、図示する例の全部に満たないリソースを含むことができ、ある
いは、図示していない他のリソースを含むことができることは明らかである。例えば、他
の可能なＩ／Ｏリソース構成要素は、文字−音声構成要素である。
【００３６】
図示する例では、システム１００によるインテリジェットな決定に基づいて、ヘッドユ
ニット２１上に存在するあらゆるリソースの第１部分集合に、第１アプリケーションがア
クセスすることを許可することができるのに対し、これらのリソースの第２部分集合、あ
るいは全部のリソースに、第２アプリケーションがアクセスすることを許可することがで
きる。
【００３７】
図示するように、アプリケーション４０は「リソースによって」ランク付けすることが
でき、あるいは、全部のアプリケーション４０を含む単一のランク付けが存在することが
できる。システム１００は、図に示す「リソースによる」ランク付けで実現されるが、本
明細書に記載する概念は、リソースとは無関係にアプリケーションをランク付けする他の
システムにおいて実現することができることが明らかである。
【００３８】
図４に、安全かつインテリジェントな方法でアプリケーションを選択して車両に配信す
るシステムを例示する。
【００３９】
前に説明した図１のシステムと図４のシステムとの１つの相違は、アプリケーションの
インストール場所である。図１のシステム１００内のアプリケーションＡ〜Ｃが、（ヘッ
ドユニット２１または車両によって給電される他のインタフェースを拡張インタフェース
として使用する）携帯電話２０上にインストールされて動作するのに対し、図４のシステ
ム２００内のアプリケーションＪ〜Ｌは、ヘッドユニット２２１または車両によって給電
される他の構成要素上にインストールされる。図４のシステム２００では、ソフトウェア
２３０〜２３２が、ヘッドユニット２２１上にインストールすることができるアプリケー
ションを選択し、選択したアプリケーションの車両への配信を制御することができる。
【００４０】
以下の段落でシステム２００の詳細を説明する前に、図１〜３において説明したシステ
ム１００の構造及び機能を、システム２００（図４〜６）の構造及び機能と組み合わせて
、単一のシステムにすることができることは明らかである。例えば、単一のシステムが、
１つの携帯電話上にインストールされ、車両のインタフェースを拡張インタフェースとし
て用いるいくつかのアプリケーション、及び車両の構成要素上にインストールされたいく
つかのアプリケーションを含むことができる。
【００４１】
図５に、図４のソフトウェアの動作を示すフローチャートを例示する。
【００４２】
ブロック５０１では、車両が始動されたことに応答して、制御ソフトウェア２３０が、
車両の始動を示す信号２４４をサーバー２２２に送信する。信号２４４は、ＵＳＢ通信ま
たはブルートゥース（登録商標）通信のようなローカル接続上で送信し、モバイル機器２
２０によって中継して、無線通信ネットワーク上で送信することができる。
【００４３】
ブロック５０２では、ソフトウェア２２２が、車両に関連するダウンロード・ディレク
トリ２３９（時として「サンドボックス（砂箱）とも称される」）をチェックして、車両
にダウンロードすべきアプリケーションが存在するか否かを判定する。ダウンロード・デ
ィレクトリ２３９内に存在するアプリケーションをインテリジェントに選択する方式は、
後に図６を参照して詳細に説明する。
【００４４】
ソフトウェア２３２によるチェックが、ダウンロード・ディレクトリ２３９が少なくと
も１つのアプリケーションを含むことを示す場合、処理を継続する。差し当たり、説明目
的で、ダウンロード・ディレクトリ２３９がアプリケーション２４０（Ｊ〜Ｌ）を含むも
のと仮定する。従って、ブロック５０３では、ソフトウェア２３２が、信号伝達（シグナ
リング）２４５を発生し送信して、携帯電話２２０上のＩＰ（Internet Protocol：イン
ターネット・プロトコル）ゲートウェイ・ソフトウェア２３１を、アプリケーションをヘ
ッドユニット２２１に転送するためのＩＰゲートウェイとして動作させる。一例では、信
号伝達２４５が、ブロック５０２における判定に応答して、ソフトウェア２３１を携帯電
話２２０に動的にロードして、ソフトウェア２３１を携帯電話２２０上で車両へのダウン
ロード用に動作させるための通信を含む。ソフトウェア２３１が既に携帯電話２２０上に
ロードされ、ＩＰゲートウェイ動作ができる状態である場合、信号伝達２４５は行われな
くてもよい。他の例では、車両の始動を検出したことに応答して、信号伝達２３５が、ヘ
ッドユニット２２１上の制御ソフトウェア２３０から発生することができる。
【００４５】
ブロック５０４では、ソフトウェア２３２が、ＩＰパケット２５０を発生し送信して、
アプリケーション２４０を車両上にダウンロードする。ＩＰパケット２５０は、携帯電話
２２０によって受信され、ソフトウェア２３１の動作によってヘッドユニット２２１へ転
送される。ブロック５０５では、ソフトウェア２３０がＩＰパケット２３０を受信して、
アプリケーション２４０（Ｊ〜Ｌ）を車両上にインストールする（インストールは、ヘッ
ドユニット２２１の構成要素上または他の車両構成要素上にすることができる）。
【００４６】
その後に、車両のユーザが、ヘッドユニット２２１をインタフェースとして用いて、ア
プリケーションＪ〜Ｌを動作させることができる。ソフトウェア２３０及び２３２は、図
１〜３に記載された原理のいずれかによって動作することができることは明らかである。
例えば、ソフトウェア２３０及び２３２は、現在の車両状態に応じた有効なアプリケーシ
ョンによって、ヘッドユニット２２１のＩ／Ｏリソースの利用を管理することができる。
他の例として、アプリケーションが車両上及びモバイル機器上に共にインストールされた
システムでは、ソフトウェア２３０及び２３２が、テーブル（表）１３（図１）と同様の
アプリケーションランク付け／優先権テーブル中の車両インタフェースを利用するすべて
のアプリケーションを含むことができる。
【００４７】
一例では、ヘッドユニット２２１が、ソフトウェア２３０を介して制御されるウェブコ
ード・レンダラ２９９、例えばＨＴＭＬ（Hyper text markup Language：ハイパーテキス
ト・マークアップ言語）レンダラを含む。ウェブコード・レンダラ２９９は、ＨＴＭＬコ
ードを表示するように構成されているが、ブラウザとは異なり、ユーザがウェブ上の場所
を自由にナビゲートすることは可能にしない。具体的には、ウェブコード・レンダラ２９
９は、プロバイダが許可したアプリケーションのみ、例えば、サーバー２２２によって指
定されたアプリケーションのみを表示する。
【００４８】
上述したフローチャートが、車両上にインストールされたアプリケーションを更新する
ことに応えることは明らかである。車両に特定アプリケーションをロードし、これにより
、車両上にインストールされたアプリケーションの一部は上記フローチャートに従ってダ
ウンロードするのに対し、他のものは製造中にインストールすることもできる。
【００４９】
従って、上述した原理に基づけば、どのアプリケーションも車両上にロードせずに車両
を製造することができるが、その代わりに、運転者が車両内に存在する際に、アプリケー
ションを車両にダウンロードすることができる。車両にダウンロードされるアプリケーシ
ョンの種類は、運転者によって提供されネットワーク・サーバー内に規定された嗜好によ
って支配される。
【００５０】
図６に、図４〜５に示すシステムをより詳細に例示する。
【００５１】
サーバー２２２が、車両毎にダウンロードされることを待機しているアプリケーション
のダウンロード・ディレクトリ２３９を含むことは、前に説明した。図６は、ダウンロー
ド・ディレクトリ２３９内のアプリケーションの選択に関与することができるユーザのウ
ェブポータル６０１、６０４、及び６０５を例示し、これらのウェブポータル６０１、６
０４、及び６０５の例を記載する。
【００５２】
車両のＯＥＭ（Original Equipment Manufacturer：相手先商品製造業者）のようなプ
ロバイダが、ウェブポータル６０１を運用する。コンピュータ端末６２５のようなインタ
フェースを用いて、プロバイダは、ウェブポータル６０１のアプリケーション選択部６０
８を通信６５０により制御して、車両上にインストールすることができるすべてのアプリ
ケーションのリスト６０９から、被制御のアプリケーション・リスト６１０を構築する。
一般に、リスト６０９からリスト６１０を構築することは、プロバイダの技術的見地及び
／または事業上の見地からアプリケーションを検証することを含む。
【００５３】
また、プロバイダは、通信６５１を送信して、特定車両上にインストールすべきアプリ
ケーションを被制御のリスト６１０から選択する。これらの選択は、例えば車両モデルを
アプリケーションにマッピングすることに基づくことができる。これらの選択６５２は、
ダウンロード・ディレクトリ２３９内に供給される。
【００５４】
すべての利用可能なアプリケーションのリスト６０９に関して、プロバイダ及び／また
はサードパーティが開発したアプリケーションによって、このリストを組み立てることが
できることは明らかである。アプリケーションを提供するサードパーティの場合、このサ
ードパーティは、ウェブポータル６０４（一例では、プロバイダによって運用されるウェ
ブサーバーをホストとする）のアプリケーション提出部６１８を用いて、リスト６０９中
に含めるべきアプリケーション６４９を提出する。
【００５５】
車両のユーザは、コンピュータ端末６２６を用いて、例えばモバイル機器またはデスク
トップ・コンピュータのようなインターネットにアクセス可能なコンピュータ装置を用い
て、ダウンロード・ディレクトリ２３９内に含めるべきアプリケーションを選択すること
もできる。コンピュータ端末６２６は、ユーザのウェブポータル６０５（一例では、プロ
バイダによって運用されるウェブサーバーをホストとする）のアプリケーション選択部６
２８にアクセスして、自分の車両にインストールすることができるアプリケーションンの
被制御のリスト６１０を視る。次に、ユーザは、通信６６１を送信して、ユーザが自分の
車両上にインストールしたいアプリケーションを、被制御のリスト６１０から選択するこ
とができる。これらの選択６６２は、ダウンロード・ディレクトリ２３９内に供給される
。
【００５６】
ユーザのウェブポータル６０５は、ユーザが特定アプリケーションをダウンロード・デ
ィレクトリ２３９から除去することを可能にするように構成することもでき、例えば、ユ
ーザは、プロバイダを介してダウンロード・ディレクトリに追加された、プロバイダによ
って選択され、プロバイダを介してダウンロード・ディレクトリ２３９に追加されたアプ
リケーションのうちの１つを除去したいことがある。この除去は、既にディレクトリ２３
９に送信されたアプリケーション６５２の削除によって、あるいは、特定アプリケーショ
ンが初めてダウンロード・ディレクトリ２３９に追加される前に、こうしたアプリケーシ
ョンを望まないことを示すことによって行うことができる。
【００５７】
以上のことによれば、アプリケーションを車両毎のダウンロード・ディレクトリ２３９
内に蓄積することができる。車両の始動時に、こうしたアプリケーションを車両上にダウ
ンロードしてインストールすることができる。従って、ダウンロード・ディレクトリ２３
９は、次回の車両始動までに、新たなアプリケーションを蓄積することができる。
【００５８】
ウェブポータル６０５のインタフェースと同様のインタフェースを、車両のヘッドユニ
ット上に表示することができる。そして、ユーザは、こうしたインタフェースから選択を
行って、被制御のリスト６１０からアプリケーションを選択することができる。このイン
タフェースから選択が行われると、選択されたアプリケーションは、ダウンロード・ディ
レクトリ内に置かれる代わりに、直ちに車両にダウンロードすることができる。
【００５９】
図７に、ユーザの嗜好に応じて、安全かつインテリジェントな方法でアプリケーション
を選択して車両に配信するシステムを例示する。
【００６０】
前に説明した図１のシステムと図７のシステムとの１つの相違は、アプリケーションの
インストール場所である。図１のシステム１００におけるアプリケーションＡ〜Ｃは、携
帯電話２０上にインストールされて（ヘッドユニット２１、あるいは車両によって給電さ
れる他のインタフェースを拡張インタフェースとして用いて）動作するのに対し、図７の
システム３００におけるアプリケーションＭ〜Ｐ／Ｑ〜Ｓは、ヘッドユニット３２１上、
あるいは車両によって給電される他の構成要素上にインストールされる。図７のシステム
３００では、ソフトウェア３３０〜３３２は、プロバイダが、ヘッドユニット３２１上に
インストールすることができるアプリケーションを選択し、選択したアプリケーションの
車両への配信を制御することを可能にする。
【００６１】
以下の段落で、システム３００の細部を詳細に説明する前に、図１〜６に記載されたシ
ステム１００及び２００の構造及び機能をシステム３００（図７〜８）の構造及び機能と
組み合わせて、単一のシステムにすることができることは明らかである。例えば、単一の
システムが、車両のインタフェースを拡張インタフェースとして用いる携帯電話上にイン
ストールされた一部のアプリケーションを含み、かつ、車両の構成要素上にインストール
された一部のアプリケーションを含むことができる。
【００６２】
図８に、図７のソフトウェアの動作を示すフローチャートを例示する。
【００６３】
ブロック８０１では、ヘッドユニット３２１が、携帯電話３２０のようなモバイル機器
に通信結合されている。一例では、接続５４０が、ヘッドユニット３２１と携帯電話３２
０とのブルートゥース（登録商標）ペアリングを介して確立される。このブルートゥース
（登録商標）ペアリングは、車両が始動されたこと（ヘッドユニットを起動させて、ブル
ートゥース（登録商標）装置を検索させる）に応答して行うことができるが、ブルートゥ
ース・ペアリングは、携帯電話３２０が起動されること、携帯電話３２０がヘッドユニッ
ト３２１の範囲内に持ち込まれること、他のブルートゥース（登録商標）機器がヘッドユ
ニット３２１から接続を切られた後の再ペアリングのような他の状況から生じることがで
きることは明らかである。他の例では、ユーザがＵＳＢ接続を用いて携帯電話３２０をヘ
ッドユニット３２１に接続することによって、こうした通信接続を確立することができる
。
【００６４】
ブロック８０２では、制御ソフトウェア３３０が携帯電話３２０の電話番号にアクセス
する。携帯電話は、発呼プランに加入することに関連した特定電話番号で起動され、この
特定電話番号は、制御ソフトウェア３３０が携帯電話３２０から読み出す電話番号である
ことは明らかである。一例では、この特定電話番号を取得するための信号伝達５４２を、
ブルートゥース（登録商標）信号伝達を用いて実行する。
【００６５】
ブロック８０３では、制御ソフトウェア３３０が信号伝達５４３をサーバー３２２に送
信する。信号伝達５４３は、ＵＳＢ接続、ブルートゥース（登録商標）接続、あるいはＷ
ｉ−Ｆｉ接続のようなローカル接続上に送信し、モバイル機器３２０によって中継して、
無線通信ネットワーク上で送信することができる。信号伝達５４３の内容は、図４に関し
てより詳細に前述した信号２４４と同様にすることができるが、これに加えて、取得した
電話番号を提供することができる。
【００６６】
ブロック８０４では、制御ソフトウェア３３２が、信号伝達５４３に含まれる電話番号
をマッピング３５０と比較する。このマッピングは、この特定のヘッドユニット３２１を
介してアクセス可能な複数のダウンロード・ディレクトリＡ〜Ｂの各々を、特定の電話番
号に関係付ける。例えば、このマッピングでは、第１の電話番号がダウンロード・ディレ
クトリＡに関係付けられ。第２の電話番号がダウンロード・ディレクトリＢに関係付けら
れている。制御ソフトウェア３２２は、受信した電話番号とマッピング３５０との比較に
基づいて、ダウンロード・ディレクトリＡ〜Ｂの一方を選択する。
【００６７】
次に、ソフトウェア３２２は、ダウンロード・ディレクトリＡ〜Ｂのうち選択した方を
チェックして、この選択したディレクトリ内に現在記憶されているアプリケーションが存
在するか否かを判定する。ダウンロード・ディレクトリＡ〜Ｂ内に存在するアプリケーシ
ョンをインテリジェントに選択する方式は、後に図９を参照して詳細に説明する。差し当
たり、説明目的で、ダウンロード・ディレクトリ３３９Ａ及び３３９Ｂが、現在、それぞ
れアプリケーション３４０Ａ（Ｍ〜Ｐ）及び３４０Ｂ（Ｑ〜Ｓ）を含むものと仮定する。
【００６８】
前の段落で簡単に注記したように、ダウンロード・ディレクトリＡ〜Ｂは、それぞれ、
アプリケーション３４０Ａ及び３４０Ｂに加えて、ヘッドユニット・フロントエンド設定
Ａ〜Ｂを含む。設定Ａ〜Ｂは、ＨＴＭＬコード、あるいはウェブコード・レンダラ３９９
に適合する他のウェブコードとして記憶することができる。ヘッドユニット・フロントエ
ンド設定Ａ〜Ｂのどちらがヘッドユニット３２１にダウンロードされるかに応じて、ヘッ
ドユニット３２１のディスプレイ３８０が、異なるグラフィカル・ユーザ・インタフェー
スを表示する。異なるウェブコードファイル３６９Ａ及び３６９Ｂの各々が、ディスプレ
イ３８０及びレンダラ３９９を用いて表示された際に、異なるグラフィカル・ユーザ・イ
ンタフェースを生成する。例えば、各グラフィカル・ユーザ・インタフェースが、ユーザ
が選択した特定の壁紙（画面上の背景）のようなユーザがカスタマイズしたそれ自身の設
定を有することができる。異なるヘッドユニット・フロントエンド設定を生成する方式は
、後に図９を参照して詳細に説明する。
【００６９】
ブロック８０５では、図４に記載した方式と同様に、ソフトウェア３３２が信号伝達を
発生し送信して、携帯電話３２０上のＩＰゲートウェイ・ソフトウェア３３１を、アプリ
ケーションをヘッドユニット３２１に転送するためのＩＰゲートウェイとして動作させる
。この例では、図４と同様に、こうした信号伝達が、ソフトウェア３３１を携帯電話３２
０に動的にロードし、携帯電話３２０上で動作させて車両にダウンロードするための通信
を含む。ソフトウェア３３１が既に携帯電話３２０上にダウンロードされて、ＩＰゲート
ウェイ動作ができる状態にある場合には、この信号伝達を行わないでよい。他の例では、
接続５４０が確立された後に、信号伝達３４５がヘッドユニット３２１上の制御ソフトウ
ェア３３０から発生することができる。
【００７０】
ブロック８０６では、ソフトウェア３３２がＩＰパケット５４５を発生し送信して、上
記ディレクトリのうち選択したものからのデータ、例えばアプリケーションＭ〜Ｐ及び設
定Ａ、またはアプリケーションＱ〜Ｓ及び設定Ｂのいずれかを、車両上にダウンロードす
る。ＩＰパケット５４５は、携帯電話３２０によって受信されて、ソフトウェア３３１の
動作によってヘッドユニット３２１に転送される。この特定の例示では、ＩＰパケット５
４５がアプリケーション及びグラフィカル・ユーザ・インタフェース用の設定を共に含む
が、他のシナリオでは、ＩＰパケット５４５がアプリケーションまたは設定のいずれかを
含むことができることは明らかである。また、現在、選択したダウンロード・ディレクト
リ内にアプリケーションが存在せず、ダウンロード・ディレクトリ内に記憶された設定に
、前回のダウンロード以後に変更が加えられていない場合、ＩＰパケット５４５を送信し
なくてもよいことも明らかである。
【００７１】
ブロック８０７では、ソフトウェア３３０がＩＰパケット５４５を受信して、ＩＰパケ
ット５４５内に含まれるアプリケーションを車両上にインストールする（インストールは
、ヘッドユニット３２１の構成要素上または他の車両の構成要素上にすることができる）
。また、ソフトウェア３３０は、ウェブコード・レンダラ３９９を用いて、ＩＰパケット
５４５からの設定を処理して、検出した電話番号に基づいて特定のグラフィカル・ユーザ
・インタフェースを発生する。
【００７２】
その後に、ディスプレイ３８０を通したグラフィカル・ユーザ・インタフェースの出力
は、選択したダウンロード・ディレクトリに記憶された設定Ａ〜Ｂの一方に相当する。車
両のユーザは、ヘッドユニット３２１をインタフェースとして用いて、インストールされ
たアプリケーションＭ〜ＰまたはＱ〜Ｓを動作させることができる。
【００７３】
ソフトウェア３３０及び３３２が、図１〜３に記載した原理のいずれかに従って動作す
ることができることは明らかである。例えば、ソフトウェア３３０及び３３２は、現在の
車両状態に応じた有効なアプリケーションによって、ヘッドユニット３２１のＩ／Ｏリソ
ースの利用を管理することができる。他の例として、アプリケーションが車両上及びモバ
イル機器上に共にインストールされているシステムでは、ソフトウェア３３０及び３３２
が、テーブル１３（図１）と同様のアプリケーションランク付け／優先権テーブル中の車
両インタフェースを利用するすべてのアプリケーションを含むことができる。
【００７４】
上述した例では、制御ソフトウェア３３０が、携帯電話３２０の電話番号にアクセスし
て、携帯電話３２０を他の携帯電話から一意的に識別する。他の例では、ヘッドユニット
３２１上の制御ソフトウェアが、通信結合された携帯電話上の異なる値にアクセスして、
この携帯電話を他の携帯電話から一意的に識別することができる。他の例では、こうした
値がマッピング中に用いられることは明らかであり、例えば、他の値が物理アドレスであ
る場合、マッピングが、ダウンロードしたディレクトリに関連付けられた物理アドレスを
含む。
【００７５】
上述した例では、制御ソフトウェア３３０が、アクセスした一意的識別子（この例では
電話番号）をサーバー３２２へ送信する。他の例では、マッピング３５０を車両上に記憶
することができる。こうした場合、制御ソフトウェア３３０は、上記比較に応じて、マッ
ピング中に挙げられた特定のダウンロード・ディレクトリを識別して、この特定のダウン
ロードを指定する識別子をサーバー２２へ送信する。次に、サーバー３２２は、識別され
たダウンロード・ディレクトリからのデータを送信するＩＰパケット５４５で応答する。
【００７６】
図９に、図７〜８に示すシステムをより詳細に例示する。
【００７７】
サーバー３２２が、ダウンロードされることを待機しているアプリケーションの複数の
ダウンロード・ディレクトリ３３９Ａ〜Ｂを含むことは、前に説明した。図９は、ダウン
ロード・ディレクトリ３３９Ａ〜Ｂを生成すること、及びディレクトリ毎のアプリケーシ
ョンの選択に関与することができるユーザのウェブポータル９０５を例示し、ウェブポー
タル９０５の使用法の例を記載する。
【００７８】
車両のユーザは、ユーザのウェブポータル９０５のプロファイル生成部９３０を用いて
、車両に対応する複数のプロファイルを生成することができる。プロファイルは、車両を
使用することができる人物毎に生成することができる。フィールド９２７は、各人物に対
応する一意的な電話番号または他の一意的識別子を要求する。各人物の名前または人物毎
の他の情報を、電話番号毎に集めることができる。プロファイル生成後またはプロファイ
ル生成中に、サーバー３２２はプロファイル毎のダウンロード・ディレクトリを生成して
、番号／ディレクトリの組合せ毎にマッピング３５０を更新する。一部の例では、ユーザ
が生成したプロファイルをランク付けし、これにより、ヘッドユニットをモバイル機器の
うち２つ以上に同時に結合することができる場合（このことが可能であるか否かは接続プ
ロトコル次第である）、対応するプロファイルのうちより高くランク付けされたものを使
用することを可能にするように、プロファイル生成部９３０を構成することができる。
【００７９】
プロファイル生成中またはプロファイル生成後に、ウェブポータル９０５は、ダウンロ
ード・ディレクトリ３３９Ａ〜Ｂに含めるべきアプリケーションを、コンピュータ端末９
２６を用いて、例えばモバイル機器またはデスクトップ・コンピュータのようなインター
ネットにアクセス可能なあらゆるコンピュータ装置を用いて選択するように動作すること
ができる。コンピュータ端末９２６は、ユーザのウェブポータル９０５（一例では、プロ
バイダが運用するウェブサーバーをホストとする）のアプリケーション選択部９２８にア
クセスして、車両上にインストールすることができる被制御のアプリケーション・リスト
を見ることができる。次に、ユーザは、通信９６１を送信して、ユーザが自分の車両上に
インストールしたいアプリケーションを、ディレクトリ毎に選択することができる。これ
らの選択９６２は、それぞれ、ダウンロード・ディレクトリ３３９Ａ〜Ｂ内に、ディレク
トリ毎に供給される。
【００８０】
ユーザのウェブポータル９０５は、ユーザが特定アプリケーションをダウンロード・デ
ィレクトリ３３９Ａ〜Ｂから除去するように構成することもでき、例えば、ユーザは、プ
ロバイダが選択し、プロバイダを介してディレクトリ毎に、ダウンロード・ディレクトリ
３３９Ａまたは３３９Ｂに追加されたアプリケーション９５２を除去したいことがある。
除去は、既にダウンロード・ディレクトリ３３９Ａまたは３３９Ｂに送信されたアプリケ
ーションの削除によって、あるいは、特定アプリケーションが初めてダウンリード・ディ
レクトリ３３９Ａまたは３３９Ｂに追加される前に、こうしたアプリケーションを望まな
いことを示すことによって行うことができる。
【００８１】
ユーザのウェブポータル９０５は、ヘッドユニット・フロントエンド・カスタマイズ部
９２８を含むこともできる。ヘッドユニット・フロントエンド・カスタマイズ部９２８は
、新たな設定３６９Ａ〜Ｂをダウンロード・ディレクトリ３３９Ａ〜Ｂに追加することを
可能にし、各人物の設定は、当該人物の要求に応じてカスタマイズされている。例えば、
第１の壁紙背景をダウンロード・ディレクトリ３３９Ａに追加し、第２の異なる壁紙背景
をダウンロード・ディレクトリ３３９Ｂに追加することができる。他のカスタマイズは、
カスタマイズされたグラフィカル・インタフェースのボタン、カスタマイズされたグラフ
ィカル・ユーザ・インタフェースのレイアウト、カスタム（特注）画像、等を含むことが
できる。
【００８２】
以上のことによれば、アプリケーションを車両毎のダウンロード・ディレクトリ３３９
Ａ〜Ｂに、ディレクトリ毎に蓄積することができる。ヘッドユニットがモバイル機器のう
ち特定のものと結合すると、ダウンロード・ディレクトリ３３９Ａ〜Ｂのうち対応するも
のからのデータを、車両上にダウンロードしインストールして、カスタマイズされたアプ
リケーションの集合及びカスタマイズされたユーザ・インタフェースを提供することがで
きる。
【００８３】
ウェブポータル９０５のインタフェースと同様のインタフェースを車両のヘッドユニッ
ト上に表示することができることは明らかである。次に、ユーザは、こうしたインタフェ
ースから選択を行って、上記被制御のリストからアプリケーションを選択することができ
る。このインタフェースから選択が行われると、選択されたアプリケーションは、ダウン
ロード・ディレクトリ内に置かれる代わりに、直ちに車両にダウンロードすることができ
る。
【００８４】
図１０に、ヘッドユニットの構成に応じて、ヘッドユニット・グラフィカル・インタフ
ェースを選択するシステムを例示する。
【００８５】
システム１０００は、サーバー１０２２及びヘッドユニット１０２１を含み、これらは
、前に説明したサーバー及びヘッドユニットのいずれかと同様の構成要素を含むことがで
きる。サーバー１０２２とヘッドユニット１０２１が、ヘッドユニット１０２１に結合さ
れたモバイル機器（図示せず）を用いて通信することは明らかである。ヘッドユニット１
０２１は制御ソフトウェア１０３０を含み、サーバー１０２２は制御ソフトウェア１０３
２を含む。
【００８６】
ソフトウェア１０３２は、例えばヘッドユニット１０２１を調べて（１０８１）情報を
収集することによって、ヘッドユニット１０２１の設定を識別する。ソフトウェア１０３
０は、ヘッドユニット１０２１の設定を識別する情報で応答する（１０８２）。応答１０
８２は、次の少なくとも１つを含むことができる：車両の製造業者／型式／年式、所定の
コード、あるいは（カラー／モノクローム表示、固有の解像度、等のような）ヘッドユニ
ット１０２１の設定のリスト。
【００８７】
次に、ソフトウェア１０３２は、ヘッドユニット情報１０８２に基づいて、複数のグラ
フィカル・ユーザ・インタフェースから選択する。例えば、ヘッドユニット情報１０８２
が所定のコードを含む場合、ソフトウェア１０３２は、このコードを、記憶しているコー
ド対グラフィカル・ユーザ・インタフェースＹ〜Ｚのマッピング１０８５と比較する。選
択したグラフィカル・ユーザ・インタフェースは、情報１０８２によって報告されたヘッ
ドユニット１０２１の特定の設定に対応する。例えば、ヘッドユニット１０２１がモノク
ローム・ディスプレイを有する場合、選択されるグラフィカル・ユーザ・インタフェース
（ＧＵＩ：graphical user interface）はインタフェースＹとすることができるのに対し
、ヘッドユニット１０２１がカラーディスプレイを有する場合、選択されるＧＵＩはイン
タフェースＺとすることができる。あるいは、恐らくは、ヘッドユニット１０２１が第１
の値の固有解像度を有する場合、選択されるＧＵＩはインタフェースＹとすることができ
るのに対し、ヘッドユニット１０２１が第２の値の固有解像度を有する場合、選択するＧ
ＵＩはインタフェースＺとすることができる。車の製造業者／型式／年式が第１の設計、
例えば豪華な基調（モチーフ）の内装を示す場合、選択するＧＵＩはインタフェースＹと
することができるのに対し、車の製造業者／型式／年式が第２の設計、例えばスポーツカ
ーの基調の内装を示す場合、選択するＧＵＩはインタフェースＺとすることができる。
【００８８】
一旦、グラフィカル・ユーザ・インタフェースを選択すると、ソフトウェア１０３２は
、グラフィカル・ユーザ・インタフェースＹ〜Ｚのうち選択したもののＩＰパケット転送
を行う。ＩＰパケット転送１０４５は、前に説明した携帯電話（図示せず）のＩＰゲート
ウェイ・ソフトウェアを利用することができることは明らかである。ソフトウェア１０３
０は、受信したグラフィカル・ユーザ・インタフェースを自動的にインストールする。選
択したグラフィカル・ユーザ・インタフェースは、デフォルトのグラフィカル・ユーザ・
インタフェース１０９０、あるいは以前にダウンロードされて転送１０４５の前にヘッド
ユニット１０２１上に存在するグラフィカル・ユーザ・インタフェースを置き換える。
【００８９】
前に説明したフロントエンド設定は、選択してインストールしたＧＵＩに適用すること
ができることは明らかである。例えば、選択したＧＵＩは、ヘッドユニット１０２１上に
インストールすることができ、次に、現在ヘッドユニット１０２１に結合されているモバ
イル機器の電話番号に応じてカスタマイズされたフロントエンド選択に基づいて、外見を
さらに修正することができる。
【００９０】
図１１に、リモート計算許可を生成してヘッドユニットに送信するシステムを例示する
。
【００９１】
システム１１００は、サーバー１１２２及びヘッドユニット１１２１を含み、これらは
、前に説明したサーバー及びヘッドユニットのいずれかと同様の構成要素を含むことがで
きる。サーバー１１２２とヘッドユニット１１２１が、モバイル機器１１３１を用いて通
信することは明らかである。ヘッドユニット１１２１は制御ソフト１１３０を含み、サー
バー１１２２は制御ソフトウェア１１３２を含む。
【００９２】
ヘッドユニット１１２１は、モバイル機器１１３１上で実行されているＶＮＣサーバー
１１４９に接続するための、Visual Network Computing（ＶＮＣ、登録商標）クライアン
ト１１４８のようなリモート・デスクトップ視聴プログラムを含む。背景として、ＶＮＣ
クライアントとＶＮＣサーバーとが通信して、サーバーのデスクトップ画面または他の現
在の画面をクライアントのディスプレイ上に表示する。次に、クライアントに直接接続さ
れたヒューマン・インタフェース装置、例えばキーボード、マウス、等を、表示された画
像と共に使用して、ＶＮＣサーバーを実行しているコンピュータ装置を遠隔制御する。ア
プリケーションが、全画面（フルスクリーン）モードで、ＶＮＣサーバーと共にコンピュ
ータ装置上で実行されている場合、ＶＮＣサーバーを伴うこのコンピュータ装置は、（デ
スクトップ全体ではなく）当該アプリケーションを制御する。
【００９３】
制御ソフトウェア１１３０は、モバイル機器１１３１から、特定アプリケーションＸ（
１１４０）を指定する要求１１５５を受信する。制御ソフトウェア１１３０は、要求１１
５５に対応するアプリケーション識別子を、要求１１５５から直接抽出するか、あるいは
、この要求から収集した情報またはモバイル機器１１３１との何らかの通信から収集した
情報に基づく検索を用いるかのいずれかによって識別する。制御ソフトウェア１１３０は
、アプリケーション識別子を含む通信１１５６を送信する。
【００９４】
制御ソフトウェア１１３２は、このアプリケーション識別子を内部テーブルと比較して
、アプリケーションＸのＶＮＣ許可１１５７を生成する。ＶＮＣ許可１１５７は、ＶＮＣ
がこのアプリケーションＸと共に許可される特定条件を指定する。例えば、アプリケーシ
ョンＸがナビゲーション・アプリケーションである場合、許可１１５７は、車両が停止し
ているか移動している際にＶＮＣが許可されることを指定することができる。これとは対
照的に、アプリケーションＸがメディア再生アプリケーションである場合、許可１１５７
は、車両が停止している際のみにＶＮＣが許可されることを指定することができる。
【００９５】
ＶＮＣ許可１１５７は、アプリケーションが現在、全画面モードで実行されているかウ
ィンドウモードで実行されているかに基づいて、異なる許可を指定することもできる。例
えば、ナビゲーション・アプリケーションは、車両が移動中であるが、ナビゲーション・
アプリケーションがモバイル機器１１３１上で全画面モードで実行されている際のみに限
って許可することができる。このことは、車両が移動している間にユーザがナビゲーショ
ン・アプリケーションをウィンドウモードに切り換えた場合に、ＶＮＣ機能を即座に停止
する。
【００９６】
ＶＮＣ許可１１５７は、電話番号を指定することもできる。例えば、モバイル機器１１
３１がメディアプレーヤ・アプリケーションを実行中である際に、モバイル機器が特定の
電話番号を有する場合のみに、ＶＮＣを許可することができる（このことは、パネル制御
の形式として用いることができる）。
【００９７】
制御ソフトウェア１１３０は、受信したＶＮＣ許可１１５７を、ＶＮＣ許可のデータベ
ース１１３５内に記憶する。制御ソフトウェア１１３０は、データベース１１３５内に記
憶されたＶＮＣ許可に基づく条件を連続的に監視して、制御信号１１６０を生成する。制
御信号１１６０は、モバイル機器１１３１の画面１１６１を、現在、ＶＮＣクライアント
１１４８がヘッドユニット１１２１のディスプレイ上に表示することができるか否かを制
御する。制御信号１１６０は、ヘッドユニット１１２１の入力インタフェースを用いて行
った入力をＶＮＣサーバー１１４９に送信する（１１６２）か否かも制御する。
【００９８】
図１２に、モバイル機器が、新たなアプリケーションの要求を発生するか、ユーザのウ
ェブポータルが新たなアプリケーションを選択したことに応答して、グラフィカル・ユー
ザ・インタフェースの更新をヘッドユニットにプッシュするシステムを例示する。
【００９９】
システム１２００は、サーバー１２２２及びヘッドユニット１２２１を含み、これらは
、前に説明したサーバー及びヘッドユニットのいずれかと同様の構成要素を含むことがで
きる。サーバー１２２２とヘッドユニット１２２１が、モバイル機器１２３１を用いて通
信することは明らかである。
【０１００】
サーバー１２２は、システム１２００において使用される新たなアプリケーションの指
標を、少なくとも２つの形式で受信する（新たなアプリケーションとは、以前にヘッドユ
ニット１２２１にダウンロードされていないアプリケーション、及び／または、ヘッドユ
ニット１２２１を拡張インタフェースとして使用していないアプリケーションを称する）
。１つの形式では、モバイル機器１２３１が、ヘッドユニット１２２１を拡張インタフェ
ースとして利用する新たなアプリケーションＸ（１２４０）の指標を送信する。より具体
的には、この指標は、制御ソフトウェア１２３０が、モバイル機器１２３１から要求１２
７０を受信したことに応答して発生し送信した許可要求１２７１である。
【０１０１】
サーバー１２２２が新たなアプリケーションの指標を受信することができる他の方法は
、ユーザのウェブポータル１２０５上の制御からである。ユーザのウェブポータル１２０
５は、前に説明したウェブポータルと同様である。アプリケーション選択ツール１２２８
を用いて、ユーザはあらゆるリモートコンピュータを用いて、ヘッドユニット上にインス
トールするために対応するダウンロード・ディレクトリ（図示せず）に含めるべきアプリ
ケーションを選択することができる。従って、新たなアプリケーションを含む受信した選
択は、システム１２００において使用される新たなアプリケーションの指標の他の形態で
ある。
【０１０２】
こうした指標を検出したことに応答して、制御ソフトウェア１２３２は、新たなアプリ
ケーションＸ用のグラフィカル・ユーザ・インタフェースの更新を含むＩＰパケット転送
１２４５を送信すべきか否かを決定する。前に説明したアプリケーションの被制御のリス
ト（図６）に新たなアプリケーションＸが含まれない場合、こうしたＩＰパケット転送を
送信しないことは明らかである。一例では、上記グラフィカル・ユーザ・インタフェース
の更新が、前に選択してインストールしたグラフィカル・ユーザ・インタフェース（図１
０）を修正して、新たなアプリケーションＸにアクセスするためのアイコンを追加する。
他の例では、グラフィカル・ユーザ・インタフェースの更新が、新たなアプリケーション
Ｘを動作させるための、前に選択してインストールしたグラフィカル・ユーザ・インタフ
ェースに対する更新の他の何らかの形態を含む。制御ソフトウェア１２３０は、要求の送
信１２７０及び／または選択の送信１２７４に応答して、上記更新を自動的にインストー
ルする。アプリケーションのダウンロードがダウンロード・ディレクトリ内で車両の始動
を待機している場合、転送１２４５は、このアプリケーション自体のダウンロードに含め
ることができる。
【０１０３】
図１３Ａに、ペアレンタル・コントロール（親権による管理）方式の事前動作を示すフ
ローチャートを例示する。
【０１０４】
ブロック１３０１では、サーバーが、少なくとも１つのプロファイルを、ペアレンタル
・コントロールを受けるものとして指定する。このプロファイルは、アカウントの保有に
よって、例えばウェブポータルを用いて選択に印を付けることによって選択することがで
きる。
【０１０５】
ブロック１３０２では、サーバーが、ペアレンタル・コントロールを受けるプロファイ
ルにとっての「親」（一般に、アカウント保有者）として指定されたユーザ名でのログイ
ンを受信する。ブロック１３０３では、サーバーが、ペアレンタル・コントロールを受け
るプロファイルに関連するアプリケーションのリストを、ウェブポータルを用いて表示さ
せる。
【０１０６】
ブロック１３０４では、このリストを表示した後に、サーバーは、表示されたリストか
らの選択を受信する。サーバーは、これらの選択を、ペアレンタル・コントロールを受け
るプロファイル内に格納することができる。これらの選択は、上記リストからのアプリケ
ーション及び／または、条件付き許可の場合、より詳細な情報を含むことができる（条件
付き許可は、後により詳細に説明する）。
【０１０７】
図１３Ｂに、ペアレンタル・コントロール方式の動作を示すフローチャートを例示する
。
【０１０８】
ブロック１３２０では、携帯電話がヘッドユニットに通信結合したことに応答して、ヘ
ッドユニットが、サーバーと通信するために使用する携帯電話の電話番号を取得する。ブ
ロック１３２１では、ヘッドユニットが、この電話番号をサーバーに送信してサーバーが
分析する。取得した電話番号が、ペアレンタル・コントロールを受けるものとして指定さ
れたプロファイルと一致しない場合、ブロック１３２２でペアレンタル・コントロール処
理が完了する。
【０１０９】
さもなければ、取得した電話番号が、ペアレンタル・コントロールを受けるプロファイ
ルに一致した場合、ブロック１３２３では、サーバーがペアレンタル・コントロールを実
行する。一例では、こうした実行がブロック１３２３〜１３２７を含み、これらのブロッ
クは、次の段落で説明するＶＮＣ許可処理と同様である。
【０１１０】
ブロック１３２３では、サーバーがペアレンタル・コントロール・メッセージをヘッド
ユニットに送信する。ブロック１３２４では、ペアレンタル・コントロール・メッセージ
に基づいて、ヘッドユニットが状態を連続的に監視する。ブロック１３２５では、ヘッド
ユニットが、特定のアプリケーションが当該ヘッドユニットを拡張インタフェースとして
使用することを阻止し、及び／または、当該ヘッドユニット上にインストールされた特定
アプリケーションが実行されることを阻止する。例えば、ヘッドユニットは、特定の携帯
電話が電話発呼を受信したことの指標を受信することはできるが、この発呼については、
当該ヘッドユニットを拡張インタフェースとして使用することを阻止する。あるいは、他
の例では、ヘッドユニットが、メディアプレーヤ・アプリケーションを当該ヘッドユニッ
ト上で実行しようとすることを阻止することができる。上記連続監視は、受信したペアレ
ンタル・コントロール・メッセージを記憶するヘッドユニット上のデータベースによって
促進することができる。
【０１１１】
ブロック１３２６では、ヘッドユニットが、特定アプリケーションが当該ヘッドユニッ
トを拡張インタフェースとして使用すること、及び／または、特定アプリケーションが当
該ヘッドユニット上で直接実行されることを阻止する。例えば、ヘッドユニットは、特定
の携帯電話が電話発呼を受信したことの指標を受信することはできるが、次に、着信した
発呼上の発呼者ＩＤフィールドの値に基づいて、当該ヘッドユニットの拡張インタフェー
スとしての使用を条件付きで阻止する。より具体的には、ペアレンタル・コントロール・
メッセージは、特定電話番号を、ヘッドユニットが当該電話機に拡張インタフェースを提
供することを防止することの例外として指定することができる。ヘッドユニットは、発呼
者のＩＤ値を携帯電話から取得し、この携帯電話が当該ヘッドユニットのインタフェース
を利用することを条件付きで阻止する。他の例では、ヘッドユニットが、車両の状態に基
づく条件付きでアプリケーションを阻止することができ、例えば、ヘッドユニットは、車
両が現在移動中である場合のみに、携帯電話が当該ヘッドユニットのインタフェースを利
用することを阻止する。
【０１１２】
ブロック１３２７では、ペアレンタル・コントロール・メッセージによれば特定アプリ
ケーションが許可されている場合に、ヘッドユニットはこのアプリケーションを阻止しな
い。この場合、ヘッドユニットは、このアプリケーションがサーバーによる許可に応じて
、例えば、このアプリケーションが上記被制御のリスト（図６）上にあるか否かに応じて
動作することを可能にする。
【０１１３】
他の例では、システムが、具体的に上述した処理とは異なる処理を用いて、ペアレンタ
ル・コントロール方式を実行することができることは明らかである。例えば、他の例では
、ブロック１３２３〜１３２７の処理を使用しない。代わりに、ヘッドユニットは、状態
及びアプリケーション要求を絶えずサーバーに報告し、サーバーは、ペアレンタル・コン
トロール設定に応じて、現在の許可を動的に撤回する。次に、サーバーは、ヘッドユニッ
トを制御して、現在不許可にされたアプリケーションを阻止する。
【０１１４】
車載ヘッドユニットをモバイル機器用の拡張インタフェースとして動作させるための拡張
可能な方式
車載ヘッドユニットをモバイル機器用の拡張インタフェースとして動作させるための既
知の方式が存在する。しかし、こうした既知の方式では、車載ヘッドユニットの構成は製
造時に固定され、その結果、新たに発売されたモバイル・アプリケーションでは動作不能
になることがある。部分的な解決策では、新たなモバイル機器アプリケーションを車載ヘ
ッドユニットにダウンロードし、このことは、このモバイル機器アプリケーションの（車
載ヘッドユニット上の）ダウンロード、インストール、及び動作のために、車載ヘッドユ
ニットを比較的高価なハードウェア構成要素で製造することを必要とする。
【０１１５】
図１４に、車載ヘッドユニットをモバイル機器用の拡張インタフェースとして動作させ
るシステムを例示する。
【０１１６】
システム１４００は、サーバー１４１１、車載ヘッドユニット１４１２、及びモバイル
機器１４１３（長距離無線装置、この例ではセルラ電話機とすることができる）を含み、
それぞれが処理装置１４０８、１０９、及び１４１０を含む。車載ヘッドユニット１４１
２は、ブルートゥース（登録商標）トランシーバまたはＵＳＢポートのような短距離入力
／出力インタフェースを含み、これらは車載ヘッドユニット１４１２を、モバイル機器１
４１３のような利用可能なモバイル機器に結合するように構成されている。接続１４１５
は、車載ヘッドユニット１４１２とモバイル機器１４１３との接続を表す。サーバー１４
１１は、車載ヘッドユニット１４１２と通信するように構成されたネットワーク・インタ
フェースを含む。一例では、サーバー１４１１からの通信１４１６が、接続１４１５越し
に（一部の場合に、車載ヘッドユニットはモバイル機器の長距離無線を利用して、リモー
トネットワークと通信することができる）、または他の経路を通って（一部の場合に、車
載ヘッドユニットは車両の長距離無線を利用して、リモートネットワークと通信すること
ができる）、車載ヘッドユニット１４１２に到着することができる。
【０１１７】
サーバー１４１１は、１つ以上のアプリケーション命令のグループを記憶するメモリを
含む（各グループがモバイル機器アプリケーションに対応する）。あるグループのアプリ
ケーション命令は、モバイル機器アプリケーションが発売されると共に、長期にわたって
更新することができる。車載ヘッドユニットは、ＨＭＩ（Host Micro Interface：ホスト
・マイクロ・インタフェース）アプリケーション１４２１のような組込みソフトウェアを
含み、この組込みソフトウェアは、対照的に、車載ヘッドユニット１４１２の製造時に固
定にすることができる。テンプレートＨＭＩアプリケーションは「シン・クライアント（
小型軽量クライアント）」であり、ダウンロードされたアプリケーション命令を事項する
ように構成されている。ここでも、テンプレートＨＭＩアプリケーション１４２１は「シ
ン・クライアント」と称することができ、インタプリタ、即ちスクリプト言語、例えばJa
vaScript（ジャバスクリプト：登録商標）を他のプログラミング言語に逐次翻訳するコン
ポーネントとは無関係に動作する。テンプレートＨＭＩアプリケーション１４２１は、複
数の汎用表示スクリーン、例えば複数のＨＭＩスクリーン１４２３を含むことができる。
【０１１８】
ヘッドユニット上の多数のアプリケーション・スクリーンは、複数のスクリーン形式の
うちの１つとして一般化することができる。一例では、上記複数のスクリーン形式は、情
報型スクリーン、例えば情報のリストを示すスクリーン、インタラクション（相互作用）
型スクリーン、例えば、ソーシャル・ネットワーキング・ポストまたは電子メール・メッ
セージのようなインタラクティブ（対話型）メッセージを示すスクリーン、コンテンツ表
示スクリーン、例えば、音楽アプリケーションまたは書籍アプリケーションからのコンテ
ンツのような現在再生中のコンテンツを表示するスクリーンを含む。従って、一例では、
複数のＨＭＩスクリーン１４２３が、情報スクリーン、コンテンツ表示スクリーン、及び
インタラクティブ・メッセージ・スクリーンを含む。複数の汎用表示スクリーンの組合せ
、例えば複数のＨＭＩスクリーン１４２３を組み合わせて、所定アプリケーションのスク
リーンを形成することができる。個別のテンプレート・フォーマットは、１つの所定アプ
リケーションから他の所定アプリケーションで変更しなくてもよく、コンテンツそのもの
、画像があれば画像、スクリーンを表示する順序、及び電話機上に存在するアプリケーシ
ョン機能へのボタンのマッピング（対応付け）は、１つの所定アプリケーションから他の
所定アプリケーションで変化する。
【０１１９】
処理装置１４０８は、アプリケーション命令１４２５のグループのうち少なくとも１つ
を、車載ヘッドユニット１４１２のメモリ１４５０にダウンロードするように構成されて
いる。このダウンロードは随時に発生することができるが、一例では、処理装置１４０９
または処理装置１４１０から要求を受信したことに応答して発生することができる。
【０１２０】
アプリケーション命令のグループのダウンロードは、モバイル機器１４１３のアプリケ
ーションが、現在の車両の状態に基づいて車載ヘッドユニット１４１２のリソースを利用
することを許可されたことに応答して行うこともできる。アプリケーションが許可されて
いるか否かの判定は、本明細書で図１〜１３Ｂを参照して説明した原理の任意の組合せを
含むことができることは明らかである。一例では、アプリケーションが車載ヘッドユニッ
ト１４１２のリソースを利用することを許可されていないものと判定したことに応答して
、ダウンロードを発生させないことができる。一例では、アプリケーションが車載ヘッド
ユニット１４１２のリソースを利用することを許可されていないものと判定したことに応
答して、それでもダウンロードは発生させることができるが、サーバー１４１１は、アプ
リケーションがこの時点で車載ヘッドユニット１４１２のリソースを利用することを防止
することができる。
【０１２１】
ダウンロードされたアプリケーション命令は、テンプレートＨＭＩアプリケーション１
４２１によって実行されると、特定のモバイル機器アプリケーション１４１４を制御する
方法についてＨＭＩアプリケーション１４２１に命令し、この方法は、特定のモバイル機
器アプリケーション１４１４が理解することのできるコマンド、及びこれらのコマンドの
フォーマットを含む。より一般的に言えば、アプリケーション命令のダウンロード及び実
行は、テンプレートＨＭＩアプリケーション１４２１（車載ヘッドユニットの製造の時点
で車載ヘッドユニットにインストールされている元のＨＭＩアプリケーションとすること
ができる）が、新たに発見された特定のモバイル機器アプリケーション１４１４（「新た
な」モバイル機器アプリケーション、即ち、車載ヘッドユニットの製造後に発売されるか
、さらには開発されたアプリケーション）を制御することを可能にする。
【０１２２】
一例では、この命令が、要求されたアプリケーション用の複数のＨＭＩスクリーンの少
なくとも一部を表示する特定順序を定める。換言すれば、上記要求されたアプリケーショ
ン用の特定順序は、他のアプリケーションに対応する特定順序と異なる順序にすることが
できる（モバイル機器の複数のアプリケーション用の各命令が、異なる順序を定めること
ができる）。１つのアプリケーションが、複数のＨＭＩスクリーンのうち、他のアプリケ
ーションとは異なる部分を使用することができる（例えば、１つの所定アプリケーション
が全部のスクリーンを用いることができるのに対し、他の所定アプリケーションは、これ
らのスクリーンのうち１つしか使用しないことができる）。
【０１２３】
特定のモバイル機器アプリケーション１４１４からテンプレートＨＭＩアプリケーショ
ン１４２１へ応答を送信することが見込まれる場合、ダウンロードしたアプリケーション
命令は、テンプレートＨＭＩアプリケーション１４２１によって実行される際に、この応
答のフォーマット／構造をテンプレートＨＭＩアプリケーション１４２１に提供するよう
に構成することができ、このフォーマット／構造は、テンプレート・アプリケーション１
４２１が応答中に含まれる情報を表示する方法を記述した情報を含む。特定のモバイル機
器アプリケーション１４１４からテンプレートＨＭＩアプリケーション１４２１へ応答を
送信することが見込まれる場合、ダウンロードしたアプリケーション命令は、テンプレー
トＨＭＩアプリケーション１４２１によって実行される際に、コマンド及び応答のリスト
をテンプレートＨＭＩアプリケーション１４２１に提供するように構成することができ、
このリストは、関係する使用事例についての、テンプレートＨＭＩアプリケーション１４
２１とモバイル機器アプリケーション１４１４との間で交換されるメッセージの順序及び
並びを構成する。
【０１２４】
図１５に、図１４のサーバー、車載ヘッドユニット、及びモバイル機器によって実行す
ることができる動作の一例を示す信号伝達図を例示する。
【０１２５】
車載ヘッドユニット１４１２とモバイル機器１４１３とが結合された後に、車載ヘッド
ユニット１４１２は、車載ヘッドユニット・プロファイルをモバイル機器１４１３に提供
する（信号１５０２）。車載ヘッドユニット・プロファイルは、車載ヘッドユニット１４
１２についての一意的識別子を含むことができる。車載ヘッドユニット・プロファイルは
、車載ヘッドユニット１４１２上に現在記憶されているアプリケーション命令の全グルー
プのリストを含むことができる。一例では、車載ヘッドユニット・プロファイルが、車載
ヘッドユニット１４１２によってサポート（支援）される少なくとも１つの言語を識別す
ることもできる。
【０１２６】
モバイル機器１４１３は、モバイル機器プロファイル及びヘッドユニット・プロファイ
ルを、サーバー１４１１に提供する（信号１５０３）。モバイル機器プロファイルは、一
意的識別子、例えばモバイル機器の一意的識別子またはユーザ・アカウント識別子を含む
ことができ、これらは車載ヘッドユニット１４１２用の識別子とは異なる。モバイル機器
プロファイルは、モバイル機器１４１３上に現在記憶されている全アプリケーションのリ
ストを含むことができる（一部の例では、一意的識別子が、ユーザ・アカウントに相当す
ることができ、ユーザ・アカウントは、サーバー１４１１が、当該ユーザ・アカウントに
現在関連する全アプリケーションを、そのアカウント識別子に基づいて確認することを可
能にする）。一例では、モバイル機器１４１３が、車載ヘッドユニット１４１２によって
サポートされるテンプレートＨＭＩアプリケーション１４２１を識別し、アプリケーショ
ン１４１４がテンプレートＨＭＩアプリケーション１４２１で動作することを識別する。
【０１２７】
サーバー１４１１は、アプリケーション命令１４２５、例えば一組のアプリケーション
命令を、モバイル機器１４１３にダウンロードする（信号１５０７）。一例では、サーバ
ー１４１１が、識別したアプリケーションに対応するアプリケーション・ロジック（論理
命令）、例えば、特定アプリケーションに命令／特定アプリケーションを制御するように
構成されたロジックをダウンロードすることができる。一例では、ダウンロードされるア
プリケーション命令が、対応するアプリケーション・ロジックによって実行されたコマン
ドの結果を含む。車載ヘッドユニット１４１２へのダウンロードは、上記リストからのア
プリケーション命令の更新、あるいは、まだ車載ヘッドユニット１４１２上に記憶されて
いない新たなアプリケーション命令を含むことができる。同様に、モバイル機器１４１３
へのダウンロードは、モバイル機器１４１３の既存のアプリケーションの更新、あるいは
新たなアプリケーション用のダウンロードとすることができる。
【０１２８】
モバイル機器１４１３は、受信したアプリケーション・ロジックをローカルメモリに記
憶し、ダウンロードしたアプリケーション命令１４２５を車載ヘッドユニット１４１２に
提供する（信号１５０８）。モバイル機器１４１３のメモリに記憶されたアプリケーショ
ン・ロジックは、モバイル機器１４１３によって受信したユーザ入力に応答して実行する
ことができる。
【０１２９】
車載ヘッドユニット１４１２がアプリケーション命令を受信すれば、車載ヘッドユニッ
ト１４１２は、車載ヘッドユニット１４１２を拡張インタフェースとして利用することが
できるモバイル機器用のソフトウェア・ボタンを有するグラフィカル・ユーザ・インタフ
ェースを構築することができる（信号１５０９）。表示されたＧＵＩは、テンプレートＨ
ＭＩアプリケーション１４２１（図１４）のＨＭＩスクリーン１４２３（図１４）のうち
の１つを利用することができる。車載ヘッドユニット１４１２を拡張インタフェースとし
て利用するモバイル機器アプリケーションを選択するユーザ入力に応答して、車載ヘッド
ユニット１２は、ダウンロードしたアプリケーション命令のうち対応するものを実行する
（信号１５１１）。車載ヘッドユニットは、対応するアプリケーション命令を実行した結
果に基づいて、テンプレートＨＭＩアプリケーションを動作させる（信号１５１３）。
【０１３０】
１つの使用事例では、アプリケーション命令のグループ内の第１命令を実行することに
よって、車載ヘッドユニットが特定メッセージをモバイル機器アプリケーションに送信し
、モバイル機器アプリケーションは、コンテンツを車載ヘッドユニットに返送することに
よって応答する。この使用事例では、上記グループ内の命令が、車載ヘッドユニットに、
上記コンテンツの一部または全体を、次の命令中に含まれるパラメータまたは値と比較さ
せる。この比較の結果に応じて、車載ヘッドユニットは、次の命令に進むか、次の命令後
の他の命令に直接進むか、特定文字列のスクリーンを表示するか、ユーザが車載ヘッドユ
ニットのインタフェースを介して選択を入力するのを待つか、完了するか、等を、実行し
た命令の特異性に応じて行うことができる。
【０１３１】
図１４及び１５を参照して説明した原理により動作する例では、車載ヘッドユニットの
リソースを利用するアプリケーション・ロジックを、モバイル機器と車載ヘッドユニット
との間に割り振る。図１４及び１５を参照して説明した原理により動作する他の例では、
アプリケーション・ロジックに関連するコードの全部をモバイル機器上に記憶する。
【０１３２】
一例では、処理装置による実行に応答して処理装置に動作を実行させる命令を記憶した
メモリ装置が提供される。ある動作は、モバイル機器と車載ヘッドユニットとを結合する
ことを含む。ある動作は、モバイル機器が車載ヘッドユニットのリソースを利用すること
の要求をリモートネットワークネットワーク装置に送信することを含み、この要求は、車
載ヘッドユニットの第１プロファイル及びモバイル機器の第２プロファイルを含む。ある
動作は、上記要求を送信したことに応答して、リモートネットワーク装置から命令を受信
することを含み、この命令は、車載ヘッドユニットの組込みソフトウェアによって実行さ
れて、要求したアプリケーションが車載ヘッドユニットを利用することを可能にする。
【０１３３】
一例では、上記組込みソフトウェアが、テンプレートＨＭＩアプリケーション及び複数
のＨＭＩスクリーンを含み、上記命令は、要求したアプリケーション用の複数のＨＭＩス
クリーンの少なくとも一部を表示する特定順序を定める。一例では、テンプレートＨＭＩ
アプリケーションが、インタプリタ・コンポーネントなしで動作する。
【０１３４】
一例では、上記第１プロファイルが、車載ヘッドユニットに対応し、かつ上記組込みソ
フトウェアに関連する言語またはプロトコルを識別する第１の一意的識別子を識別する。
一例では、上記第２プロファイルが、第１の一意的識別子とは異なる第２の一意的識別子
を識別する。
【０１３５】
一例では、上記命令が、要求したアプリケーションに関連するアプリケーション・ロジ
ックによって実行されたコマンドまたは制御機能の結果を含む。一例では、上記動作が、
上記要求に応答して、モバイル機器上に記憶され、かつ上記アプリケーション・ロジック
に対応するコードを更新する。一例では、上記アプリケーション・ロジックに対応するコ
ードが、モバイル機器がユーザ入力を受信したことに応答して、車載ヘッドユニットと相
互運用されるように構成され、この相互運用は、上記車載ヘッドユニットによる上記命令
の実行の結果に応じたものとなる。
【０１３６】
一例では、処理装置による実行に応答して処理装置に動作を実行させる命令を記憶した
メモリ装置が提供される。ある動作は、モバイル機器のアプリケーションが車載ヘッドユ
ニットのリソースを利用することの要求を含み、この要求は、車載ヘッドユニットの第１
プロファイル及びモバイル機器の第２プロファイルを含む。ある動作は、要求したアプリ
ケーションが車載ヘッドユニットのリソースを利用することを許可されているか否かを、
車両の現在状態に基づいて判定する。ある動作は、要求したアプリケーションが車両のリ
ソースを利用することを許可されているものと判定したことに応答して、命令を車載ヘッ
ドユニットにダウンロードすることを含み、この命令は、車載ヘッドユニットの組込みソ
フトウェアによって実行されて、要求したアプリケーションが車載ヘッドユニットのリソ
ースを利用することを可能にする。
【０１３７】
一例では、上記組込みソフトウェアが、テンプレートＨＭＩアプリケーション及び複数
のＨＭＩスクリーンを含み、この命令は、要求したアプリケーション用の複数のＨＭＩス
クリーンの少なくとも一部を表示する特定順序を定める。一例では、テンプレートＨＭＩ
アプリケーションが、インタプリタ・コンポーネットなしで動作する。
【０１３８】
一例では、第１プロファイルが、車載ヘッドユニットに対応する第１の一意的識別子を
識別し、上記組込みソフトウェアに関連する言語またはプロトコルを識別する。一例では
、上記第２プロファイルが、第１の一意的識別子とは異なる第２の一意的識別子を識別す
る。
【０１３９】
一例では、上記命令が、アプリケーション・ロジックによって実行されたコマンドまた
は制御機能の結果を含む。一例では、上記動作が、要求したアプリケーションが車両のリ
ソースを利用することを許可されているものと判定したことに応答して、モバイル機器上
に記憶され、かつ上記アプリケーション・ロジックに対応するコードを更新することを含
む。一例では、上記アプリケーション・ロジックに対応するコードが、上記モバイル機器
がユーザ入力を受信したことに応答して、車載ヘッドユニットと相互運用されるように構
成され、この相互運用は、車載ヘッドユニットによる命令の実行の結果に応じたものとな
る。
【０１４０】
図１６を参照すれば、同図は、本発明の他の態様、即ち、携帯電話のユーザ・アプリケ
ーションを、車載ヘッドユニットのＨＭＩを利用するように拡張する他のシステムを例示
する。この簡略化した図は、３つの主要な構成要素、即ち、携帯電話１６４０、自動車ヘ
ッドユニット１６２０、及びリモートサーバー１６７０を有する。図１６に例示するよう
に、携帯電話１６４０は、パケットデータ通信１６５２を、例えばモバイルネットワーク
１６５４上で行う能力を具えている。種々の音声またはデータサービスを、サーバーとの
通信に用いることができる。このモバイルネットワークは、ＩＰクラウド１６６６として
示しているインターネットへのゲートウェイ（図示せず）を有する。リモートサーバー１
６７０は、インターネット１６６６経由で通信１６６８を行うための通信構成要素（図示
せず）を有する。
【０１４１】
とりわけ、図１６の構成は、ユーザ・アプリケーションプログラム、例えば携帯電話１
６４０上にインストールされているように示すユーザ・アプリケーション１６４４を、サ
ーバー１６７０からダウンロードすることを可能にする。ユーザ・アプリケーションプロ
グラムをダウンロードする他の方法は、上述した通りである。モバイル・アプリケーショ
ンプログラムをオンライン「アップストア（App store：登録商標）」から取得すること
も知られている。これに加えて、例示するシステムを用いて、サーバー１６７０に置かれ
た電話機アプリケーション情報（「電話アプリ情報」）をダウンロードすることができる
。以下でさらに説明するように、電話アプリ情報は、ユーザ・アプリケーション毎に提供
することができる。電話アプリ情報１６８０は、別個のリモートサーバー（図示せず）か
ら取得し、別個のリモートサーバーで維持し、別個のリモートサーバーから更新すること
ができる。好適な実施形態では、電話機アプリケーション情報を、携帯電話上のＨＡＰア
プリケーションプログラムにダウンロードする。
【０１４２】
自動車ヘッドユニット１６２０は、ＨＵＰ（Head Unit Program：ヘッドユニット・プ
ログラム）ソフトウェア・コンポーネント１６３０を含み、これは、携帯電話と通信１６
３５を行うように構成されている。ヘッドユニット・プロキシ１６３０は、ヘッドユニッ
ト１６２０のＨＭＩ１６２２に動作的に結合されている。例えば、ＨＵＰは、種々のソフ
トウェア・コンポーネント及びプロトコルを介してＨＭＩと相互作用することができる。
上述したように、ヘッドユニットのＨＭＩは、表示スクリーン、マイクロホン、スピーカ
、及び他のＩ／Ｏ要素を含むことができ、表示スクリーンはタッチスクリーンとすること
ができる。この例示では、ＨＭＩが１つ以上の汎用的な表示スクリーン１６２４を含む。
ここでは、物理的な表示スクリーンを参照せず、むしろ、１つ以上の汎用的なスクリーン
の外観及び動作を規定するソフトウェア要素を参照する。以下でより詳細に説明するよう
に、これらの汎用的な表示スクリーンを用いて、携帯電話１６４０上で実行されるユーザ
・アプリケーションプログラム１６４４のユーザ・インタフェースを拡張する。ヘッドユ
ニットと携帯電話とは、短距離無線リンク、例えばブルートゥース（登録商標）リンク、
あるいはＩＲ（Infra-Red：赤外線）のような他の非接触手段またはケーブルによって通
信結合される。
【０１４３】
ヘッドユニットＨＭＩディスプレイ及び関連するアプリケーション・ロジックは、ヘッ
ドユニット・プラットフォーム・リソースの制限により、容易に更新することができない
。従って、ＨＭＩは、ヘッドユニットが製造またはプログラムされた時点では存在しなか
ったかもしれない、より新たなユーザ・アプリケーションプログラム用の拡張インタフェ
ースとして機能するように構成できないことがある。一部の場合、車両製造業者または自
動車ＯＥＭが、新たなユーザ・アプリケーションプログラム及びそれらに対応するコマン
ドと制御機能を、ヘッドユニットと相互作用する目的で提供するように、ヘッドユニット
のファームウェアを更新することは、高価であるか非実用的なことがある。
【０１４４】
種々のヘッドユニット・プラットフォームは、ＯＥＭ及びアフター・マーケット（販売
後の市場）において既知である。これらのプラットフォームは、多種多様な組込みプロセ
ッサ及びオペレーティングシステム、例えばウィンドウズ（登録商標）オートモティブ（
Windows Automotive）、アンドロイド（Android）（登録商標）、ＱＮＸ（登録商標）、
等を用いることができる。ヘッドユニットは、一般に、受動的方法でコンテンツを表示す
るために使用される表示スクリーンを含む。即ち、ヘッドユニットは、表示するデータの
内容または意味を理解せずに、グラフィックスまたは画像のようなコンテンツを表示する
か、オーディオファイルを再生することができる。これに加えて、一般に、ヘッドユニッ
トは、電話機上に存在して当該ヘッドユニットが相互作用することができるアプリケーシ
ョンの状態に対して、状態または使用事例を管理することができない。従って、ヘッドユ
ニットは、ユーザ・アプリケーション特有のビジネス・ロジック（業務用論理命令）を欠
く端末にリンクさせることができる。
【０１４５】
一般に、ヘッドユニットはＵＩ（User Interface：ユーザ・インタフェース）要素を含
む。図２１を参照すれば、同図は、自動車内に見出すことができるヘッドユニット２１０
２の簡略化した例を示す。この例示中のヘッドユニットは、物理的な表示スクリーン２１
０４を示し、表示スクリーン２１０４はタッチスクリーンとすることができ、このヘッド
ユニットは、１つ以上の機械的なボタンまたはスイッチ２１１０、２１１２も含み、これ
らは表示スクリーンを囲むベゼルまたはフレーム（外枠）内に配置することができる。ボ
タン２１１０及び２１１２は、ユーザが入力装置として指で押すことができる実際の物理
的なハードウェア・スイッチを例示する。本明細書に記載するように、上記表示スクリー
ンを用いて、ヘッドユニットがユーザ・アプリケーションから受信したデータ、メッセー
ジ、画像、または他のコンテンツを表示することができる。上記コンテンツは、ヘッドユ
ニットを通して提示するための音声またはビデオデータを含むことができる。
【０１４６】
多数のヘッドユニットが、汎用的な表示テンプレートまたはレイアウトを実現する。例
えば、ビデオ及びそのタイトルを表示するための単純なテンプレートを提供することがで
きる。こうしたテンプレートは、表示スクリーンの２つの領域のみに置かれ、例えば、ビ
デオを領域２１３４内に配置し、そのタイトルまたは関係情報を、ビデオの下方のテキス
ト表示領域またはウィンドウ２１４０内に配置する。他のテンプレートは、６つの入力ボ
タンを提供することができる。機械的なボタン、例えば２１１０及び２１１２の場合、こ
れらはベゼル内に、各側に３つずつ設置することができる。テキストまたは画像をＨＭＩ
に出力して、対応する画像、バッジ、あるいは機械的なボタンの各々に隣接する他の識別
子を表示することができる。図面中では、例示のため、これらの識別子を、七角形として
表す６つの機械的なボタンに対応して、２０２０の印を付けた６つの領域内に表示するこ
とができる。このように、異なる識別子をハードボタンに隣接して表示することによって
、当該ハードボタンの機能または意味を変化させることができる。表示スクリーン２１０
４がタッチセンサー型（タッチスクリーン）である場合、正しく識別される同じ領域２１
２０を複数の入力ボタン自体として用いることができる。タッチスクリーンと共に使用さ
れる汎用的な表示テンプレートは、検出可能なタッチ領域のあらゆる所定のサイズ及び配
置を提供するように構成することができる。従って、一例では、ＨＭＩが単に、押された
領域を示すメッセージまたはイベントを出力する。ＨＭＩは、その意味付けを理解する必
要はない。
【０１４７】
一般に、ヘッドユニット２１０２を、図１６のシステムを利用することによって、付近
の携帯電話において実行中のユーザ・アプリケーションプログラムに対する入力用に用い
ることができる。さらに、ヘッドユニットは、マイクロホンのような他の入力サービスま
たはハードウェア（図示せず）を有して、可聴のコマンドを受信することができる。これ
に加えて、ヘッドユニットは、１つ以上の車載ネットワーク、例えばＣＡＮ（Controller
Area network：コントロールエリア・ネットワーク）ネットワークにアクセスして、ユ
ーザ・アプリケーションに対する入力として機能することもできる車両から情報を取得す
ることができる。例えば、速度のような車両状態をＨＡＰ上に渡して、安全方策を施行す
ることに関連した考慮をさせることができる。
【０１４８】
ヘッドユニットの汎用的なＨＭＩ、より具体的には汎用的な表示スクリーンを用いて、
アプリケーションプログラムのユーザ・インタフェースを拡張するためには、このユーザ
・アプリケーションプログラムに特有の情報を用いて、ユーザ・アプリケーション１６４
４とＨＭＩ１６２２との間の通信を変換してマッピングしなければならない。図１６中の
１６８０として識別される種類の情報を、リモートサーバー１６７０上に維持して、要求
時にダウンロードする。一旦、この情報を、ＨＡＰアプリケーションにアクセス可能な方
法で携帯電話にダウンロードして記憶すると、この情報がこうした機能を提供することが
できる。より具体的には、好適な実施形態では、ダウンロードされた電話アプリ情報１６
８０をＨＡＰが用いて、携帯電話上にインストールされて支配下にあるアプリケーション
に対する使用事例毎に、及びヘッドユニットを介したデータの表示または他の出力毎に、
コマンド及び制御の流れ、及び状態を管理する。ＨＡＰは、種々の汎用スクリーン表示テ
ンプレートまたはテンプレート・レイアウトに適したフォーマットでコンテンツを出力す
ることができ、これにより、ヘッドユニットは、使用事例、状況、及び状態のようなユー
ザ・アプリケーションに特有の知識またはロジックなしに、こうした情報を表示すること
ができる。むしろ、１つの好適な実施形態では、ユーザ・アプリケーションの状況及び状
態は、ＨＡＰによって携帯電話上に維持される。
【０１４９】
図１７は、図１６中に１６４２で示すもののような、ＨＡＰアプリケーションに含むこ
とができるソフトウェア・コンポーネントの例を示す機能ブロック図である。図１７では
、一実施形態におけるＨＡＰ１７００が、ＨＡＰメッセージ処理コンポーネント１７０４
に結合されたＡＰＩ（Application Program interface：アプリケーションプログラム・
インタフェース）１７０２を具えている。次のコンポーネントを、JavaScript（登録商標
）またはあらゆる適切なスクリプト言語を用いて実現することができる。JavaScript（登
録商標）は、実例として参照する。上記メッセージ処理コンポーネントは、JavaScript（
登録商標）インタプリタ１７０６を含むことができる。このJavaScript（登録商標）イン
タプリタは、「ノマディック（nomadic）アプリケーション」、例えばアプリケーション
１〜ｎ用のコンポーネント１７１０として示す１つ以上のユーザ・アプリケーションプロ
グラム用の個別のJavaScript（登録商標）コンポーネントに通信結合されている。関心の
あるアプリケーション毎に別個のJavaScriptコンポーネントを用意することが好ましい。
図面では、例示のために３つのこうしたJavaScript（登録商標）を示すが、この数は決定
的ではない。
【０１５０】
各JavaScript（登録商標）は、対応するテンプレート・メッセージ変換器１７１２を含
むか、対応するテンプレート・メッセージ変換器１７１２にアクセスするように結合され
ている。以下でさらに説明するように、このことは、携帯電話とヘッドユニットとの間で
通信されるメッセージを変換するために用いられる。以前に述べたように、所定のユーザ
・アプリケーション用のJavaScript（登録商標）を、要求時に、サーバー１６７０上の電
話アプリ情報記憶装置１６８０からダウンロードする。サーバーへの要求は、ユーザのア
プリケーションプログラムの識別子を含むことができる。本発明のこうした態様の好適な
実施形態では、電話アプリ情報の要求が、ヘッドユニットまたはＨＭＩを具体的に識別す
る必要がない。この要求は、汎用型のヘッドユニットまたはディスプレイは識別すること
ができ、あるいは、ヘッドユニットは全く識別しないでよい。
【０１５１】
ＨＡＰアプリケーション１７００は、ヘッドユニットとの通信用のプロトコル・スタッ
クをさらに含むことができる。その代わりに、あるいはこれに加えて、ＨＡＰ１７００は
、より単純なメッセージ・フレーミング・プロトコル・コンポーネント１７２２を、ＨＴ
ＴＰ（Hyper Text Transfer Protocol：ハイパーテキスト転送プロトコル）／ＴＣＰ（Tr
ansmission Control Protocol：伝送制御プロトコル）／ＩＰ（Internet Protocol：イン
ターネット・プロトコル）／ＳＬＩＰ（Serial Line Internet Protocol：シリアル回線
インターネット・プロトコル）のような、より複雑なプロトコルをサポートすることがで
きないヘッドユニットとの通信用に含めることができる。プロトコル識別コンポーネント
１７３０は、適用可能なプロトコルを特定し、これに応じて通信を指図する働きをする。
最後に、プロトコル識別器が、適切な通信コンポーネント１７４０に結合されている。
【０１５２】
各個別のJavaScript（登録商標）、例えば１７２０は、ユーザ・アプリケーション・ロ
ジック及びメッセージ・フォーマット解釈を実現し、これらは、さもなければ、対応する
ユーザ・アプリケーションと相互作用するように設計されていれば、関連するヘッドユニ
ットＨＭＩアプリケーション・ユニット内に含まれる。しかし、この場合、ＨＭＩはその
ように構成されておらず、従って、ＨＭＩは一般的なＨＭＩとして処理される。ヘッドユ
ニット上の標準的な「テンプレート・スクリーン」は、決定を行うこともアプリケーショ
ン状態を主張することもできない。こうしたテンプレート・スクリーンは、カテゴリー化
されたコンテンツ、例えばリスト、基本的なメッセージ、結果、及び「現在再生中」のス
クリーンを表示するために用いることができるに過ぎない。例えば、図２１を参照すれば
、上述したように、表示領域２１３４を用いて、選択したコンテンツを表示することがで
きる。テンプレート・メッセージ変換器を用いて、ノマディック・アプリケーションが指
定した要求及び応答メッセージを、テンプレートに基づくヘッドユニットＨＭＩスクリー
ンに対して要求されるフォーマットに変換することができる。さらに、JavaScript（登録
商標）１７１０は、ボタン・マッピング情報を、視覚的なボタン識別データと共に含むこ
とができ、視覚的なボタン識別データをスクリーンに送信して、図２１を参照して上述す
るように、対応するボタンを、関連するJavaScript（登録商標）によって表現される個別
の電話機アプリケーションに基づいて視覚的に識別することができる。
【０１５３】
ここで図１８を参照し、この図は、統合型ＨＡＰアプリケーションを利用した、ユーザ
・アプリケーションプログラムと車載ヘッドユニットＨＭＩとの間のデータフローの例を
示す略図を示す。ユーザ・アプリケーション（「ノマディック・アプリケーション」）１
８００は、対応するJavaScript（登録商標）プログラム１８１０にメッセージを伝達する
ように構成されたＨＡＰ ＡＰＩ１８０２と相互作用し、ＨＡＰ ＡＰＩ１８０２も携帯電
話上にインストールされている。JavaScript（登録商標）１８１０は、適切なユーザ・ア
プリケーションＨＭＩロジック、及び状態管理コード１８１２を含む。ユーザ・アプリケ
ーションからのメッセージ１８１４は、ユーザ・アプリケーションの通常動作におけるよ
うにフォーマット化される。
【０１５４】
ユーザ・アプリケーション１８００用のJavaScript（登録商標）１８１０は、テンプレ
ート・メッセージ転送（「ＴＭＴ（Template Message Transfer）」）コンポーネントを
さらに含む。動作中に、ＴＭＴはロジック１８１２からメッセージを受信して、このメッ
セージをテンプレート・フォーマット化されたメッセージ、即ち、ヘッドユニットに適合
したメッセージに変換する。次に、テンプレート・フォーマット化されたメッセージを、
ヘッドユニット１８３０に伝達する。逆に、他の方向には、テンプレート・フォーマット
化されたメッセージ１８３４を、ヘッドユニットからJavaScript（登録商標）１８１０に
伝達することができ、このメッセージはＴＭＴ１８２０によって受信されて、アプリケー
ション・ロジック及び状態管理１８１２にとって有用な形式に変換される。そして、この
ロジックは、（ユーザ・アプリケーション・フォーマット化された）メッセージ１８４０
を、ＨＡＰ ＡＰＩを介してアプリケーション１８００に送信することを決定することが
できる。ヘッドユニットから受信した各要求メッセージは、結果がヘッドユニットに戻る
前に、JavaScript（登録商標）コードとユーザ・アプリケーションとの間に１つ以上のト
ランザクションを生じさせる。
【０１５５】
図１９は、同期メッセージの場合の、ソフトウェア・コンポーネント間の相互作用を示
すメッセージまたは信号伝達図を含み、同期メッセージは、ヘッドユニットのＨＭＩによ
って開始されたものを意味する。まず、イベント１９０２をヘッドユニットＨＭＩから受
信する。単純な例として、イベント１９０２は、音楽プレーヤ・アプリケーションが携帯
電話上で実行されている場合の、再生（PLAY）に対応するボタン押下げとすることができ
る。このイベントは、図１６に例示するように、ＨＵＰを介して伝達される。図に示すよ
うに、JavaScript（登録商標）インタラプタ１９１０をＨＡＰ内に含め、JavaScript（登
録商標）インタラプタ（割込み要素）１９１０は、JavaScriptマネージャ１９１２、アブ
ストラクト（抽象）JavaScript（登録商標）コンポーネント１９２０、アプリケーション
JavaScript１９３０、及び状態マネージャ・コンポーネント１９３２を含む。アプリケー
ションJavaScript（登録商標）は、「ノマディック・アプリケーション」１９４０として
示すユーザ・アプリケーションに特有であり、アプリケーション・プロキシ・インタフェ
ース１９４２を含む。この種のJavaScript（登録商標）インタラプタは、携帯電話「ＳＤ
Ｋ（Software Development Kit：ソフトウェア開発キット）」において一般的に利用可能
である。
【０１５６】
アブストラクトJavaScript（登録商標）は、メッセージをアプリケーションJavaScript
（登録商標）用に変換し、アプリケーションJavaScript１９１０は、そのアプリケーショ
ン・ビジネス・ロジックを、上記ＨＭＩイベント時に実行する。ユーザ・アプリケーショ
ンに対する呼出しが適切であれば、メッセージまたは呼出しをＨＡＰメッセージ・ハンド
ラに送信する（１９５０）。ＨＡＰメッセージ・ハンドラは、このメッセージをユーザ・
アプリケーションに送信する（「invokeApplicationCallback（アプリケーション・コー
ルバックを起動）」）１９５２。このアプリケーションは、応答をメッセージ・ハンドラ
に送信する（「aqSendMsg（確認応答メッセージ送信）」）１９５４。メッセージ・ハン
ドラは、このメッセージを変換することができ、アブストラクトJavaScript（登録商標）
は、変換メッセージ・ロジックを実行して、適切なメッセージヲアプリケーションJavaSc
ript（登録商標）に送信することができる。アプリケーションJavaScript（登録商標）は
、そのビジネス・ロジックを実行して、状態及びコンテンツ１９３２を記憶または更新し
、応答をテンプレート・フォーマットに変換して、ＨＭＩに送信する、１９６０参照。
【０１５７】
図２０は、同期メッセージの場合の、ソフトウェア・コンポーネント間の相互作用の一
例を示すメッセージまたは信号伝達図を含み、同期メッセージは、携帯電話上で実行中の
ユーザ・アプリケーションによって開始されたものを意味する。まず、このアプリケーシ
ョンは、ＨＡＰによって受信したメッセージを送信する、２０１０参照。ＨＡＰメッセー
ジ・ハンドラ２０１２は、このメッセージをアプリケーションJavaScript（登録商標）に
送信し、アプリケーションJavaScript（登録商標）は、そのロジックを呼び出し、状態及
びコマンドを記憶またはフェッチし、必要であれば、ＨＭＩ更新メッセージ２０３０を生
成する。
【０１５８】
一例では、システムが提供される。このシステムは車載ヘッドユニット、サーバーコン
ピュータを含み、このヘッドユニットは、少なくとも一種類の汎用的なアプリケーション
表示スクリーンを実現し、このサーバーコンピュータは、モバイルネットワーク上で携帯
電話と通信するように構成され、このサーバーコンピュータは、さらに、特定のユーザ・
アプリケーションに関連する電話機アプリケーション情報を伝達するように構成され、こ
のサーバーは、この電話機アプリケーション情報を、モバイルネットワーク経由で携帯電
話に伝達し、この電話機アプリケーション情報は、特定のユーザ・アプリケーションプロ
グラムのユーザ・インタフェースを拡張して、車載ヘッドユニットの汎用的なアプリケー
ション表示スクリーンを利用することを可能にする。
【０１５９】
一例では、上記システムが、携帯電話において実行可能なＨＡＰソフトウェア・アプリ
ケーション、及びヘッドユニット上で実行可能なＨＵＰソフトウェア・アプリケーション
を含み、これらのＨＡＰ及びＨＵＰは、メッセージまたはイベントを相互間で通信するよ
うに構成され、かつ、電話機アプリケーション情報のアスペクト（様相）を利用して、携
帯電話上の特定のユーザ・アプリケーションプログラムが、車載ヘッドユニットの汎用的
なアプリケーション表示スクリーンと相互作用することを可能にするように構成されてい
る。一例では、ヘッドユニットが、携帯電話上の特定のユーザ・アプリケーションプログ
ラムと相互作用するように特別に開発されたＨＭＩアプリケーション・ロジックをインス
トールまたは実行しない。一例では、上記ＨＡＰが、コンテンツ、テキスト、及び画像の
うち１つ以上をＨＵＰに送信し、上記汎用的なアプリケーション表示スクリーンに、当該
汎用的なアプリケーション表示スクリーンの所定のテンプレート・レイアウトに応じてレ
ンダリングするように構成されている。一例では、上記ＨＡＰソフトウェア・アプリケー
ション及びＨＵＰソフトウェア・アプリケーションの各々が、スクリプト言語で実現され
る。一例では、上記電話機アプリケーション情報が、特定のユーザ・アプリケーションプ
ログラムの実行に関連した安全方策を実現するためのデータを含む。一例では、上記ＨＡ
Ｐが、メッセージ処理コンポーネント、及びこのメッセージ処理コンポーネントに結合さ
れた少なくとも１つのプロトコル・スタックを含んで、ヘッドユニットと通信し、このメ
ッセージ処理コンポーネントは、特定のユーザ・アプリケーションプログラムに関連する
少なくとも１つのスクリプト言語コンポーネントを含み、このスクリプト言語コンポーネ
ントは、対応するテンプレート・メッセージ変換コンポーネントを含み、このメッセージ
変換コンポーネントは、対応するユーザ・アプリケーションプログラムによって生成され
た要求及び応答メッセージを、車載ヘッドユニットのテンプレートベースの汎用的なアプ
リケーション表示スクリーンに適合したフォーマットに変換するように構成されている。
一例では、上記スクリプト言語コンポーネントが、対応するユーザ・アプリケーション・
ロジックを含んで、ヘッドユニット内の特定のユーザ・アプリケーション・ロジックをな
くす。一例では、上記スクリプト言語コンポーネントが、対応するユーザ・アプリケーシ
ョン・ロジックについてのアプリケーション状態を維持して、ヘッドユニット内で状態を
維持することをなくす。
【０１６０】
一例では、携帯電話用の、コンピュータで実現される方法を実行する。このコンピュー
タ実現方法は、携帯電話上にインストールされたユーザ・アプリケーションプログラムを
識別するステップと；識別したユーザ・アプリケーションに特有の情報を、リモートサー
バーに要求するステップと；上記情報の要求に応答して、リモートサーバーからダウンロ
ードした電話機アプリケーション情報を受信するステップとを含み、この電話機アプリケ
ーション情報は、識別したユーザ・アプリケーションプログラムのユーザ・インタフェー
スを拡張して、車載ヘッドユニットの汎用的な表示スクリーンを利用することを可能にす
る。
【０１６１】
一例では、上記コンピュータで実現される方法が、ＨＡＰソフトウェア・アプリケーシ
ョンを携帯電話上にインストールするステップと；車載ヘッドユニット上で実行可能なＨ
ＵＰソフトウェア・アプリケーションをインストールするステップとを含み、これらのＨ
ＡＰ及びＨＵＰは、メッセージまたはイベントを相互間で通信するように構成され、かつ
、上記電話機アプリケーション情報のアスペクトを利用して、携帯電話上の上記識別した
ユーザ・アプリケーションプログラムが、車載ヘッドユニットの汎用的なアプリケーショ
ン表示スクリーンと相互作用することを可能にする。
【０１６２】
一例では、上記コンピュータで実現される方法が、上記ＨＡＰソフトウェア・アプリケ
ーションにおいて、対応するユーザ・アプリケーションプログラムによって生成された要
求及び応答メッセージを、車載ヘッドユニットのテンプレートベースの汎用的なアプリケ
ーション表示スクリーンに適合したフォーマットに変換するステップを含む。
【０１６３】
一例では、上記コンピュータで実現される方法が、上記ＨＡＰソフトウェア・アプリケ
ーションにおいて、車載ヘッドユニットから受信したメッセージまたはイベントを、対応
するユーザ・アプリケーションプログラムに適合したフォーマットに変換するステップを
含む。
【０１６４】
一例では、上記コンピュータで実現される方法が、上記ＨＡＰソフトウェア・アプリケ
ーションにおいて、対応するユーザ・アプリケーションプログラムによって生成された要
求メッセージを、車載ヘッドユニットのテンプレートベースの汎用的な表示スクリーンに
適合したフォーマットに変換して、コンテンツ、テキスト、及び画像のうち１つ以上を、
車載ヘッドユニットの汎用的なアプリケーション表示スクリーン上にレンダリングするス
テップを含む。
【０１６５】
一例では、上記コンピュータで実現される方法が、メッセージをヘッドユニットから受
信するステップと；受信したメッセージに応答して、ユーザ・アプリケーションプログラ
ムと相互作用するステップと；このユーザ・アプリケーションプログラムによって提供さ
れた結果を、ヘッドユニットに返すステップとを含む。一例では、上記コンピュータで実
現される方法が、上記結果を、車載ヘッドユニットのテンプレートベースのアプリケーシ
ョン表示スクリーンに適合したフォーマットに変換するステップを含む。一例では、上記
コンピュータで実現される方法が、ヘッドユニットからのボタン押下げイベント・メッセ
ージを、現在のユーザ・アプリケーションプログラム状態に基づき、かつ以前にヘッドユ
ニットに表示用に送信されたボタン識別子に基づいて変換するステップを含む。
【０１６６】
一例では、スマートホンのユーザ・アプリケーションのユーザ・インタフェースを、車
載ヘッドユニットのＨＭＩに拡張する方法が提供される。この方法は、ユーザ・アプリケ
ーションプログラムをスマートホンにインストールするステップと；スマートホンを車載
ヘッドユニットに通信結合するステップと；ＨＡＰソフトウェア・コンポーネントをスマ
ートホンにおいて実行するステップとを含み、上記ＨＡＰは、ユーザ・アプリケーション
と相互作用するためのＡＰＩ、及び車載ヘッドユニットと通信するためのインタフェース
を含み、この方法はさらに、上記ＨＡＰにおいて、ボタン押下げ通知をヘッドユニットの
ＨＭＩから受信するステップと；上記ＨＡＰにおいて、ボタン押下げ通知を、実行中のユ
ーザ・アプリケーションに特有のＵＩ（User Interface：ユーザ・インタフェース）制御
にマッピングするステップと；上記ＨＡＰにおいて、このＵＩ制御を、実行中のユーザ・
アプリケーションに伝達するステップとを含む。
【０１６７】
一例では、上記マッピングが、以前に上記ＨＡＰからヘッドユニットに表示用に送信さ
れた、選択されたボタンを車載ヘッドユニットの汎用的なタッチスクリーン・ディスプレ
イ上で視覚的に識別するための視覚的なボタン識別子に基づく。
【０１６８】
一例では、上記方法が、ユーザ・アプリケーションプログラム状態を上記ＨＡＰ内に維
持して、ユーザ・アプリケーションプログラム状態をヘッドユニット内に維持することを
なくすステップを含む。
【０１６９】
効率的なヘッドユニット通信統合
ＨＴＴＰは、自動車ＩＶＩ（In-Vehicle Infotainment：車載インフォテインメント（
情報娯楽））の設計者によって選択される通信方法であることが多く、ＩＶＩとユーザの
セルラ電話機上で実行中のアプリケーションとの間で通信する必要性、及びＩＶＩ上で実
行中のアプリケーションと、インターネット上または他のＩＰベースのネットワーク接続
上で実行中のコンテンツ及び設定サーバーとの間で通信する必要性が存在する。
【０１７０】
ＩＶＩアプリケーションが、インターネット上または他のＩＰベースのネットワーク接
続上のバックエンドシステムと、ＨＴＴＰを用いて通信する必要があり、ＩＶＩが、イン
ターネット接続をこの通信用の通信経路として有するユーザのセルラ電話機に頼る場合、
ユーザのセルラ電話機は、ＨＴＴＰ要求をＩＶＩから受信し、次に、上記ＩＶＩアプリケ
ーションの代わりに、セルラ・ネットワークのモバイルＩＰ上の特定エンドポイントに対
するＨＴＴＰ要求を生成して、ＩＶＩ要求の意図を、インターネット上の当該エンドポイ
ントに導くアプリケーションを含む。
【０１７１】
また、この同じＩＰ接続上で、上記セルラ電話機アプリケーションは、インターネット
上の上記エンドポイントから応答を受信する。一旦、この応答を受信すると、次に、上記
セルラ電話機アプリケーションは、この応答を、あたかも元のＩＶＩアプリケーション要
求に対する応答であるかのように、ＩＶＩアプリケーションに返送する必要がある。この
やり方は、セルラ電話機をインターネットへの単純なネットワークアクセス装置として使
用する際に（ＰＰＰ（Point to Point Protocol：ポイント−ポイント・プロトコル）−
＞ＩＰ−＞ＴＣＰ〜セルラ・ネットワーク）、セルラ電話機によって課せられる追加的な
コストを回避するために必要になる。
【０１７２】
セルラ電話機アプリケーションが、ＩＶＩアプリケーションとバックエンド・サービス
との間で、ＨＴＴＰ要求のための中間プロキシとして機能する際に、セルラ電話機アプリ
ケーションは、通信に伴う傍受または改竄の恐れをもたらす。こうした構成では、ＩＶＩ
アプリケーションが、標準的なトランスポート・レベル・セキュリティ（伝送レベルの安
全性）対策を利用して、バックエンド・サービスとの通信が安全であることを保証するこ
とができない、というのは、セルラ電話機アプリケーションが「介入者」として機能する
からである。トランスポート・レベル・セキュリティと釣り合ったセキュリティ保証が必
要である場合、代わりに、特注のセキュリティを、ＨＴＴＰ上で実現しなければならない
。こうした特注のセキュリティが、システムの開発コストに加わり、既存のバックエンド
・サービスとの非互換性の可能性をもたらし、システム全体のセキュリティ攻撃の表面を
広げる。
【０１７３】
セルラ電話機アプリケーションが、ＩＶＩアプリケーションとバックエンドとの間で、
ＨＴＴＰ要求のための中間プロキシとして機能する際に、定義により、セルラ電話機アプ
リケーションは、使用することができるアプリケーションレベルのプロトコルに制約を与
える。こうした構成では、ＩＶＩが非ＨＴＴＰプロトコルを利用することを阻止される。
その代わりに、ＨＴＴＰを通した既存アプリケーションの要求の「通り抜け」をサポート
するように、既存アプリケーションを再設計しなければならない。ＨＴＴＰを通した要求
の「通り抜け」は、システムに複雑性及びコストを加え、システムと既存のバックエンド
・サービスとの非互換性の可能性をもたらす。
【０１７４】
ＨＴＴＰ専用プロキシの解決策のこうした多数の問題に応えるために、代案または相補
的な解決策は、セルラ電話機アプリケーション内に組み込まれたＴＣＰまたはＵＤＰ（Us
er Data protocol：ユーザデータ・プロトコル）プロキシを利用する。
【０１７５】
図２２に、効率的なヘッドユニット通信統合のためのシステムを例示する。
【０１７６】
システム２２００は、ヘッドユニット２２０１及びモバイル機器２２０３を含む。ヘッ
ドユニット２２０１は処理装置２２０２を含むことができ、処理装置２２０２は、モバイ
ル機器２２０３に結合され、モバイル機器２２０３のリソースを利用することの要求をモ
バイル機器２２０３に送信するように構成されている。モバイル機器２２０３は、この要
求を許可するか否かを決定するように構成された処理装置２２０４を含むことができる。
処理装置２２０４は、この要求を許可することを決定したことに応答して、モバイル機器
のプロキシを利用して、通信相手との接続を確立するように構成することができる。
【０１７７】
図２３は、（SOCKet Secure：ソケット・セキュア）ＳＯＣＫＳプロキシ・プロトコル
を利用したＩＶＩとバックエンド（リモートサーバー）との間のデータ交換を可能にする
スマートホン・アプリケーションを例示する簡略化した通信図である。
【０１７８】
一実施形態では、標準的なＳＯＣＫＳ（SOCKet Secure：ソケット・セキュア）プロキ
シを、セルラ電話機アプリケーション内に含める。このＳＯＣＫＳプロキシは、ＩＶＩ環
境と、より大きなＩＰネットワークのバックエンドとの間の介在物として機能する。ＴＣ
ＰまたはＵＤＰ層においてデータをプロキシ（代理伝送）することによって、ＩＶＩ及び
バックエンドは、ＨＴＴＰプロトコル単独で利用可能であるよりも大きい範囲のネットワ
ーク・サービスを利用することができる。
【０１７９】
一例では、ヘッドユニット２３０１が、モバイル機器２３０３とのＳＯＣＫＳネゴシエ
ーション（情報交換）を開始して、モバイル機器２３０３のリソースを利用することの要
求を提供すること、例えばＳＯＣＫＳ要求メッセージ２３１０を送信することができる。
モバイル機器２３０３は、この要求を受信したことに応答して、この要求を許可するか否
かを決定する（２３１３）ように構成することができる。一例では、この要求は、ヘッド
ユニット２３０１がモバイル機器２３０３のリソース、例えばモバイル機器２３０３の長
距離トランシーバを用いて通信する通信相手（即ち、サーバー２３０５）を指示する。モ
バイル機器２３０３は、上記指示された通信相手に関連する識別子に基づいて、上記要求
を認可するか否かを決定するように構成することができる。一例では、モバイル機器２３
０３は、上記識別子が、ローカル位置またはリモート位置に記憶されたホワイトリスト内
に含まれているか否かを判定するように構成することができ、例えば、この識別子をホワ
イトリストと比較するように構成することができる。
【０１８０】
通信相手に基づく許可は、方策実行方式の一部分とすることができる。例えば、モバイ
ル機器２３０３は、上記要求に関連する加入／アカウント状態をチェックするように構成
することができる。モバイル機器２３０３は、通信相手がホワイトリストに含まれ、かつ
加入／アカウント状態が所定状態、例えばアクティブ（有効）状態に相当する場合に、上
記要求を許可するか否かを決定するように構成することができる。
【０１８１】
モバイル機器２３０３は、上記要求を許可することを決定したことに応答して、通信２
３１６を送信して、上記指示された通信相手との接続を確立するように構成することがで
きる。一例では、上記モバイル機器２３０３を、上記指示された通信相手に対してソケッ
トを開放して、ＴＣＰまたはＵＤＰ接続を確立するように構成することができる。
【０１８２】
モバイル機器２３０３は、ＳＯＣＫＳ要求メッセージ２３１０に対応するＳＯＣＫＳ完
了メッセージ２３１９を送信するように構成することができる。ヘッドユニット２３０１
は、長距離送信機によって、接続２３１６上で、サーバー２３０５と通信（２３２２）す
ることができる。
【０１８３】
図２４は、ＩＶＩとバックエンド（リモートサーバー）との間のデータ交換を可能にす
るためのトランスペアレント（透過的）プロキシ・サーバー機能を提供するスマートホン
・アプリケーションを例示する簡略化した通信図である。
【０１８４】
他の例では、ヘッドユニット２４０１が、ＴＣＰまたはＵＤＰソケットを、ＳＯＣＫＳ
ネゴシエーションなしに使用し、モバイル機器２３０３は、ＩＶＩのために、ＴＣＰまた
はＵＤＰソケットを、通信相手のエンドポイントに、トランスペアレント（透過的）にプ
ロキシ（代理伝送）する処理を行う。ヘッドユニット２４０１は、通信２４１０を送信し
て、モバイル機器２３０３のリソースを利用することの要求を出す。例えば、ヘッドユニ
ット２４０１は、周知のポートに対してソケットを開放するように構成することができる
。
【０１８５】
モバイル機器２４０３は、上記要求を許可するか否かを決定する（２４１３）ように構
成することができる。一例では、モバイル機器２４０３は、当該モバイル機器において上
記要求を受信するポートを識別するように構成することができる。モバイル機器２４０３
は、ローカルまたはリモート・マッピングが、上記識別したポートに対応するエントリを
含むか否かを判定するように構成することができる。モバイル機器２４０３は、上記マッ
ピングが当該エントリを含まないものと判定したことに応答して、上記要求を許可しない
ように構成することができる。モバイル機器２４０３は、上記マッピングが当該エントリ
を含むものと判定したことに応答して、通信相手を発見するように構成することができる
。一例では、周知のポートから通信相手へのマッピングが、サーバー２４０５によって提
供される。
【０１８６】
前の例と同様に、通信相手に基づく許可は、方策実行方式の一部分とすることができる
。例えば、モバイル機器２４０３は、上記要求に関連する加入者／アカウント状態をチェ
ックするように構成することができる。モバイル機器２４０３は、上記マッピングが、上
記識別したポートに対応するエントリを含み、かつ、上記加入／アカウント状態が所定状
態、例えばアクティブ（有効）状態に相当する場合に、上記要求を許可することを決定す
るように構成することができる。
【０１８７】
モバイル機器２４０３は、通信相手を発見したことに応答して、通信２４１６を送信し
て、上記指示された通信相手との接続を確立するように構成することができる。一例では
、モバイル機器２４０３を、上記発見した通信相手に対して開放して、ＴＣＰまたはＵＤ
Ｐ接続を確立するように構成することができる。
【０１８８】
モバイル機器２３０３は、通信２４１０に対応する確認応答２４１９を送信するように
構成することができる。ヘッドユニット２４０１は、長距離送信機によって、接続２４１
６上で、サーバー２４０５と通信する（２４２２）ことができる。
【０１８９】
図２３及び２４に関して説明した各例では、ＩＶＩアプリケーションとバックエンドと
が、フレキシビリティを増加させて通信することができる、というのは、アプリケーショ
ン・プロトコルは、もはやＨＴＴＰに限定されないからであり、但しＨＴＴＰは除外され
ない。さらに、ＩＶＩアプリケーション及びバックエンドは、これらに限定されないが、
セキュア・ソケット・レイヤー（ＳＳＬ：Secure Socket Layer）またはトランスポート
層セキュリティ（ＴＬＳ：Transport Layer Security）を含むトランスポート・レベル・
セキュリティを用いて、通信用の強力なセキュリティ保証を提供することができる。これ
に加えて、中間的なＨＴＴＰプロキシがないことが、ＩＶＩアプリケーションとバックエ
ンド・サービスとの間で要求をストリーム送信する際に、より大きな効率を可能にする、
というのは、中間的なプロキシが要求及び応答を、プロキシ（代理伝送）する前に構文解
析する必要がないからである。
【０１９０】
図２５は、ＳＯＣＫＳプロキシ・プロトコル連鎖法を利用した、自動車ＩＶＩとバック
エンド（リモートサーバー）との間のデータ交換を可能にするスマートホン・アプリケー
ションを例示する簡略化した通信図である。
【０１９１】
一例では、プロキシ、例えばＳＯＣＫＳプロキシを、ＨＵＰ及びＨＡＰ内に含める。こ
れをプロキシ・チェイニングと称する。このプロキシ・チェインは、ＩＶＩ環境と、より
大きなＩＰネットワーク・バックエンドとの間の介在物として機能する。ＴＣＰまたはＵ
ＤＰ層においてデータをプロキシ（代理伝送）することによって、ＩＶＩ及びバックエン
ドは、ＨＴＴＰプロトコル単独で利用可能であるよりも大きい範囲のネットワーク・サー
ビスを利用することができる。
【０１９２】
一例では、ヘッドユニット２５０１が、ＳＯＣＫＳプロキシ・クライアントを有するＩ
ＶＩアプリケーション２５０２、及びＳＯＣＫＳプロキシ・サーバーを含むことができる
。ヘッドユニット２５０１は、ＳＯＣＫＳプロキシ・クライアントを有するＩＶＩアプリ
ケーション２５０２、及びＳＯＣＫＳプロキシ・サーバー２５０４を含むことができる。
ヘッドユニット２５０１は、モバイル機器２５０３とのＳＯＣＫＳネゴシエーションを開
始して、モバイル機器２５０３のリソースを利用することの要求を出すことができ、例え
ば、ＩＶＩアプリケーション２５０２から発生するＳＯＣＫＳ要求メッセージのためのＳ
ＯＣＫＳプロキシ・チェイニング通信２３１０を送信することができる。
【０１９３】
ヘッドユニット２５０１は、プロキシ・チェイニング通信２５１０を送信する前に、許
可チェックの最初の部分を実行するように構成することができる。例えば、ヘッドユニッ
ト２５０１は、加入／アカウント状態をチェックするように構成することができ、一例で
は、加入／アカウント状態が、所定の加入／アカウント状態、例えば有効（アクティブ）
な加入／アカウント状態に相当するものと判定したことに応答して、プロキシ・チェイニ
ング通信２５１０を送信するように構成することができる。加入／アカウント状態が、所
定の加入／アカウント状態に相当しない場合、例えば、無効な加入／アカウント状態に相
当する場合、プロキシ・チェイニング通信２５１０を送信しない。
【０１９４】
モバイル機器２５０３は、ＳＯＣＫＳプロキシ・チェイニング通信２５１０の要求を受
信したことに応答して、この要求を許可するか否かを決定する（２５１３）ように構成す
ることができる。一例では、モバイル機器２５０３によるこの決定が、許可方式の後続部
分である。一例では、この後続部分が、上記要求に関連する通信相手に基づくことができ
る。例えば、上記要求は、ヘッドユニット２５０１が、モバイル機器２５０３のリソース
、例えばモバイル機器２５０３の長距離トランシーバを用いて通信するための通信相手（
即ち、サーバー２５０５）を指示することができる。モバイル機器２５０３は、指示され
た通信相手に関連する識別子に基づいて、上記要求を認可するか否かを決定するように構
成することができる。一例では、モバイル機器２５０３は、上記識別子が、ローカル位置
またはリモート位置に記憶されたホワイトリストに含まれているか否かを判定するように
構成することができ、例えば、この識別子をホワイトリストと比較するように構成するこ
とができる。
【０１９５】
上記の例では、許可方式の実行を、ヘッドユニット２５０１とモバイル機器２５０３と
に割り振る。他のＳＯＣＫＳ・プロキシ・プロトコル・チェイニングの例では、許可方式
の実行を、ヘッドユニット２５０１またはモバイル機器２５０３によって実行することが
できる。
【０１９６】
モバイル機器２５０３は、上記要求を許可したことに応答して、通信２５１６を送信し
て、上記指示された通信相手との接続を確立することができる。一例では、モバイル機器
２５０３は、上記指示された通信相手に対してソケットを開放して、ＴＣＰまたはＵＤＰ
接続を確立するように構成することができる。
【０１９７】
モバイル機器２５０３は、ＳＯＣＫＳ要求メッセージ２５１０に対応するＳＯＣＫＳ完
了メッセージ２５１９を送信するように構成することができる。ヘッドユニット２５０１
は、長距離トランシーバを介して接続２５１６上で通信する（２５２２）ことができる。
【０１９８】
図２６は、トランスペアレント・プロキシ・チェイニングを利用した、ＩＶＩとバック
エンド（プロキシ・サーバー）との間の可能にするためのトランスペアレント・プロキシ
・サーバー機能を提供するソフトウェア・アプリケーションを例示する簡略化した通信図
である。
【０１９９】
他の例では、ＩＶＩアプリケーションがＳＯＣＫＳクライアント・プロトコルを実現す
る必要がない。その代わりに、ＩＶＩアプリケーションは、ＴＣＰまたはＵＤＰソケット
を、ＳＯＣＫＳネゴシエーションなしに使用し、ヘッドユニット・アプリケーションは、
ＩＶＩのために、ＴＣＰまたはＵＤＰソケットを、通信相手のエンドポイントに、トラン
スペアレント（透過的）にプロキシ・チェイニングする処理を行う。
【０２００】
一例では、ヘッドユニット２６０１が、ＳＯＣＫＳプロキシ・クライアントなしのＩＶ
Ｉアプリケーション２６０２を含むことができる。ＩＶＩアプリケーション２６０２は、
周知のポートに対してソケットを開放して、リモートサーバーのリソースを利用すること
の要求を開始することができる。
【０２０１】
前の例と同様に、ヘッドユニット２６０１は、周知のポートに対してソケットを開放す
る前に、許可チェックの最初の部分を実行するように構成することができる。例えば、ヘ
ッドユニット２６０１は、加入／アカウント状態をチェックするように構成することがで
き、一例では、加入／アカウント状態が、所定の加入／アカウント状態、例えば有効（ア
クティブ）な加入／アカウント状態に相当するものと判定したことに応答して、周知のポ
ートに対してソケットを開放するように構成することができる。加入／アカウント状態が
所定の加入／アカウント状態に相当しない場合、例えば、無効な加入／アカウント状態に
相当する場合、ソケットは開放しない。
【０２０２】
モバイル機器２６０３は、ＳＯＣＫＳ要求メッセージ２６１０の要求を受信したことに
応答して、この要求を許可するか否かを決定する（２６１３）ように構成することができ
る。一例では、モバイル機器２６０３によるこの決定を、許可方式の後続部分とすること
ができる。一例では、この後続部分が、上記要求に関連する通信相手に基づくことができ
る。例えば、上記要求は、ヘッドユニット２６０１が、モバイル機器２６０３のリソース
、例えばモバイル機器２６０３の長距離トランシーバを用いて通信するための通信相手（
即ち、サーバー２６０５）を指示することができる。モバイル機器２６０３は、上記指示
された通信相手に関連する識別子に基づいて、上記要求を許可するか否かを判定するよう
に構成することができる。一例では、モバイル機器２６０３は、上記識別子が、ローカル
位置またはリモート位置に記憶されたホワイトリストに含まれているか否かを判定するよ
うに構成することができ、例えば、上記識別子をホワイトリストと比較するように構成す
ることができる。
【０２０３】
他のプロキシ・チェイニングの例では、許可方式の実行を、ヘッドユニット２６０１ま
たはモバイル機器２６０３によって実行することができる。ヘッドユニット２６０１によ
って実行される許可方式の例として、ヘッドユニット２６０１は、ソケットの開放に応答
して、上記要求を許可するか否かを決定するように構成することができる。例えば、ヘッ
ドユニット２６０１は、トランスペアレントなプロキシ・サーバー２６０４において上記
要求を受信するポートを識別するように構成することができる。ヘッドユニット２６０１
は、ローカルまたはリモート・マッピングが、上記識別されたポートに対応するエントリ
を含むか否かを判定するように構成することができる。ヘッドユニット２６０１は、この
マッピングが上記エントリを含まないことに応答して、上記要求を許可しないように構成
することができる。ヘッドユニット２６０１は、このマッピングが上記エントリを含むも
のと判定したことに応答して、通信相手を発見するように構成することができる。ヘッド
ユニット２６０１は、こうした通信相手の発見を、モバイル機器２６０３と共有するよう
に構成することができる。
【０２０４】
どちらの装置が許可を実行するかにかかわらず、モバイル機器２６０３は、上記通信相
手の発見後に、通信２６１６を送信して、上記指示された通信相手との接続を確立するこ
とができる。一例では、モバイル機器２６０３は、発見した通信相手に対してソケットを
開放して、ＴＣＰまたはＵＤＰ接続を確立するように構成することができる。
【０２０５】
モバイル機器２６０３は、通信２６１０に対応して、ＳＯＣＫＳ完了メッセージ２６１
９を送信するように構成することができる。ヘッドユニット２６０１は、長距離トランシ
ーバを介して、接続２６１６上で、サーバー２６０５と通信（２６２２）することができ
る。
【０２０６】
図２５及び２６に関して説明した各例では、ＩＶＩアプリケーションとバックエンドと
が、フレキシビリティを増加させて通信することができる、というのは、アプリケーショ
ン・プロトコルは、もはやＨＴＴＰに限定されないからであり、但しＨＴＴＰは除外され
ない。さらに、ＩＶＩアプリケーション及びバックエンドは、これらに限定されないが、
ＳＳＬまたはＴＬＳを含むトランスポート・レベル・セキュリティを用いて、通信用の強
力なセキュリティ保証を提供することができる。これに加えて、中間的なＨＴＴＰプロキ
シがないことが、ＩＶＩアプリケーションとバックエンド・サービスとの間で要求をスト
リーム送信する際に、より大きな効率を可能にする、というのは、中間的なプロキシが要
求及び応答を、プロキシ（代理伝送）する前に構文解析する必要がないからである。
【０２０７】
一例では、方法が提供される。この方法は、モバイル機器と車載ヘッドユニットとを結
合するステップと；モバイル機器において、車載ヘッドユニットが当該モバイル機器のリ
ソースを利用することの要求を受信するステップと；モバイル機器によって、この要求を
許可するか否かを決定するステップと；この要求を許可することを決定したことに応答し
て、モバイル機器のプロキシを利用して、通信相手との接続を確立するステップとを含む
。
【０２０８】
一例では、上記決定するステップが、上記通信相手に関連する識別子に基づく。一例で
は、上記方法が、上記識別子または通信相手がホワイトリストに含まれるか否かを判定す
るステップを含む。
【０２０９】
一例では、上記方法が、モバイル機器において上記要求を受信するポートを識別するス
テップと；マッピングが上記エントリを含むものと判定したことに応答して、上記通信相
手を発見するステップとを含む。
【０２１０】
一例では、モバイル機器のプロキシが、上記要求を車載ヘッドユニットから送信した第
２プロキシ・サーバーとは異なる第１プロキシ・サーバーを具えている。一例では、この
第１プロキシ・サーバーが、第１ＳＯＣＫＳプロキシ・サーバーを具えている。一例では
、上記決定するステップが、上記通信相手に関連する識別子に基づく。一例では、上記方
法が、上記識別子または通信相手がホワイトリストに含まれるか否かを判定するステップ
を含む。一例では、上記方法が、モバイル機器において上記要求を受信するポートを識別
するステップと；マッピングが、この識別したポートに対応するエントリを含むか否かを
判定するステップと；上記マッピングが、このエントリを含むものと識別したことに応答
して、上記通信相手を発見するステップを含む。一例では、モバイル機器によって、上記
要求を許可するか否かを決定するステップが、上記要求に関連する加入／アカウント状態
をチェックすることと；上記マッピングが上記エントリを含み、かつ上記加入／アカウン
ト状態が所定の加入／アカウント状態に相当するものと判定したことに応答して、上記要
求を許可することとをさらに含む。
【０２１１】
一例では、特別に構成されたメモリ装置が提供される。このメモリ装置は命令を記憶し
、これらの命令は、処理装置による実行に応答して、この処理装置に動作を実行させ、こ
れらの動作は、モバイル機器とヘッドユニットを結合させることと；モバイル機器におい
て、車載ヘッドユニットが当該モバイル機器のリソースを利用することの要求を受信する
ことと；モバイル機器によって、この要求を許可するか否かを決定することと；この要求
を許可することを決定したことに応答して、モバイル機器のプロキシを利用して、通信相
手との接続を確立することとを含む。
【０２１２】
一例では、上記決定することが、上記通信相手に関連する識別子に基づく。一例では、
上記動作が、上記識別子または通信相手が、ホワイトリストに含まれるか否かを判定する
ことを含む。
【０２１３】
一例では、上記動作が、モバイル機器において上記要求を受信するポートを識別するこ
とと、マッピングが、この識別したポートに対応するエントリを含むか否かを判定するこ
とと；上記マッピングが、このエントリを含むものと判定したことに応答して、上記通信
相手を発見することを含む。
【０２１４】
一例では、モバイル機器のプロキシが、上記要求を車載ヘッドユニットから送信した第
２プロキシ・サーバーとは異なる第１プロキシ・サーバーを具えている。一例では、この
第１プロキシ・サーバーが、第１ＳＯＣＫＳプロキシ・サーバーを具えている。一例では
、上記決定することが、上記通信相手に関連する識別子に基づく。一例では、上記動作が
、上記識別子または通信相手がホワイトリストに含まれるか否かを判別することを含む。
一例では、上記動作が、モバイル機器において上記要求を受信するポートを決定すること
と；マッピングが、この識別したポートに対応するエントリを含むか否かを判定すること
と；上記マッピングが、このエントリを含むものと判定したことに応答して、上記通信相
手を発見することとを含む。一例では、モバイル機器によって上記要求を許可することが
、上記要求に関連する加入／アカウント状態をチェックすることと；上記マッピングが上
記エントリを含み、かつ、上記加入／アカウント状態が所定の加入／アカウント状態に相
当するものと判定したことに応答して、上記要求を許可することを決定することを、さら
に含む。
【０２１５】
本発明の基になる原理から逸脱することなしに、上述した実施形態の細部に多数の変更
を加えることができることは、当業者にとって自明である。従って、本発明の範囲は、以
下の特許請求の範囲のみによって定められる。
【０２１６】
以上に説明した装置の大部分が、ハードウェア及び関連するソフトウェアを具えている
。例えば、一般的なナビゲーション装置は、１つ以上のプロセッサ、及びこれらのプロセ
ッサ上で実行可能なソフトウェアを含んで、上述した動作を実行することが多い。本明細
書では、「ソフトウェア」を、一般的に理解されている意味で、プログラムまたはルーチ
ン（サブルーチン、オブジェクト、プラグイン、等）、並びに機械またはプロセッサが使
用可能なデータを参照すべく用いる。周知のように、コンピュータプログラムは、一般に
、機械可読またはコンピュータ可読の記憶媒体に記憶された命令を含む。本発明の一部の
実施形態は、デジタルメモリのような機械可読またはコンピュータ可読の媒体に記憶され
た、実行可能なプログラムまたは命令を含むことができる。特定実施形態のいずれにおい
ても、通常の意味での「コンピュータ」が要求されることを暗に意味しない。例えば、本
明細書に記載した構成要素のような装置内で、種々のプロセッサを、組み込むか他の方法
で用いることができる。
【０２１７】
ソフトウェアを記憶するメモリも周知である。一部の実施形態では、所定のプロセッサ
に関連するメモリを、プロセッサと同じ物理的デバイス内に格納することができ（「オン
ボード」メモリ）、例えば、ＲＡＭ（Random Access Memory：ランダムアクセスメモリ）
またはフラッシュメモリが、集積回路型マイクロプロセッサ等の中に配置される。他の例
では、上記メモリが、外付けディスクドライブ（ディスク駆動装置）、記憶アレイ、また
はポータブルなフラッシュ・キーフォブのような独立型装置を含む。こうした場合、上記
メモリと上記デジタルプロセッサとが、動作的に互いに結合されるか、例えばＩ／Ｏ（In
put/Output：入出力）ポート、ネットワーク接続、等によって互いに通信する際に、上記
メモリが上記プロセッサと「関連する」ようになり、これにより、上記プロセッサが、上
記メモリ上に記憶されたファイルを読み出すことができる。関連するメモリは、設計によ
り（ＲＯＭ：Read Only Memory：読出し専用メモリ）、あるいは許可設定により、「読出
し専用」にすることができる。他の例は、ＷＯＲＭ（Write, Once Read Many：追記型光
ディスク）、ＥＰＲＯＭ（Erasable Programmable ROM：消去可能プログラマブルＲＯＭ
）、ＥＥＰＲＯＭ（Electrically Erasable Programmable ROM：電気的消去可能プログラ
マブルＲＯＭ）、ＦＬＡＳＨ（フラッシュメモリ）、等を含むが、これらに限定されない
。これらの技術は、固体半導体デバイスの形で実現されることが多い。他のメモリは、従
来の回転ディスクドライブのような可動部分を含むことができる。こうしたメモリのすべ
てが「機械可読」または「コンピュータ可読」であり、本明細書に記載した機能を実現す
るための実行可能な命令を記憶するために用いることができる。
【０２１８】
「ソフトウェア製品」とは、一連の実行可能な命令がマシン可読な形式で記憶され、こ
れにより、適切な機械またはプロセッサが、当該ソフトウェア製品への適切なアクセスに
より、これらの命令を実行して、これらの命令によって実現されるプロセス（工程）を実
行することができるメモリ装置を称する。ソフトウェア製品は、時として、ソフトウェア
を配給するために使用される。以上にまとめて挙げたものを限定なしに含む、あらゆる種
類の機械可読メモリを用いて、ソフトウェア製品を作製することができる。とは言え、ソ
フトウェアは、電子的伝送（「ダウンロード」）によって配給することができることも知
られ、この場合、一般に、伝送の送信側、または受信側、あるいはその両方に、対応する
ソフトウェア製品が存在する。
【０２１９】
本発明の原理を、その好適な実施形態の形で説明し図示してきたが、こうした原理を逸
脱することなしに、本発明の構成及び細部を変更することができることは明らかである。
すべての変更及び変形が、以下の請求項の精神及び範囲内に入ることを主張する。
【図１】
2019004499.tif 000003
【図２Ａ】
2019004499.tif 000004
【図２Ｂ】
2019004499.tif 000005
【図３】
2019004499.tif 000006
【図４】
2019004499.tif 000007
【図５】
2019004499.tif 000008
【図６】
2019004499.tif 000009
【図７】
2019004499.tif 000010
【図８】
2019004499.tif 000011
【図９】
2019004499.tif 000012
【図１０】
2019004499.tif 000013
【図１１】
2019004499.tif 000014
【図１２】
2019004499.tif 000015
【図１３Ａ】
2019004499.tif 000016
【図１３Ｂ】
2019004499.tif 000017
【図１４】
2019004499.tif 000018
【図１５】
2019004499.tif 000019
【図１６】
2019004499.tif 000020
【図１７】
2019004499.tif 000021
【図１８】
2019004499.tif 000022
【図１９】
2019004499.tif 000023
【図２０】
2019004499.tif 000024
【図２１】
2019004499.tif 000025
【図２２】
2019004499.tif 000026
【図２３】
2019004499.tif 000027
【図２４】
2019004499.tif 000028
【図２５】
2019004499.tif 000029
【図２６】
2019004499.tif 000030
【手続補正書】
【提出日】平成30年9月26日(2018.9.26)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
モバイル機器、及び有線または短距離無線送信機の少なくとも一方によって該モバイル機器に結合された自動車を含むシステム内の１つ以上の処理装置によって実行される一連のステップを含む方法であって、前記一連のステップは、
前記モバイル機器において、前記自動車からの要求を受信するステップと；
前記要求を受信したことに応答して、前記要求に含まれる通信相手についての情報に基づいて、前記自動車が前記モバイル機器のリソースを利用することを許可するか否かを決定するステップであって、前記リソースは、前記モバイル機器の長距離無線送信機を含むステップと；
前記決定の結果に基づいて、前記自動車が前記モバイル機器のリソースを利用する前記要求を許可するステップと；
前記要求が許可された場合に、前記モバイル機器のプロキシを利用して、前記通信相手との接続を確立するステップと
を含み、
前記自動車及び前記通信相手が、前記接続上で交換されるデータ用のトランスポート・レベル・セキュリティを用いることを特徴とする方法。
【請求項２】
前記要求に含まれる通信相手についての情報に基づいて、前記自動車が前記モバイル機器のリソースを利用することを許可するか否かを決定するステップが、前記通信相手に対応する識別子と所定リストとを比較することを含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記要求に含まれる通信相手についての情報に基づいて、前記自動車が前記モバイル機器のリソースを利用することを許可するか否かを決定するステップが：
前記自動車において、前記要求に対応する加入／アカウント状態が、所定の加入／アカウント状態に相当するか否かを判定することと；
前記自動車において、前記加入／アカウント状態が前記所定の加入／アカウント状態に相当するものと判定したことに応答して、前記モバイル機器において、前記通信相手に関連する識別子が、所定リスト中のエントリに対応するか否かを判定することと
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項４】
モバイル機器、及び有線または短距離無線送信機の少なくとも一方によって該モバイル機器に結合された自動車を含むシステム内の１つ以上の処理装置によって実行される方法であって、
前記モバイル機器と前記自動車とを結合するステップと；
前記自動車が前記モバイル機器のリソースを利用することの要求を受信するステップと；
前記要求を許可するか否かを決定するステップと；
前記要求を許可することを決定したことに応答して、前記モバイル機器のプロキシを利用して、通信相手との接続を確立するステップとを含み、
前記要求を許可するか否かを決定するステップが、
前記要求によって指示される通信相手に関連する識別子に基づいて、前記要求を許可するか否かを判定することと、
前記自動車において、前記要求に対応する加入／アカウント状態が、所定の加入／アカウント状態に相当するか否かを判定することと；
前記自動車において、前記加入／アカウント状態が前記所定の加入／アカウント状態に相当するものと判定したことに応答して、前記モバイル機器において、前記通信相手に関連する識別子が、所定リスト中のエントリに対応するか否かを判定することと
をさらに含み、
前記自動車において、前記加入／アカウント状態が前記所定の加入／アカウント状態に相当するものと判定したことに応答して、前記自動車において、ＳＯＣＫＳ（ソケット・セキュア）プロキシ・チェイニング通信を前記モバイル機器に送信するステップと；
前記モバイル機器において、受信した前記ＳＯＣＫＳプロキシ・チェイニング通信から、前記通信相手を認識するステップと
をさらに含むことを特徴とする方法。
【請求項５】
前記一連のステップが、
前記自動車において、前記加入／アカウント状態が前記所定の加入／アカウント状態に相当するものと判定したことに応答して、前記自動車において、第１ソケットを周知のポートに対して開放するステップと；
前記自動車において、前記通信相手に関連する識別子が、前記所定リスト中のエントリに対応するものと判定したことに応答して、前記モバイル機器において、第２ソケットを開放するステップと
をさらに含むことを特徴とする請求項３に記載の方法。
【請求項６】
前記モバイル機器において、前記自動車からの要求を受信するステップが、前記モバイル機器において前記要求を受信するポートを識別するステップをさらに含み、
前記自動車が前記モバイル機器のリソースを利用することを許可するか否かを決定するステップが、マッピングが、前記識別したポートに対応するエントリを含むか否かを判定するステップと
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項７】
前記モバイル機器の前記プロキシが、前記要求を前記自動車から送信した第２プロキシ・サーバーとは異なる第１プロキシ・サーバーを具えていることを特徴とする請求項１に記載の方法。
【請求項８】
前記第１プロキシ・サーバーが、第１ＳＯＣＫＳプロキシ・サーバーを具えていることを特徴とする請求項７に記載の方法。
【請求項９】
前記モバイル機器において、前記自動車からの要求を受信するステップが、前記モバイル機器において前記要求を受信するポートを識別するステップをさらに含み、
前記自動車が前記モバイル機器のリソースを利用することを許可するか否かを決定するステップが、マッピングが、前記識別したポートに対応するエントリを含むか否かを判定するステップと
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項１０】
前記一連のステップが、
前記モバイル機器において、前記要求に関連する加入／アカウント状態をチェックするステップをさらに含み、
前記マッピングが前記エントリを含み、かつ、前記加入／アカウント状態が所定の加入／アカウント状態に相当するものと判定したことに応答して、前記要求が許可されることを特徴とする請求項９に記載の方法。
【請求項１１】
モバイル機器、及び有線または短距離無線送信機の少なくとも一方によって該モバイル機器に結合された自動車を含むシステム内の１つ以上の処理装置による実行に応答して、前記処理装置に動作を実行させる命令を記憶したメモリ装置であって、前記動作が：
前記モバイル機器において、前記自動車からの要求を識別するステップと；
前記要求を識別したことに応答して、前記要求に含まれる通信相手についての情報に基づいて、前記自動車が前記モバイル機器のリソースを利用することを許可するか否かを決定するステップであって、前記リソースは、前記モバイル機器の長距離無線送信機を含むステップと；
前記決定の結果に基づいて、前記自動車が前記モバイル機器のリソースを利用する前記要求を許可するステップと；
前記要求が許可された場合に、前記モバイル機器のプロキシを利用して、前記通信相手との接続を確立するステップと
を含み、
前記自動車及び前記通信相手が、前記接続上で交換されるデータ用のトランスポート・レベル・セキュリティを用いることを特徴とするメモリ装置。
【請求項１２】
前記要求に含まれる通信相手についての情報に基づいて、前記自動車が前記モバイル機器のリソースを利用することを許可するか否かを決定するステップが、前記要求に対応する加入／アカウント状態が所定の加入／アカウント状態に相当する場合のみに、前記モバイル機器において、前記通信相手に対応する識別子が所定リスト中のエントリに対応するか否かを判定することを、さらに含むことを特徴とする請求項１１に記載のメモリ装置。
【請求項１３】
モバイル機器、及び有線または短距離無線送信機の少なくとも一方によって該モバイル機器に結合された自動車を含むシステム内の１つ以上の処理装置による実行に応答して、前記処理装置に動作を実行させる命令を記憶したメモリ装置であって、前記動作が：
前記モバイル機器において、前記自動車からの要求を識別するステップと；
前記要求を識別したことに応答して、前記要求に含まれる通信相手についての情報に基づいて、前記自動車が前記モバイル機器のリソースを利用することを許可するか否かを決定するステップであって、前記リソースは、前記モバイル機器の長距離無線送信機を含むステップと；
前記決定の結果に基づいて、前記自動車が前記モバイル機器のリソースを利用する前記要求を許可するステップと；
前記要求が許可された場合に、前記モバイル機器のプロキシを利用して、前記通信相手との接続を確立するステップと
を含み、
前記要求に含まれる通信相手についての情報に基づいて、前記自動車が前記モバイル機器のリソースを利用することを許可するか否かを決定するステップが、前記要求に対応する加入／アカウント状態が所定の加入／アカウント状態に相当する場合のみに、前記モバイル機器において、前記通信相手に対応する識別子が所定リスト中のエントリに対応するか否かを判定することを、さらに含み、
前記動作が、
前記モバイル機器において、前記自動車から発生するＳＯＣＫＳ（ソケット・セキュア）プロキシ・チェイニング通信を受信したことに応答して、前記受信したＳＯＣＫＳプロキシ・チェイニング通信から前記通信相手を認識するステップを、さらに含むことを特徴とするメモリ装置。
【請求項１４】
前記動作が、
前記通信相手に対応する識別子がホワイトリストに含まれているか否かを判定するステップを、さらに含むことを特徴とする請求項１１に記載のメモリ装置。
【請求項１５】
前記モバイル機器において、前記自動車からの要求を識別するステップが、前記モバイル機器において前記要求を受信するポートを識別するステップをさらに含み、
前記自動車が前記モバイル機器のリソースを利用することを許可するか否かを決定するステップが、マッピングが、前記識別したポートに対応するエントリを含むか否かを判定するステップと
をさらに含むことを特徴とする請求項１１に記載のメモリ装置。
【請求項１６】
前記動作が、
前記対応するエントリに基づいてソケットを開放するステップをさらに含むことを特徴とする請求項１５に記載のメモリ装置。
【請求項１７】
前記動作が、
前記自動車において、前記通信相手に対応する識別子が所定リスト中のエントリに対応するものと判定したことに応答して、ソケットを開放するステップをさらに含むことを特徴とする請求項１１に記載のメモリ装置。
【請求項１８】
前記モバイル機器の前記プロキシが、前記要求を前記自動車から送信した第２プロキシ・サーバーとは異なる第１プロキシ・サーバーを具えていることを特徴とする請求項１１に記載のメモリ装置。
【請求項１９】
前記第１プロキシ・サーバーが、第１ＳＯＣＫＳプロキシ・サーバーを具えていることを特徴とする請求項１８に記載のメモリ装置。
【請求項２０】
前記自動車において、ＳＯＣＫＳ（ソケット・セキュア）プロキシ・チェイニング通信を前記モバイル機器に送信するステップと；
前記モバイル機器において、受信した前記ＳＯＣＫＳプロキシ・チェイニング通信から、前記通信相手を認識するステップと
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項２１】
前記トランスポート・レベル・セキュリティが、セキュア・ソケット・レイヤー（ＳＳＬ）を含むことを特徴とする請求項１に記載の方法。
【請求項２２】
前記トランスポート・レベル・セキュリティが、トランスポート層セキュリティ（ＴＬＳ）を含むことを特徴とする請求項１に記載の方法。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１９
【補正方法】変更
【補正の内容】
【００１９】
ブロック２０１では、ソフトウェア３２が、電話機２０上の特定アプリケーション４０がヘッドユニット２１のインタフェース（入力２４のリソース１〜２及び出力２５のリソース３〜４を含む）を利用することの要求を受信する。この要求は、自動車及び／またはヘッドユニット２１のユーザに対応するユーザ識別子、特定アプリケーション４０に対応するアプリケーション識別子、及び車両状態情報を含む。ユーザ識別子は、制御ソフトウェア３０Ａが携帯電話２０において最初に起動された時点でユーザによって提供された識別子、ユーザの電話番号、等とすることができる。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００４５
【補正方法】変更
【補正の内容】
【００４５】
ブロック５０４では、ソフトウェア２３２が、ＩＰパケット２５０を発生し送信して、アプリケーション２４０を車両上にダウンロードする。ＩＰパケット２５０は、携帯電話２２０によって受信され、ソフトウェア２３１の動作によってヘッドユニット２２１へ転送される。ブロック５０５では、ソフトウェア２３０がＩＰパケット２５０を受信して、アプリケーション２４０（Ｊ〜Ｌ）を車両上にインストールする（インストールは、ヘッドユニット２２１の構成要素上または他の車両構成要素上にすることができる）。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０１２９
【補正方法】変更
【補正の内容】
【０１２９】
車載ヘッドユニット１４１２がアプリケーション命令を受信すれば、車載ヘッドユニット１４１２は、車載ヘッドユニット１４１２を拡張インタフェースとして利用することができるモバイル機器用のソフトウェア・ボタンを有するグラフィカル・ユーザ・インタフェースを構築することができる（信号１５０９）。表示されたＧＵＩは、テンプレートＨＭＩアプリケーション１４２１（図１４）のＨＭＩスクリーン１４２３（図１４）のうちの１つを利用することができる。車載ヘッドユニット１４１２を拡張インタフェースとして利用するモバイル機器アプリケーションを選択するユーザ入力に応答して、車載ヘッドユニット１４１２は、ダウンロードしたアプリケーション命令のうち対応するものを実行する（信号１５１１）。車載ヘッドユニットは、対応するアプリケーション命令を実行した結果に基づいて、テンプレートＨＭＩアプリケーションを動作させる（信号１５１３）。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】０１９２
【補正方法】変更
【補正の内容】
【０１９２】
一例では、ヘッドユニット２５０１が、ＳＯＣＫＳプロキシ・クライアントを有するＩＶＩアプリケーション２５０２、及びＳＯＣＫＳプロキシ・サーバーを含むことができる。ヘッドユニット２５０１は、ＳＯＣＫＳプロキシ・クライアントを有するＩＶＩアプリケーション２５０２、及びＳＯＣＫＳプロキシ・サーバー２５０４を含むことができる。ヘッドユニット２５０１は、モバイル機器２５０３とのＳＯＣＫＳネゴシエーションを開始して、モバイル機器２５０３のリソースを利用することの要求を出すことができ、例えば、ＩＶＩアプリケーション２５０２から発生するＳＯＣＫＳ要求メッセージのためのＳＯＣＫＳプロキシ・チェイニング通信２５１０を送信することができる。
【手続補正６】
【補正対象書類名】図面
【補正対象項目名】図７
【補正方法】変更
【補正の内容】
【図７】
2019004499.tif 000031
【手続補正７】
【補正対象書類名】図面
【補正対象項目名】図１９
【補正方法】変更
【補正の内容】
【図１９】
2019004499.tif 000032
【手続補正８】
【補正対象書類名】図面
【補正対象項目名】図２０
【補正方法】変更
【補正の内容】
【図２０】
2019004499.tif 000033
【外国語明細書】
2019004499000001.pdf