(57)【要約】【課題】不要なサービスの提供を抑制できる電子機器を実現する。【解決手段】電子機器１０と外部デバイスとが近接状態に設定された場合、電子機器１０と外部デバイスとはＣＮＬ接続を確立する。そして、ネゴシエーション処理部４０３は、モード調停、サービスネゴシエーション、及びサービス同期等のネゴシエーション処理を実行する。サービス処理部４０５により、ネゴシエーション処理で決定されたサービスの実行が完了した場合、待機処理部４０６は、サービス開始要求のイベントが発生するまで、新たなサービスの提供を開始するための処理を待つ待機処理を実行する。つまり、待機処理部４０６が、サービス開始要求のイベントが発生したことに応答して待機処理を終了した場合に、新たなサービスの提供を開始するための処理が実行される。【選択図】図３
2010252036.tif 000002
【特許請求の範囲】
【請求項１】
近接無線通信を実行する通信モジュールと、
前記通信モジュールと外部デバイスとが近接状態である場合に、前記通信モジュールと前記外部デバイスとの間の接続を確立する接続確立手段と、
前記通信モジュールと前記外部デバイスとの間の接続が確立されている場合に、前記通信モジュールと前記外部デバイスとの間におけるネゴシエーション処理によって、前記通信モジュールと前記外部デバイスとの間で実行するサービスを決定するネゴシエーション手段と、
前記決定されたサービスを実行するサービス実行手段と、
前記決定されたサービスの実行が完了した後、前記通信モジュールと前記外部デバイスとの間の接続が維持されている場合、ユーザによる要求又は前記外部デバイスからの要求に応答して、前記ネゴシエーション処理を再度実行する実行制御手段とを具備することを特徴とする電子機器。
【請求項２】
前記実行制御手段は、前記決定されたサービスの実行が完了した後、ユーザによる要求までの間、前記ネゴシエーション処理の開始要求を送信しないことを特徴とする請求項１記載の電子機器。
【請求項３】
前記決定されたサービスの実行が完了した場合、実行完了を示すフラグをセットし、前記通信モジュールと前記外部デバイスとの間の接続が確立されている場合、ユーザによる要求又は前記外部デバイスからの要求に応答して、前記フラグをリセットするフラグ設定手段をさらに具備し、
前記実行制御手段は、前記フラグのリセットに応答して、前記ネゴシエーション処理を再度実行することを特徴とする請求項１記載の電子機器。
【請求項４】
近接無線通信を実行する通信モジュールと、
前記通信モジュールと前記外部デバイスとが近接状態である場合に、前記通信モジュールと前記外部デバイスとの間の接続を確立する接続確立手段と、
前記通信モジュールと前記外部デバイスとの間の接続が確立されている場合、前記外部デバイスが、通信相手のデバイスへサービスの開始要求を送信する第一のモード、又は通信相手のデバイスからサービスの開始要求を受信する第二のモードのいずれかであるかを判定する処理と、前記外部デバイスが前記第一のモードに設定されている場合、前記外部デバイスからサービスの開始要求を受信する処理と、前記外部デバイスが前記第二のモードに設定されている場合、前記外部デバイスへサービスの開始要求を送信し、前記通信モジュールと前記外部デバイスとの間で実行するサービスを決定する処理とを含むネゴシエーション処理を実行するネゴシエーション手段と、
前記決定されたサービスを実行するサービス実行手段と、
前記決定されたサービスの実行が完了した後、前記通信モジュールと前記外部デバイスとの間の接続が維持されている場合、ユーザによる要求又は前記外部デバイスからの要求に応答して、前記ネゴシエーション処理を再度実行する実行制御手段とを具備することを特徴とする電子機器。
【請求項５】
前記ネゴシエーション手段は、前記外部デバイスが前記第二のモードに設定されている場合、前記外部デバイスへサービスの開始要求を送信し、前記外部デバイスから前記外部デバイスが実行し得るサービス群を示す情報を受信し、前記サービス群から選択されたサービスを、前記通信モジュールと前記外部デバイスとの間で実行するサービスに決定し、
前記実行制御手段は、前記決定されたサービスの実行が完了した後、前記通信モジュールと前記外部デバイスとの間の接続が維持されている場合、ユーザによる要求又は前記外部デバイスからの要求に応答して、前記ネゴシエーション処理を再度実行することを特徴とする請求項４記載の電子機器。
【請求項６】
前記ネゴシエーション手段は、前記外部デバイスが前記第一のモードに設定されている場合、前記外部デバイスからサービスの開始要求を受信し、前記外部デバイスで指定されたサービスを示す情報を受信し、当該サービスを前記通信モジュールと前記外部デバイスとの間で実行するサービスに決定し、
前記実行制御手段は、前記決定されたサービスの実行が完了した後、前記通信モジュールと前記外部デバイスとの間の接続が維持されている場合、ユーザによる要求又は前記外部デバイスからの要求に応答して、前記ネゴシエーション処理を再度実行することを特徴とする請求項４記載の電子機器。
【請求項７】
前記ネゴシエーション手段は、ユーザによる要求に応答して、前記外部デバイスへサービスの開始要求を送信し、前記ユーザによる要求で指定されたサービスを前記通信モジュールと前記外部デバイスとの間で実行するサービスに決定し、
前記実行制御手段は、前記決定されたサービスの実行が完了した後、前記通信モジュールと前記外部デバイスとの間の接続が維持されている場合、ユーザによる要求又は前記外部デバイスからの要求に応答して、前記ネゴシエーション処理を再度実行することを特徴とする請求項４記載の電子機器。
【請求項８】
前記決定されたサービスの実行が完了した場合、サービスの実行完了を示すフラグをセットし、前記通信モジュールと前記外部デバイスとの間の接続が確立されている場合、ユーザによる要求又は前記外部デバイスからの要求に応答して、前記フラグをリセットするフラグ設定手段をさらに具備し、
前記実行制御手段は、前記フラグのリセットに応答して、前記ネゴシエーション処理を再度実行することを特徴とする請求項４記載の電子機器。
【請求項９】
近接無線通信を実行する通信モジュールを備える電子機器と外部デバイスとの間の通信を制御する通信制御方法であって、
前記通信モジュールと外部デバイスとが近接状態である場合に、前記通信モジュールと前記外部デバイスとの間の接続を確立する接続確立ステップと、
前記通信モジュールと前記外部デバイスとの間の接続が確立されている場合に、前記通信モジュールと前記外部デバイスとの間におけるネゴシエーション処理によって、前記通信モジュールと前記外部デバイスとの間で実行するサービスを決定するネゴシエーションステップと、
前記決定されたサービスを実行するサービス実行ステップと、
前記決定されたサービスの実行が完了した後、前記通信モジュールと前記外部デバイスとの間の接続が維持されている場合、ユーザによる要求又は前記外部デバイスからの要求に応答して、前記ネゴシエーション処理を再度実行する実行制御ステップとを具備することを特徴とする通信制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、近接無線通信方式で通信を行う電子機器及び同機器に適用される通信制御方法に関する。
【背景技術】
【０００２】
近年、ＩＣカード、携帯電話機等においては、ＮＦＣのような無線通信が利用され始めている。ユーザは、ＩＣカード又は携帯電話をホスト装置のリーダ／ライタ部にかざすといった操作を行うだけで、認証処理、課金等のための通信を容易に行うことができる。
【０００３】
特許文献１には、近距離無線を利用する複数のアプリケーションが同時に実行された場合に、アプリケーションを終了して通信リソースを解放するという操作をすることなく、各アプリケーションが近距離無線を利用できるように通信管理を行う無線通信装置が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−１０４０８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、近接無線通信方式では、デバイス同士を近づけるだけで自動的にサービスの実行を開始したいという要求がある。デバイス同士を近づけて自動的にサービスの実行を開始する場合、例えば、携帯電話機をパーソナルコンピュータに近づけるだけで、携帯電話機に保存されたデータとパーソナルコンピュータに格納している当該データのバックアップとを同期させるといった機能を実現することができる。つまり、デバイス間の近接状態が検出されると、ネゴシエーションを経て、自動的にサービスの提供を開始することができる。
【０００６】
しかし、サービスの提供が完了した後、デバイス同士を近接状態で放置している場合に、再度、自動的にサービスの提供が開始されるとユーザが望まないサービスの提供が開始されてしまう可能性がある。また、望まないサービスの提供が開始されると、ユーザは、このサービスを停止させるための操作を行う必要があり、これは、ユーザにとって煩雑な作業であるといえる。
【０００７】
本発明は上述の事情を考慮してなされたものであり、不要なサービスの提供を抑制できる電子機器及び通信制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上述の課題を解決するため、本発明の電子機器は、近接無線通信を実行する通信モジュールと、前記通信モジュールと外部デバイスとが近接状態である場合に、前記通信モジュールと前記外部デバイスとの間の接続を確立する接続確立手段と、前記通信モジュールと前記外部デバイスとの間の接続が確立されている場合に、前記通信モジュールと前記外部デバイスとの間におけるネゴシエーション処理によって、前記通信モジュールと前記外部デバイスとの間で実行するサービスを決定するネゴシエーション手段と、前記決定されたサービスを実行するサービス実行手段と、前記決定されたサービスの実行が完了した後、前記通信モジュールと前記外部デバイスとの間の接続が維持されている場合、ユーザによる要求又は前記外部デバイスからの要求に応答して、前記ネゴシエーション処理を再度実行する実行制御手段とを具備することを特徴とする。
【０００９】
また、本発明の電子機器は、近接無線通信を実行する通信モジュールと、前記通信モジュールと前記外部デバイスとが近接状態である場合に、前記通信モジュールと前記外部デバイスとの間の接続を確立する接続確立手段と、前記通信モジュールと前記外部デバイスとの間の接続が確立されている場合、前記外部デバイスが、通信相手のデバイスへサービスの開始要求を送信する第一のモード、又は通信相手のデバイスからサービスの開始要求を受信する第二のモードのいずれかであるかを判定する処理と、前記外部デバイスが前記第一のモードに設定されている場合、前記外部デバイスからサービスの開始要求を受信する処理と、前記外部デバイスが前記第二のモードに設定されている場合、前記外部デバイスへサービスの開始要求を送信し、前記通信モジュールと前記外部デバイスとの間で実行するサービスを決定する処理とを含むネゴシエーション処理を実行するネゴシエーション手段と、前記決定されたサービスを実行するサービス実行手段と、前記決定されたサービスの実行が完了した後、前記通信モジュールと前記外部デバイスとの間の接続が維持されている場合、ユーザによる要求又は前記外部デバイスからの要求に応答して、前記ネゴシエーション処理を再度実行する実行制御手段とを具備することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、不要なサービスの提供を抑制できる。
【図面の簡単な説明】
【００１１】
【図１】本発明の一実施形態に係る電子機器のシステム構成を示すブロック図である。
【図２】同実施形態の電子機器に適用される、近接無線通信を制御するためのソフトウェアアーキテクチャの例を示す図。
【図３】図２のソフトウェアアーキテクチャ内に含まれるＰＣＬの構成例を示すブロック図。
【図４】同実施形態の電子機器の外観を示す斜視図。
【図５】同実施形態の電子機器と外部デバイスとの間で実行される近接無線通信の例を示す図。
【図６】デバイス間の近接無線通信の例を示すシーケンス図。
【図７】デバイス間の近接無線通信の別の例を示すシーケンス図。
【図８】同実施形態の電子機器と外部デバイスとの間で実行される近接無線通信の例を示すシーケンス図。
【図９】同実施形態の電子機器と外部デバイスとの間で実行される近接無線通信の別の例を示すシーケンス図。
【図１０】同実施形態の電子機器と外部デバイスとの間実行される近接無線通信の他の例を示すシーケンス図。
【図１１】同実施形態の電子機器と外部デバイスとの間実行される近接無線通信のさらに別の例を示すシーケンス図。
【図１２】同実施形態の電子機器による近接無線通信の状態遷移の例を示す状態遷移図。
【図１３】同実施形態の電子機器と外部デバイスとの間で提供されるサービスについて説明する図。
【図１４】近接無線通信方式で通信を行うデバイスによる近接無線通信処理の手順を示すフローチャート。
【図１５】同実施形態の電子機器による近接無線通信処理の手順を示すフローチャート。
【発明を実施するための形態】
【００１２】
以下、図面を参照して本発明の実施形態を説明する。
【００１３】
図１は、本発明の一実施形態に係る電子機器の構成を示している。この電子機器１０は、例えば、携帯機器（例えば、携帯電話機、ＰＤＡ、オーディオプレーヤ等）、パーソナルコンピュータ、又はコンシューマ機器（例えば、ＴＶ、ビデオレコーダ等）として実現される。この電子機器１０は、システム制御部１０１、ＲＯＭ１０２、ＲＡＭ１０３、近接無線通信デバイス１０４、電源制御部１０５、ＡＣアダプタ１０６、及びバッテリ１０７を備える。
【００１４】
システム制御部１０１は、電子機器１０内の各部の動作を制御する。システム制御部１０１は、ＣＰＵ１０１ａを備え、ＲＯＭ１０２、ＲＡＭ１０３、近接無線通信デバイス１０４、及び電源制御部１０５に接続される。
【００１５】
ＣＰＵ１０１ａは、ＲＯＭ１０２に格納された命令群及びデータをＲＡＭ１０３へロードし、必要な処理を実行するプロセッサである。ＲＡＭ１０３には、近接無線通信を制御するための近接無線通信制御プログラム１０３ａがロードされている。ＣＰＵ１０１ａは、ＲＡＭ１０３にロードされた近接無線通信制御プログラム１０３ａを実行して、近接無線通信デバイス１０４を制御する。
【００１６】
近接無線通信デバイス１０４は、近接無線通信を実行する通信モジュールである。近接無線通信デバイス１０４は、近接無線通信デバイス１０４から所定の距離内に存在する、近接無線通信機能を有する他のデバイス（外部デバイス）との無線接続を確立し、そしてファイルのようなデータの伝送を開始する。近接無線通信デバイス１０４と外部デバイスとの間の近接無線通信は、ピアツーピア形式で実行される。通信可能距離は例えば３ｃｍである。近接無線通信デバイス１０４と外部デバイスとの間の無線接続は、近接無線通信デバイス１０４と外部デバイスとが近接状態である場合、つまり近接無線通信デバイス１０４と外部デバイスとの間の距離が通信可能距離（例えば３ｃｍ）以内に接近した場合にのみ可能となる。近接無線通信デバイス１０４と外部デバイスとが通信可能距離以内に接近した時、近接無線通信デバイス１０４と外部デバイスとの間の無線接続が確立される。そして、例えば、ユーザによって明示的に指定されたデータファイル、又は予め決められた同期対象データファイル等のデータの伝送が近接無線通信デバイス１０４と外部デバイスとの間で実行される。
【００１７】
近接無線通信においては、誘導電界が用いられる。近接無線通信方式としては、例えばTransferJetを使用し得る。TransferJetは、UWBを利用した近接無線通信方式であり、高速データ転送を実現することができる。
【００１８】
近接無線通信デバイス１０４はアンテナ１０４ａに接続されている。アンテナ１０４ａはカプラと称される電極であり、誘導電界を用いた無線信号により、外部デバイスに対するデータの送受信を行う。外部デバイスがアンテナ１０４ａから通信可能距離（例えば３ｃｍ）以内の範囲内に接近した場合、近接無線通信デバイス１０４及び外部デバイスそれぞれのアンテナ（カプラ）間が誘導電界によって結合され、これによって近接無線通信デバイス１０４と外部デバイスとの間の無線通信が実行可能となる。なお、近接無線通信デバイス１０４及びアンテナ１０４ａは、一つのモジュールとして実現し得る。
【００１９】
電源制御部１０５は、ＡＣアダプタ１０６を介して外部から供給される電力、又はバッテリ１０７から供給される電力を用いて、電子機器１０内の各部に電力を供給する。換言すれば、電子機器１０は、ＡＣ商用電源のような外部電源、又はバッテリ１０７によって駆動される。ＡＣアダプタ１０６は電子機器１０内に設けることもできる。
【００２０】
次に、図２を参照して、近接無線通信デバイス１０４を用いて実行される近接無線通信を制御するためのソフトウェアアーキテクチャを説明する。
【００２１】
図２のソフトウェアアーキテクチャは近接無線通信を制御するためのプロトコルスタックの階層構造を示している。プロトコルスタックは、物理層（ＰＨＹ）２０、コネクション層（ＣＮＬ）３０、プロトコル変換層（ＰＣＬ）４０、アプリケーション層５０から構成されている。例えば、コネクション層（ＣＮＬ）３０、プロトコル変換層（ＰＣＬ）４０、アプリケーション層５０は通信制御プログラム１０３ａによって実現し得る。
【００２２】
物理層（ＰＨＹ）２０は物理的なデータ転送を制御する層であり、ＯＳＩ参照モデル内の物理層に対応する。物理層（ＰＨＹ）２０の一部の機能又は全ての機能は、近接無線通信デバイス１０４内のハードウェアを用いて実現することもできる。
【００２３】
物理層（ＰＨＹ）２０はコネクション層（ＣＮＬ）３０からのデータを無線信号に変換する。コネクション層（ＣＮＬ）３０はＯＳＩ参照モデル内のデータリンク層及びトランスポート層に対応しており、物理層（ＰＨＹ）２０を制御してデータ通信を実行する。コネクション層（ＣＮＬ）３０は、プロトコル変換層（ＰＣＬ）４０からの接続要求、又は外部デバイスからの接続要求に応じて、近接状態に設定されている近接無線通信デバイス１０４と外部デバイスとの間の接続（ＣＮＬ接続）を確立する処理を実行する。
【００２４】
プロトコル変換層（ＰＣＬ）４０は、ＯＳＩ参照モデル内のセッション層及びプレゼンテーション層に対応しており、アプリケーション層５０と、デバイスＡ，Ｂ間の接続の確立及び解除を制御するためのコネクション層（ＣＮＬ）３０との間に位置する。プロトコル変換層（ＰＣＬ）４０は、アプリケーション層５０内の各アプリケーション（通信プログラム）の制御とコネクション層（ＣＮＬ）３０の制御を行う。
【００２５】
より具体的には、プロトコル変換層（ＰＣＬ）４０は、アプリケーション層５０の各通信プログラムが扱うアプリケーションプロトコル（例えば、ＳＣＳＩ、ＯＢＥＸ、他の汎用プロトコル等）に対応したデータ（ユーザデータ）を特定の伝送用データ形式に変換するための変換処理を実行する。この変換処理により、いずれの通信プログラムによって送受信されるデータであっても、コネクション層（ＣＮＬ）３０が扱うことが可能なパケット（特定の伝送用データ形式のデータ）に変換することができる。このプロトコル変換層（ＰＣＬ）４０は、さまざまなアプリケーションプロトコルを近接無線通信で利用することを可能にする。
【００２６】
また、プロトコル変換層（ＰＣＬ）４０は、通信相手のデバイスとの間でサービス情報（各デバイスが提供可能なサービスを示す情報）及びセッション情報（確立／切断対象のセッションに関する情報）を交換する処理、さらに、アプリケーションの起動、コネクションの管理、及びセッションの管理等を行う。
【００２７】
アプリケーション層５０は、ＳＣＳＩ、ＯＢＥＸ、他の汎用プロトコル等の幾つかのアプリケーションプロトコルにそれぞれ対応した複数の通信プログラム（アプリケーション）を含んでいる。各アプリケーションは、プロトコル変換層（ＰＣＬ）４０に対してセッションの開始／終了を要求する処理、及びプロトコル変換層（ＰＣＬ）４０を介してデータを送受信する処理を実行する。
【００２８】
また、プロトコル変換層（ＰＣＬ）４０は、例えば、モード監視部４１、接続監視部４２、モード監視データベース４３、接続監視データベース４４を備える。
【００２９】
接続監視部４２は、近接状態に設定されている電子機器１０と外部デバイスとの間の接続（ＣＮＬ接続）を監視する。上述したように、ＣＮＬ３０では、ＰＣＬ４０からの接続要求、又は外部デバイスからの接続要求に応じて、近接状態に設定されている電子機器１０と外部デバイスとの間の接続を確立する処理が実行される。また、ユーザによる接続解除の要求や電子機器１０と外部デバイスとが離されることによる近接状態の解除に応じて、電子機器１０と外部デバイスとの間の接続が解除される。接続監視部４２は、これら接続の確立及び解除を監視し、電子機器１０と外部デバイスとの間で接続が確立されていること、又は接続が解除されていることを示す情報を接続監視データベース４４へ格納する。
【００３０】
モード監視部４１は、ＰＣＬ４０に設定されるモードを監視する。ＰＣＬ４０には、プロアクティブモード、リアクティブモード、及びフレキシブルモードのいずれかのモードが設定される。
【００３１】
プロアクティブモードは、電子機器１０から外部デバイスへサービスの開始要求を送信するモードである。プロアクティブモードに設定されたデバイスは、いわゆるマスタとして機能し、通信相手のデバイスを制御してデバイス間のデータ転送のようなサービスを実行することができる。リアクティブモードは、電子機器１０が、外部デバイスから送信されるサービスの開始要求を受信するモードである。リアクティブモードに設定されたデバイスは、いわゆるスレーブとして機能し、通信相手のデバイスの制御の下、デバイス間のデータ転送のようなサービスを実行することができる。
【００３２】
外部電源によって駆動できない携帯電話のようなポータブルデバイスのデフォルトのモードは、その電力消費を低減するために、リアクティブモードに設定される。ユーザがポータブルデバイス上のアプリケーションを操作した場合、そのポータブルデバイスは、リアクティブモードからプロアクティブモードへ自動的に遷移する。
【００３３】
プロアクティブモードに設定されたデバイスは、接続要求信号を送信する。一方、リアクティブモードのデバイスは接続要求信号を送信しないので、電力消費は比較的少ない。
【００３４】
フレキシブルモードは、近接状態に設定されている外部デバイスに設定されたモード（プロアクティブモード又はリアクティブモード）に応じて、プロアクティブモードとリアクティブモードのいずれかに遷移するモードである。フレキシブルモードに設定された電子機器１０は、近接状態に設定されている外部デバイスとのネゴシエーションにより、外部デバイスがプロアクティブモードの場合にはリアクティブモードへ遷移し、また、外部デバイスがリアクティブモードの場合にはプロアクティブモードへ遷移する。つまり、フレキシブルモードに設定された電子機器１０は、通信相手のデバイスに設定されたモードによって、マスタとして機能するか、スレーブとして機能するかを切り替える。プロアクティブモードまたはリアクティブモードへの遷移は、例えば、デバイス間の接続が確立された後に実行される。
【００３５】
ＡＣアダプタ電源のような外部電源によって駆動可能な、パーソナルコンピュータ等のデバイスに設定されるデフォルトのモードはフレキシブルモードである。フレキシブルモードに設定されたデバイスは、接続要求信号を送信する。これにより、ユーザが携帯電話のアプリケーションを何等操作せずにその携帯電話をパーソナルコンピュータ（フレキシブルモードのデバイス）に近接させた場合でも、それらデバイス間の接続を確立でき、パーソナルコンピュータの制御の下、データファイルの転送のようなサービスをユーザに提供することができる。
【００３６】
プロアクティブモードに設定されたデバイス（プロアクティブモードに遷移したデバイス）とリアクティブモードに設定されたデバイス（リアクティブモードに遷移したデバイス）との間でサービスが実行される場合、プロアクティブモードに設定されたデバイスによって指定されたサービスが、これら二つのデバイス間で実行される。なお、サービスの実行が完了した場合、リアクティブモードからプロアクティブモードへ遷移したデバイスはリアクティブモードに戻り、フレキシブルモードからプロアクティブモードへ遷移したデバイス、又はフレキシブルモードからリアクティブモードへ遷移したデバイスは、フレキシブルモードに戻る。
【００３７】
モード監視部４１は、ＰＣＬ４０の現在のモードを示す情報をモード監視データベース４３へ格納する。したがって、近接状態に設定されている外部デバイスとのネゴシエーションによって、電子機器１０のＰＣＬ４０がフレキシブルモードから、プロアクティブモード又はリアクティブモードへ遷移した場合には、遷移したいずれかのモードを示す情報によりモード監視データベース４３が書き換えられる。
【００３８】
ＰＣＬ４０では、電子機器１０と外部デバイスとの間の接続（ＣＮＬ接続）、及びＰＣＬ４０に設定されるモードが監視され、アプリケーション層５０内の各アプリケーション（通信プログラム）の制御とＣＮＬ３０の制御とが行われる。
【００３９】
図３は、上述のＰＣＬ４０の機能を実現する近接無線通信制御プログラム１０３ａの機能構成の例を示すブロック図である。
【００４０】
図３に示すように、近接無線通信制御プログラム１０３ａは、制御部４０１、ＣＮＬ接続監視部４０２、ネゴシエーション処理部４０３、モード制御部４０４、サービス処理部４０５、及び待機処理部４０６を備える。近接無線通信制御プログラム１０３ａは、データベース４１０に接続される。データベース４１０は、電子機器１０と外部デバイスとの間の接続状態を示す情報であるＣＮＬ接続状態４１０ａと、電子機器１０のＰＣＬ４０に設定される接続モード、及び外部デバイスのＰＣＬに設定される接続モードを示す情報である接続モード４１０ｂとを格納する記憶装置である。
【００４１】
制御部４０１は、電子機器１０と外部デバイスとの間の通信シーケンスを制御する。すなわち、制御部４０１は、アプリケーション層５０に対応するアプリケーション部５０１と、ＣＮＬ３０及び物理層（ＰＨＹ）２０に対応するデータ通信部２０１とによる要求や通知に応じて、近接無線通信制御プログラム１０３ａ内の各部を制御する。
【００４２】
ＣＮＬ接続監視部４０２は、ＣＮＬ３０による電子機器１０と外部デバイスとの間の接続（ＣＮＬ接続）を監視する。ＣＮＬ３０による近接無線通信デバイス１０４と外部デバイスとの間の接続が確立された場合、ＣＮＬ接続監視部４０２は、データベース４１０のＣＮＬ接続状態４１０ａに、ＣＮＬ接続が確立されていることを示す情報を格納する。また、ＣＮＬ３０による電子機器１０と外部デバイスとの間の接続が解除された場合、ＣＮＬ接続監視部４０２は、データベース４１０のＣＮＬ接続状態４１０ａに、ＣＮＬ接続が解除されていることを示す情報を格納する。
【００４３】
ＣＮＬ接続監視部４０２は、ＣＮＬ接続の確立又は解除を、近接無線通信制御プログラム１０３ａの各部へ通知する。ＣＮＬ接続が解除されたことが通知された場合、ネゴシエーション処理部４０３、モード制御部４０４、サービス処理部４０５、及び待機処理部４０６は、実行中の処理を中断する。換言すると、ネゴシエーション処理部４０３、モード制御部４０４、サービス処理部４０５、及び待機処理部４０６による処理は、ＣＮＬ接続が確立されている期間中に実行される。
【００４４】
ネゴシエーション処理部４０３は、ＣＮＬ接続監視部４０２からＣＮＬ接続が確立されたことを示す通知を受けた場合、ネゴシエーション処理を実行する。ネゴシエーション処理部４０３は、ネゴシエーション処理として、ＰＣＬ４０に設定されるモードの調停、デバイス間で実行されるサービスの決定、サービスの同期等を実行する。
【００４５】
ＰＣＬ４０に設定されるモードの調停では、ネゴシエーション処理部４０３は、通信相手のデバイスに設定されたモードに応じて、電子機器１０のＰＣＬ４０に設定されるモードを決定する。ＰＣＬ４０には、上述したように、プロアクティブモード、リアクティブモード、及びフレキシブルモードのいずれかのモードが設定される。また、二つのデバイス間でサービスを実行する場合には、一方のデバイスが通信相手のデバイスへサービス開始要求を送信するプロアクティブモードに設定され、他方のデバイスがサービス開始要求を受信して応答するリアクティブモードに設定される必要がある。
【００４６】
自身のＰＣＬ４０がプロアクティブモードに設定され、且つ通信相手のデバイスのＰＣＬ４０がリアクティブモードに設定されている場合、又は自身のＰＣＬ４０がリアクティブモードに設定され、且つ通信相手のデバイスのＰＣＬ４０がプロアクティブモードに設定されている場合、ネゴシエーション処理部４０３は、ＰＣＬ４０に設定されるモードを変更する処理を行わない。
【００４７】
自身のＰＣＬ４０がフレキシブルモードに設定されている場合、ネゴシエーション処理部４０３は、通信相手のデバイスのＰＣＬ４０に設定されたモードに応じて、プロアクティブモードとリアクティブモードのいずれかのモードを選択する。つまり、ネゴシエーション処理部４０３は、通信相手のデバイスのＰＣＬ４０がプロアクティブモードに設定されている場合、自身のＰＣＬ４０に設定するモードとしてリアクティブモードを選択する。また、ネゴシエーション処理部４０３は、通信相手のデバイスのＰＣＬ４０がリアクティブモードに設定されている場合、自身のＰＣＬ４０に設定するモードとしてプロアクティブモードを選択する。そして、ネゴシエーション処理部４０３は、選択されたモードをモード制御部４０４へ通知する。
【００４８】
モード制御部４０４は、ネゴシエーション処理部４０３と協働して、ＰＣＬ４０に設定するモードを制御する。モード制御部４０４は、ネゴシエーション処理部４０３で決定されたモードをＰＣＬ４０に設定する。
【００４９】
自身のＰＣＬ４０に設定されたモード、及び通信相手のデバイスのＰＣＬ４０に設定されたモードを示す情報は、データベース４１０の接続モード４１０ｂへ格納される。
【００５０】
デバイス間で実行されるサービスの決定では、ネゴシエーション処理部４０３は、ＰＣＬ４０がプロアクティブモードに設定された側のデバイスで指定されたサービスを、デバイス間で実行されるサービスとして決定する。したがって、通信相手のデバイスがプロアクティブモードに設定されている場合、ネゴシエーション処理部４０３は、通信相手のデバイスで指定されたサービスをデバイス間で実行されるサービスとして決定する。また、自身のＰＣＬ４０がプロアクティブモードに設定されている場合、ネゴシエーション処理部４０３は、ユーザにより指定されたアプリケーションに応じたサービスや予め決められたサービスを、デバイス間で実行されるサービスとして決定する。
【００５１】
サービスの同期では、ネゴシエーション処理部４０３は、デバイス間でサービスの実行を開始するための同期処理を実行する。
【００５２】
サービス処理部４０５は、ネゴシエーション処理部４０３によるサービスの同期（開始）が実行された後、ネゴシエーション処理部４０３で決定されたサービスに応じた処理を実行する。サービス処理部４０５は、データ通信部２０１とアプリケーション部５０１とを適宜制御して、処理を実行する。
【００５３】
待機処理部４０６は、サービス処理部４０５による処理が完了してから新たなサービスの開始要求を受信するまでの期間、待機処理を実行する。待機処理部４０６は、通信相手のデバイスからサービスの開始要求を受信した場合、又はユーザによりサービスの開始要求が入力された場合等に待機処理を終了する。待機処理部４０６による待機処理が終了したことに応答して、ネゴシエーション処理部４０３によるネゴシエーション処理が再度、開始される。つまり、待機処理部４０６は、サービス処理部４０５による処理が完了してから通信相手のデバイスからサービスの開始要求を受信するまでの期間、又はサービス処理部４０５による処理が完了してからユーザによってサービスの開始要求が入力されるまでの期間に、ネゴシエーション処理部４０３へネゴシエーション処理の開始を要求しない。
【００５４】
アプリケーション部５０１は、近接無線通信を用いてデータ送受信を実行する複数のアプリケーション（通信プログラム）を管理する。アプリケーション部５０１は、アプリケーションからのセッションの開始／終了の要求を近接無線通信制御プログラム１０３ａへ通知する処理、及び近接無線通信制御プログラム１０３ａを制御する処理を実行する。アプリケーションは、例えば、ＳＣＳＩ、ＯＢＥＸ、他の汎用プロトコル等の幾つかのアプリケーションプロトコルにそれぞれ対応した通信プログラムである。
【００５５】
次に、図４を参照して、電子機器１０がポータブルパーソナルコンピュータとして実現されている場合を想定して、電子機器１０の外観の例を説明する。
【００５６】
図４は、電子機器１０の外観を示す斜視図である。
【００５７】
電子機器１０は、本体１１と、ディスプレイユニット１２とを備えている。ディスプレイユニット１２は、本体１１に対し、本体１１の上面が露出される開放位置と本体１１の上面がディスプレイユニット１２によって覆われる閉塞位置との間を回動自在に取り付けられている。ディスプレイユニット１２内には、上述のＬＣＤ１５が設けられている。
【００５８】
本体１１は薄い箱状の筐体を有している。本体１１の筐体の上面には、キーボード、タッチパッド、スピーカ、電源スイッチ等が配置されている。
【００５９】
本体１１の上面、具体的には、本体１１の上面上のパームレスト領域の一部は、通信面として機能する。すなわち、近接無線通信デバイス１０４及びアンテナ（カプラ）１０４ａは、本体１１の上面に対向して本体１１内に設けられている。アンテナ（カプラ）１０４ａは、本体１１の上面（具体的には、本体１１の上面上のパームレスト領域の一部）を介して、無線信号（誘導電界）を外部に出力するように配置されている。アンテナ（カプラ）１０４ａに対向する本体１１の上面上の小領域、つまり本体１１の上面上においてアンテナ（カプラ）１０４ａの上方に位置する小領域は、通信位置として使用される。近接無線通信デバイス１０４は、本体１１の上面上の通信位置から所定の無線通信可能距離（例えば３ｃｍ）内に存在する外部デバイスとの近接無線通信を本体１１の上面を介して実行する。
【００６０】
ユーザは、例えば、近接無線通信機能を有する外部デバイスを本体１１の上面上の通信位置上にかざすという操作（タッチ操作とも云う）を行うことにより、外部デバイスと電子機器１０との間のデータ転送を開始させることができる。
【００６１】
図５は、携帯電話７０と電子機器１０との間で実行される近接無線通信の様子が示されている。携帯電話７０の筐体内には、その筐体の背面に対向して近接無線通信用のアンテナ（カプラ）７０ａが設けられている。この場合、携帯電話７０の筐体の背面を電子機器１０の本体１１の上面上の通信位置上にかざすこと、すなわち、携帯電話７０を電子機器１０に近接させるという操作（タッチ操作とも云う）を行うことにより、携帯電話７０と電子機器１０との間の接続を開始させることができる。携帯電話７０と電子機器１０との間の接続は、携帯電話７０と電子機器１０とが互いに近接したことをトリガとして実行される。
【００６２】
図６は、デバイス間の近接無線通信の例を示すシーケンス図である。ここでは、プロアクティブモードに設定されたデバイスＡからフレキシブルモードに設定されたデバイスＢへ、サービスの開始要求が送信されることを想定する。なお、初期状態では、デバイスＡはリアクティブモードに設定され、デバイスＢはフレキシブルモードに設定されている。
【００６３】
まず、ユーザは、近接無線通信を行うアプリケーションプログラムをデバイスＡ上で選択し、デバイスＡとデバイスＢとを近づけて（タッチ操作）、近接状態に設定する（Ｓ１０１）。アプリケーションプログラムが選択されたデバイスＡは、外部デバイスからサービスの開始要求を受信するリアクティブモードから、外部デバイスへサービスの開始要求を送信するプロアクティブモードへ遷移する。
【００６４】
次に、デバイスＡ及びデバイスＢは、デバイスＡとデバイスＢとの間の接続（ＣＮＬ接続）を確立するための処理（認証処理）を実行する（Ｓ１０２）。例えば、デバイスＡは、接続要求を送信する。この接続要求を受信したデバイスＢは、接続要求に対する応答をデバイスＡへ送信する。以上の処理により、デバイスＡとデバイスＢとの間で接続が確立される。
【００６５】
接続を確立したデバイスＡとデバイスＢとは、ネゴシエーション処理を実行する（Ｓ１０３）。ネゴシエーション処理として、デバイスＡ及びデバイスＢは、モード調停（Ｓ１０３ａ）、サービスネゴシエーション（Ｓ１０３ｂ）、及びサービス同期（Ｓ１０３ｃ）を実行する。
【００６６】
具体的には、フレキシブルモードに設定されたデバイスＢは、通信相手のデバイスであるデバイスＡに設定されたモードに応じて、自身のモードを遷移させるモード調停を実行する（Ｓ１０３ａ）。ここでは、デバイスＡがプロアクティブモードに設定されているため、デバイスＢは、自身のモードをフレキシブルモードからリアクティブモードへ遷移させる。そして、デバイスＡ及びデバイスＢは、デバイスＡとデバイスＢとの間で実行するサービスを決定するサービスネゴシエーションを実行する（Ｓ１０３ｂ）。ここでは、プロアクティブモードに設定されたデバイスＡで指定されたサービス、すなわち、ユーザにより選択されたアプリケーションプログラムに対応するサービスが、デバイスＡとデバイスＢとの間で実行されるサービスとして決定される。また、デバイスＡ及びデバイスＢは、決定されたサービスを実行するためのサービス同期を実行する（Ｓ１０３ｃ）。これにより、デバイスＡとデバイスＢとの間でサービスの実行が開始される。
【００６７】
上述のネゴシエーション処理が完了すると、デバイスＡとデバイスＢとの間でサービスが実行され、データの送受信等の通信が行われる（Ｓ１０４）。そして、サービスの実行が完了すると、デバイスＡはプロアクティブモードからリアクティブモードへ遷移し、デバイスＢは、リアクティブモードからフレキシブルモードへ遷移する。また、デバイスＡとデバイスＢとの間の接続は解除される。
【００６８】
デバイスＡとデバイスＢとの間の接続が解除された後、デバイスＡとデバイスＢとが近接状態に維持されている場合、デバイスＡ及びデバイスＢは、再度、認証処理を実行する（Ｓ１０５）。認証処理により、デバイスＡとデバイスＢとの間の接続が確立されると、デバイスＡ及びデバイスＢは、ネゴシエーション処理を実行する（Ｓ１０６）。このネゴシエーション処理では、Ｓ１０３ａからＳ１０３ｃまでの処理と同様の処理が実行される。
【００６９】
まず、フレキシブルモードに設定されているデバイスＢは、デバイスＡがリアクティブモードに設定されているため、自身のモードをフレキシブルモードからプロアクティブモードへ遷移させる。次に、デバイスＡ及びデバイスＢは、デバイスＡとデバイスＢとの間で実行するサービスを決定するサービスネゴシエーションを実行する。具体的には、デバイスＢは、デバイスＡが提供し得るサービス群を示す情報を、デバイスＡから受信し、受信したサービス群に含まれる各サービスを列挙したリストをユーザへ提示する。ユーザは、デバイスＢ上で提示されたサービスのリストから利用するサービスを選択する。そして、デバイスＢは、選択されたサービスを示す情報をデバイスＡへ通知する。これにより、ユーザにより選択されたサービスが、デバイスＡとデバイスＢとの間で実行するサービスとして決定される。なお、デバイスＡとデバイスＢとの間で実行するサービスは、予め決定されたサービスであってもよい。デバイスＡ及びデバイスＢは、サービス同期を実行し、決定されたサービスの実行を開始する。そして、デバイスＡ及びデバイスＢは、決定されたサービスに応じた処理を実行する（Ｓ１０７）。
【００７０】
上述のように、接続されるデバイスの一方がフレキシブルモードに設定されている場合、ネゴシエーションにより決定されたサービスが実行され、サービスの実行が完了してデバイス間の接続が解除された場合、例えば所定の期間が経過した後、再度、デバイス間の接続が確立される。また、ネゴシエーション処理も再度実行され、ユーザが新たなサービスの開始を指示することなく、新たなサービスの提供が開始される。
【００７１】
図７は、デバイス間の近接無線通信の別の例を示すシーケンス図である。ここでは、フレキシブルモードに設定されたデバイスＢからリアクティブモードに設定されたデバイスＡへ、サービスの開始要求が送信されることを想定する。なお、初期状態では、デバイスＡはリアクティブモードに設定され、デバイスＢはフレキシブルモードに設定されている。
【００７２】
まず、ユーザは、デバイスＡとデバイスＢとを近づけて（タッチ操作）、近接状態に設定する（Ｓ２０１）。次に、デバイスＡ及びデバイスＢは、デバイスＡとデバイスＢとの間の接続（ＣＮＬ接続）を確立するための処理（認証処理）を実行する（Ｓ２０２）。例えば、デバイスＢは、接続要求を送信する。この接続要求を受信したデバイスＡは、接続要求に対する応答をデバイスＢへ送信する。以上の処理により、デバイスＡとデバイスＢとの間で接続が確立される。
【００７３】
接続を確立したデバイスＡとデバイスＢとは、ネゴシエーション処理を実行する（Ｓ２０３）。ネゴシエーション処理として、デバイスＡ及びデバイスＢは、モード調停（Ｓ２０３ａ）、サービスネゴシエーション（Ｓ２０３ｂ）、及びサービス同期（Ｓ２０３ｃ）を実行する。
【００７４】
具体的には、フレキシブルモードに設定されたデバイスＢは、通信相手のデバイスであるデバイスＡに設定されたモードに応じて、自身のモードを遷移させるモード調停を実行する（Ｓ２０３ａ）。ここでは、デバイスＡがリアクティブモードに設定されているため、デバイスＢは、自身のモードをフレキシブルモードからプロアクティブモードへ遷移させる。そして、デバイスＡ及びデバイスＢは、デバイスＡとデバイスＢとの間で実行するサービスを決定するサービスネゴシエーションを実行する（Ｓ２０３ｂ）。具体的には、デバイスＢは、デバイスＡに対して、デバイスＡが提供し得るサービス群を示す情報を要求する。デバイスＢは、デバイスＡが提供し得るサービス群の情報をデバイスＡから受信すると、このサービス群に含まれる各サービスを列挙したリストをユーザへ提示する。そして、ユーザは提示されたサービスのリストから利用したいサービスを選択する。これにより、ユーザにより選択されたサービスが、デバイスＡとデバイスＢとの間で実行されるサービスとして決定される。なお、デバイスＡとデバイスＢとの間で実行するサービスは、予め決められたサービスであってもよい。次いで、デバイスＡ及びデバイスＢは、決定されたサービスを実行するためのサービス同期を実行する（Ｓ２０３ｃ）。これにより、デバイスＡとデバイスＢとの間でサービスの実行が開始される。
【００７５】
上述のネゴシエーション処理が完了すると、デバイスＡとデバイスＢとの間でサービスが実行され、データの送受信等の通信が行われる（Ｓ２０４）。そして、サービスの実行が完了すると、デバイスＢは、プロアクティブモードからフレキシブルモードへ遷移する。また、デバイスＡとデバイスＢとの間の接続は解除される。
【００７６】
デバイスＡとデバイスＢとの間の接続が解除された後、デバイスＡとデバイスＢとが近接状態に維持されている場合、デバイスＡ及びデバイスＢは、再度、認証処理を実行する（Ｓ２０５）。認証処理により、デバイスＡとデバイスＢとの間の接続が確立されると、デバイスＡ及びデバイスＢは、ネゴシエーション処理を実行する（Ｓ２０６）。このネゴシエーション処理では、Ｓ２０３ａからＳ２０３ｃまでの処理と同様の処理が実行される。そして、デバイスＡとデバイスＢとの間で、ネゴシエーション処理により決定されたサービスが実行される（Ｓ２０７）。
【００７７】
図６に示したシーケンス図と同様に、接続されるデバイスの一方がフレキシブルモードに設定されている場合、ネゴシエーションにより決定されたサービスが実行され、サービスの実行が完了してデバイス間の接続が解除された場合、例えば所定の期間が経過した後、再度、デバイス間の接続が確立される。また、ネゴシエーション処理も再度実行され、ユーザが新たなサービスの開始を指示することなく、新たなサービスの提供が開始される。
【００７８】
図６及び図７に示すシーケンス図では、接続されるデバイスの一方がフレキシブルモードに設定されている場合、ユーザは、デバイスＡとデバイスＢとを近づけるだけで、デバイス間のサービスの提供を開始させることができる。すなわち、デバイスＡとデバイスＢとが近接状態に設定されることにより、自動的にデバイス間の認証処理及びネゴシエーション処理が実行され、デバイス間でサービスの提供を開始することができる。
【００７９】
しかし、上述のように自動的にサービスの提供が開始される場合、ユーザによる操作の手間を省くことができる一方で、単に近接状態で放置されているデバイス間でもサービスの提供が開始されてしまい、ユーザが望まないサービスが実行されてしまう可能性がある。例えば、ユーザにより指定されたアプリケーションに応じたサービスが、近接状態に設定されたデバイス間で実行された後、近接状態のまま放置されたデバイス間で、新たなサービスの提供が開始されたり、新たなサービスの開始を促すサービスのリストがユーザへ提示されたりする可能性がある。この場合ユーザは、開始された新たなサービスの提供を停止させる操作等を行う必要があり、これはユーザにとって煩雑な作業であるといえる。このため、ユーザによるサービスの開始要求があった場合にのみ、サービスの提供を開始するようにデバイスを制御する必要がある。
【００８０】
図８乃至図１１は、電子機器１０と外部デバイスとの間で実行される近接無線通信の例を示すシーケンス図である。本実施形態の電子機器１０は、ユーザによるサービスの開始要求があった場合にサービスの提供を開始するように、近接無線通信デバイス１０４を制御する。
【００８１】
図８は、デバイス間で一つのサービスの提供が完了した後、通信が切断される場合のシーケンス図を示す。ここでは、プロアクティブモードに設定されたデバイスＡからフレキシブルモードに設定されたデバイスＢへ、サービスの開始要求が送信されることを想定する。なお、初期状態では、デバイスＡはリアクティブモードに設定され、デバイスＢはフレキシブルモードに設定されている。また、デバイスＢでは、デバイス間のサービスの提供が完了したことを示す通信完了フラグが落とされた状態（リセット状態）に設定されている。
【００８２】
まず、ユーザは、近接無線通信を行うアプリケーションプログラムをデバイスＡ上で選択し、デバイスＡとデバイスＢとを近づけて（タッチ操作）、近接状態に設定する（Ｓ３０１）。アプリケーションプログラムが選択されたデバイスＡは、外部デバイスからサービスの開始要求を受信するリアクティブモードから、外部デバイスへサービスの開始要求を送信するプロアクティブモードへ遷移する。
【００８３】
次に、デバイスＡ及びデバイスＢは、デバイスＡとデバイスＢとの間の接続（ＣＮＬ接続）を確立するための処理（認証処理）を実行する（Ｓ３０２）。例えば、デバイスＡは、接続要求を送信する。この接続要求を受信したデバイスＢは、接続要求に対する応答をデバイスＡへ送信する。以上の処理により、デバイスＡとデバイスＢとの間で接続が確立される。
【００８４】
接続を確立したデバイスＡとデバイスＢとは、ネゴシエーション処理を実行する（Ｓ３０３）。ネゴシエーション処理では、図６のＳ１０３ａからＳ１０３ｃまでの処理と同様に、デバイスＡ及びデバイスＢは、モード調停、サービスネゴシエーション、及びサービス同期を実行する。
【００８５】
具体的には、フレキシブルモードに設定されたデバイスＢは、通信相手のデバイスであるデバイスＡに設定されたモードに応じて、自身のモードを遷移させるモード調停を実行する。ここでは、デバイスＡがプロアクティブモードに設定されているため、デバイスＢは、自身のモードをフレキシブルモードからリアクティブモードへ遷移させる。そして、デバイスＡ及びデバイスＢは、デバイスＡとデバイスＢとの間で実行するサービスを決定するサービスネゴシエーションを実行する。ここでは、プロアクティブモードに設定されたデバイスＡで指定されたサービス、すなわち、ユーザにより選択されたアプリケーションプログラムに対応するサービスが、デバイスＡとデバイスＢとの間で実行されるサービスとして決定される。また、デバイスＡ及びデバイスＢは、決定されたサービスを実行するためのサービス同期を実行する。これにより、デバイスＡとデバイスＢとの間でサービスの実行が開始される。
【００８６】
上述のネゴシエーション処理が完了すると、デバイスＡとデバイスＢとの間でサービスが実行され、データの送受信等の通信が行われる（Ｓ３０４）。そして、サービスの実行が完了すると、デバイスＡはプロアクティブモードからリアクティブモードへ遷移し、デバイスＢは、リアクティブモードからフレキシブルモードへ遷移する。また、デバイスＢは、サービスの実行が完了したことを示す通信完了フラグを立てる（フラグセット）。なお、デバイスＡとデバイスＢとの間の接続（ＣＮＬ接続）は維持されている。
【００８７】
デバイスＢは、通信完了フラグが立っている期間中、新たなサービスの提供を開始するための処理を待つ待機処理を実行する。換言すると、デバイスＢは、通信完了フラグが立っている期間中、新たなサービスの提供の開始を待つウェイト状態に設定される。
【００８８】
そして、デバイスＡとデバイスＢとが離され、近接状態が解除された場合、デバイスＡとデバイスＢとの間の接続が切断される。デバイスＡとデバイスＢとの間の接続が切断されたことに応答して、デバイスＢは通信完了フラグを落とす。
【００８９】
以上の処理により、デバイス間でのサービスの実行が完了してから、デバイス同士が離される（デバイス間の近接状態が解除される）までの間に、不要なサービスの提供が開始されることを抑制できる。
【００９０】
図９は、デバイス間で一つのサービスの提供が完了した後、通信が切断される場合の別のシーケンス図を示す。ここでは、フレキシブルモードに設定されたデバイスＢからリアクティブモードに設定されたデバイスＡへ、サービスの開始要求が送信されることを想定する。なお、初期状態では、デバイスＡはリアクティブモードに設定され、デバイスＢはフレキシブルモードに設定されている。また、デバイスＢでは、デバイス間のサービスの提供が完了したことを示す通信完了フラグが落とされた状態に設定されている。
【００９１】
まず、ユーザは、デバイスＡとデバイスＢとを近づけて（タッチ操作）、近接状態に設定する（Ｓ４０１）。次に、デバイスＡ及びデバイスＢは、デバイスＡとデバイスＢとの間の接続（ＣＮＬ接続）を確立するための処理（認証処理）を実行する（Ｓ４０２）。具体的には、デバイスＢは、接続要求を送信する。この接続要求を受信したデバイスＡは、接続要求に対する応答をデバイスＢへ送信する。以上の処理により、デバイスＡとデバイスＢとの間で接続が確立される。
【００９２】
接続を確立したデバイスＡとデバイスＢとは、ネゴシエーション処理を実行する（Ｓ４０３）。ネゴシエーション処理では、図７のＳ２０３ａからＳ２０３ｃまでの処理と同様に、デバイスＡ及びデバイスＢは、モード調停、サービスネゴシエーション、及びサービス同期を実行する。
【００９３】
具体的には、フレキシブルモードに設定されたデバイスＢは、通信相手のデバイスであるデバイスＡに設定されたモードに応じて、自身のモードを遷移させるモード調停を実行する。ここでは、デバイスＡがリアクティブモードに設定されているため、デバイスＢは、自身のモードをフレキシブルモードからプロアクティブモードへ遷移させる。そして、デバイスＡ及びデバイスＢは、デバイスＡとデバイスＢとの間で実行するサービスを決定するサービスネゴシエーションを実行する。具体的には、デバイスＢは、デバイスＡに対して、デバイスＡが提供し得るサービス群を示す情報を要求する。デバイスＢは、デバイスＡが提供し得るサービス群の情報をデバイスＡから受信すると、このサービス群に含まれる各サービスを列挙したリストをユーザへ提示する。そして、ユーザは提示されたサービスのリストから利用したいサービスを選択する。これにより、デバイスＡとデバイスＢとの間で実行するサービスが決定される。なお、デバイスＡとデバイスＢとの間で実行するサービスは、予め決められたサービスであってもよい。次いで、デバイスＡ及びデバイスＢは、決定されたサービスを実行するためのサービス同期を実行する。これにより、デバイスＡとデバイスＢとの間でサービスの実行が開始される。
【００９４】
上述のネゴシエーション処理が完了すると、デバイスＡとデバイスＢとの間でサービスが実行され、データの送受信等の通信が行われる（Ｓ４０４）。そして、サービスの実行が完了すると、デバイスＢは、プロアクティブモードからフレキシブルモードへ遷移する。また、デバイスＢは、サービスの実行が完了したことを示す通信完了フラグを立てる。なお、デバイスＡとデバイスＢとの間の接続（ＣＮＬ接続）は維持されている。
【００９５】
デバイスＢは、通信完了フラグが立っている期間中、新たなサービスの提供を開始するための処理を待つ待機処理を実行する。換言すると、デバイスＢは、通信完了フラグが立っている期間中、新たなサービスの提供の開始を待つウェイト状態に設定される。
【００９６】
そして、デバイスＡとデバイスＢとが離され、近接状態が解除された場合、デバイスＡとデバイスＢとの間の接続が切断される。デバイスＡとデバイスＢとの間の接続が切断されたことに応答して、デバイスＢは、通信完了フラグを落とす。
【００９７】
以上の処理により、デバイス間でのサービスの実行が完了してから、デバイス同士が離される（デバイス間の近接状態が解除される）までの間に、不要なサービスの提供が開始されることを抑制できる。
【００９８】
また、図１０は、デバイス間で一つのサービスの提供が完了した後、ユーザによる要求に応じて、新たなサービスが提供される場合のシーケンス図を示す。ここでは、フレキシブルモードに設定されたデバイスＢからリアクティブモードに設定されたデバイスＡへ、サービスの開始要求が送信されることを想定する。なお、初期状態では、デバイスＡはリアクティブモードに設定され、デバイスＢはフレキシブルモードに設定されている。また、デバイスＢでは、デバイス間のサービスの提供が完了したことを示す通信完了フラグが落とされた状態に設定されている。
【００９９】
まず、ユーザは、デバイスＡとデバイスＢとを近づけて（タッチ操作）、近接状態に設定する（Ｓ５０１）。次に、デバイスＡ及びデバイスＢは、デバイスＡとデバイスＢとの間の接続（ＣＮＬ接続）を確立するための認証処理を実行する（Ｓ５０２）。例えば、デバイスＢは、接続要求を送信する。この接続要求を受信したデバイスＡは、接続要求に対する応答をデバイスＢへ送信する。以上の処理により、デバイスＡとデバイスＢとの間で接続が確立される。
【０１００】
接続を確立したデバイスＡとデバイスＢとは、ネゴシエーション処理を実行する（Ｓ５０３）。ネゴシエーション処理では、図７のＳ２０３ａからＳ２０３ｃまでの処理と同様に、デバイスＡ及びデバイスＢは、モード調停、サービスネゴシエーション、及びサービス同期を実行する。
【０１０１】
具体的には、フレキシブルモードに設定されたデバイスＢは、通信相手のデバイスであるデバイスＡに設定されたモードに応じて、自身のモードを遷移させるモード調停を実行する。ここでは、デバイスＡがリアクティブモードに設定されているため、デバイスＢは、自身のモードをフレキシブルモードからプロアクティブモードへ遷移させる。そして、デバイスＡ及びデバイスＢは、デバイスＡとデバイスＢとの間で実行するサービスを決定するサービスネゴシエーションを実行する。具体的には、デバイスＢは、デバイスＡに対して、デバイスＡが提供し得るサービス群を示す情報を要求する。デバイスＢは、デバイスＡが提供し得るサービス群の情報をデバイスＡから受信すると、このサービス群に含まれる各サービスを列挙したリストをユーザへ提示する。そして、ユーザは提示されたサービスのリストから利用したいサービスを選択する。これにより、デバイスＡとデバイスＢとの間で実行するサービスが決定される。なお、デバイスＡとデバイスＢとの間で実行するサービスは、予め決められた所定のサービスであってもよい。次いで、デバイスＡ及びデバイスＢは、決定されたサービスを実行するためのサービス同期を実行する。これにより、デバイスＡとデバイスＢとの間でサービスの実行が開始される。
【０１０２】
上述のネゴシエーション処理が完了すると、デバイスＡとデバイスＢとの間でサービスが実行され、データの送受信等の通信が行われる（Ｓ５０４）。そして、サービスの実行が完了すると、デバイスＢは、プロアクティブモードからフレキシブルモードへ遷移する。また、デバイスＢは、サービスの実行が完了したことを示す通信完了フラグを立てる。なお、デバイスＡとデバイスＢとの間の接続（ＣＮＬ接続）は維持されている。
【０１０３】
デバイスＢは、通信完了フラグが立っている期間中、新たなサービスの提供を開始するための処理を待つ待機処理を実行する。換言すると、デバイスＢは、通信完了フラグが立っている期間中、新たなサービスの提供の開始を待つウェイト状態に設定される。
【０１０４】
通信完了フラグが立っている期間中に、ユーザによるウェイト解除要求が入力された場合、デバイスＢは、このウェイト解除要求に応答してデバイスＢのウェイト状態を解除する（Ｓ５０５）。また、デバイスＢは、通信完了フラグを落とす。ウェイト解除要求は、例えば、ユーザがアプリケーションを選択することによって入力される。
【０１０５】
そして、デバイスＡ及びデバイスＢは、再度、ネゴシエーション処理を実行する（Ｓ５０６）。このネゴシエーション処理では、Ｓ５０３のネゴシエーション処理と同様の処理が実行される。したがって、デバイスＡ及びデバイスＢは、モード調停、サービスネゴシエーション、及びサービス同期の処理を実行する。
【０１０６】
ネゴシエーション処理が完了すると、デバイスＡとデバイスＢとの間でサービスが実行され、データの送受信等の通信が行われる（Ｓ５０７）。そして、サービスの実行が完了すると、デバイスＢは、プロアクティブモードからフレキシブルモードへ遷移する。また、デバイスＢは、サービスの実行が完了したことを示す通信完了フラグを立てる。なお、デバイスＡとデバイスＢとの間の接続（ＣＮＬ接続）は維持される。
【０１０７】
以上の処理により、デバイス間でのサービスの実行が完了してから、ユーザがデバイスＢ上でウェイト解除要求を入力するまでの間に、不要なサービスの提供が開始されることを抑制することができる。換言すると、デバイス間でのサービスの実行が完了した後、ユーザがサービス開始要求を入力したことに応答して、サービスの提供を開始させることができる。
【０１０８】
図１１は、デバイス間で一つのサービスの提供が完了した後、ユーザによる要求に応じて、新たなサービスが提供される場合の別のシーケンス図を示す。ここでは、プロアクティブモードに設定されたデバイスＡからフレキシブルモードに設定されたデバイスＢへ、サービスの開始要求が送信されることを想定する。なお、初期状態では、デバイスＡはリアクティブモードに設定され、デバイスＢはフレキシブルモードに設定されている。また、デバイスＢでは、デバイス間のサービスの提供が完了したことを示す通信完了フラグが落とされた状態に設定されている。
【０１０９】
まず、ユーザは、近接無線通信を行うアプリケーションプログラムをデバイスＡ上で選択し、デバイスＡとデバイスＢとを近づけて（タッチ操作）、近接状態に設定する（Ｓ６０１）。アプリケーションプログラムが選択されたデバイスＡは、外部デバイスからサービスの開始要求を受信するリアクティブモードから、外部デバイスへサービスの開始要求を送信するプロアクティブモードへ遷移する。
【０１１０】
次に、デバイスＡ及びデバイスＢは、デバイスＡとデバイスＢとの間の接続（ＣＮＬ接続）を確立するための処理（認証処理）を実行する（Ｓ６０２）。例えば、デバイスＡは、接続要求を送信する。この接続要求を受信したデバイスＢは、接続要求に対する応答をデバイスＡへ送信する。以上の処理により、デバイスＡとデバイスＢとの間で接続が確立される。
【０１１１】
接続を確立したデバイスＡとデバイスＢとは、ネゴシエーション処理を実行する（Ｓ６０３）。ネゴシエーション処理では、図６のＳ１０３ａからＳ１０３ｃまでの処理と同様に、デバイスＡ及びデバイスＢは、モード調停、サービスネゴシエーション、及びサービス同期を実行する。
【０１１２】
具体的には、フレキシブルモードに設定されたデバイスＢは、通信相手のデバイスであるデバイスＡに設定されたモードに応じて、自身のモードを遷移させるモード調停を実行する。ここでは、デバイスＡがプロアクティブモードに設定されているため、デバイスＢは、自身のモードをフレキシブルモードからリアクティブモードへ遷移させる。そして、デバイスＡ及びデバイスＢは、デバイスＡとデバイスＢとの間で実行するサービスを決定するサービスネゴシエーションを実行する。ここでは、プロアクティブモードに設定されたデバイスＡで指定されたサービス、すなわち、ユーザにより選択されたアプリケーションプログラムに対応するサービスが、デバイスＡとデバイスＢとの間で実行されるサービスとして決定される。また、デバイスＡ及びデバイスＢは、決定されたサービスを実行するためのサービス同期を実行する。これにより、デバイスＡとデバイスＢとの間でサービスの実行が開始される。
【０１１３】
上述のネゴシエーション処理が完了すると、デバイスＡとデバイスＢとの間でサービスが実行され、データの送受信等の通信が行われる（Ｓ６０４）。そして、サービスの実行が完了すると、デバイスＡはプロアクティブモードからリアクティブモードへ遷移し、デバイスＢは、リアクティブモードからフレキシブルモードへ遷移する。また、デバイスＢは、サービスの実行が完了したことを示す通信完了フラグを立てる。なお、デバイスＡとデバイスＢとの間の接続（ＣＮＬ接続）は維持されている。
【０１１４】
デバイスＢは、通信完了フラグが立っている期間中、新たなサービスの提供を開始するための処理を待つ待機処理を実行する。換言すると、デバイスＢは、通信完了フラグが立っている期間中、新たなサービスの提供の開始を待つウェイト状態に設定される。
【０１１５】
通信完了フラグが立っている期間中に、ユーザがデバイスＡ上で近接無線通信を行うアプリケーションプログラムを選択すると、デバイスＡは、デバイスＢへサービス開始要求を送信する（Ｓ６０５）。デバイスＢは、デバイスＡから受信したサービス開始要求に応答してデバイスＢのウェイト状態を解除する。また、デバイスＢは、通信完了フラグを落とす。そして、デバイスＡ及びデバイスＢは、再度、ネゴシエーション処理を実行する（Ｓ６０６）。このネゴシエーション処理では、Ｓ６０３のネゴシエーション処理と同様の処理が実行される。したがって、デバイスＡ及びデバイスＢは、モード調停、サービスネゴシエーション、及びサービス同期の処理を実行する。
【０１１６】
ネゴシエーション処理が完了すると、デバイスＡとデバイスＢとの間でサービスが実行され、データの送受信等の通信が行われる（Ｓ６０７）。デバイスＡはプロアクティブモードからリアクティブモードへ遷移し、デバイスＢは、リアクティブモードからフレキシブルモードへ遷移する。また、デバイスＢは、サービスの実行が完了したことを示す通信完了フラグを立てる。なお、デバイスＡとデバイスＢとの間の接続（ＣＮＬ接続）は維持されている。
【０１１７】
以上の処理により、デバイス間でのサービスの実行が完了してから、デバイスＢがデバイスＡからのサービス開始要求を受信するまでの間に、不要なサービスの提供が開始されることを抑制することができる。換言すると、デバイス間でのサービスの実行が完了した後、ユーザがサービス開始要求を入力したことに応答して、サービスの提供を開始させることができる。
【０１１８】
図１２は、電子機器１０による近接無線通信の状態遷移の例を示す状態遷移図である。
【０１１９】
電子機器１０は、外部デバイスと近接状態に設定された場合、ＣＮＬ接続が切断された状態である切断状態６０からＣＮＬ接続が確立された状態であるＣＮＬ接続確立状態６１へ遷移する。ＣＮＬ接続確立状態６１は、その中でさらに、ネゴシエーション状態６１１、サービス実行状態６１２、及びウェイト状態６１３のいずれかの状態として定義される。すなわち、ＣＮＬ接続確立状態６１である間、電子機器１０は、ネゴシエーション状態６１１、サービス実行状態６１２、及びウェイト状態６１３を遷移する。
【０１２０】
切断状態６０からＣＮＬ接続確立状態６１へ遷移した場合、電子機器１０は、まず、ネゴシエーション状態６１１に入る。ネゴシエーション状態６１１では、上述したように、モード同定、サービスネゴシエーション、サービス同期等のネゴシエーション処理が実行される。このネゴシエーション処理が完了したことに応答して、電子機器１０は、ネゴシエーション状態６１１からサービス実行状態６１２へ遷移する。
【０１２１】
サービス実行状態６１２では、ネゴシエーション処理で決定されたサービスに応じた処理が実行される。そして、サービスの実行が完了したことに応答して、電子機器１０は、サービス実行状態６１２からウェイト状態６１３へ遷移する。
【０１２２】
ウェイト状態６１３では、ユーザによるサービス開始要求（ウェイト解除要求）の入力（上位アプリケーションからの要求）や外部デバイスからのサービス開始要求の受信等のイベントが発生するまで、サービスの開始を待つ待機処理が実行される。したがって、ユーザによりサービス開始要求が入力されたこと、又は外部デバイスからサービス開始要求を受信したことに応答して、電子機器１０は、ウェイト状態６１３からネゴシエーション状態６１１へ遷移する。
【０１２３】
なお、電子機器１０がＣＮＬ接続確立状態６１である期間中、すなわち、ネゴシエーション状態６１１、サービス実行状態６１２、ウェイト状態６１３のいずれかの状態である期間中に、電子機器１０と外部デバイスとの近接状態が解除された場合、電子機器１０と外部デバイスとの間の接続が解除され、電子機器１０は切断状態６０へ遷移する。
【０１２４】
上述のように、電子機器１０は、サービス実行状態６１２で指定されたサービスを実行した後、ウェイト状態６１３へ遷移する。このウェイト状態６１３において、電子機器１０は、ユーザや外部デバイスからのサービス開始要求があるまで、新たなサービスを開始するためのネゴシエーション処理を実行することを待つ。これにより、近接状態に設定されたデバイス間で、不要なサービスの実行が開始されることを抑制することができる。なお、図８乃至図１１を参照して説明した通信完了フラグに基づく待機処理を、図１２に示すような状態遷移に基づいて行ってもよい。その場合、電子機器１０は、通信相手のデバイスとの近接無線通信の状態の遷移を管理し、各状態に応じた処理を実行する。状態がウェイト状態６１３に遷移した場合には、上述のように、新たなサービスを開始するための処理を待つ待機処理を実行することで、通信完了フラグに基づく待機処理を実行した場合と同様の効果を得ることができる。
【０１２５】
次に、図１３を参照して、各デバイスのＰＣＬ４０に設定されるモードとデバイス間で実行されるサービスとの関係を説明する。ここでは、デバイスＡとデバイスＢとの間でサービスが実行されることを想定する。デバイスＡのプロトコル変換層４０、及びデバイスＢのプロトコル変換層４０は、それぞれ、プロアクティブモード、フレキシブルモード、及びリアクティブモードのいずれかのモードに設定される。
【０１２６】
まず、デバイスＡがプロアクティブモードに設定されている場合に着目して説明する。
【０１２７】
デバイスＡがプロアクティブモードに設定され、且つデバイスＢがプロアクティブモードに設定されている場合、デバイスＡとデバイスＢのいずれのデバイスも、サービス開始要求を通信相手のデバイスへ送信するが、通信相手のデバイスによるサービス開始要求には応答しない。このため、デバイスＡとデバイスＢとの間でサービスは開始されず、エラーとなる。
【０１２８】
デバイスＡがプロアクティブモードに設定され、且つデバイスＢがフレキシブルモードに設定されている場合、デバイスＡとデバイスＢのいずれのデバイスも、サービス開始要求を通信相手のデバイスへ送信する。また、フレキシブルモードに設定されたデバイスＢは、デバイスＡからのサービス開始要求を受信し、フレキシブルモードからリアクティブモードへ遷移し、デバイスＡへサービス開始要求に対する応答を返す。したがって、デバイスＡとデバイスＢとの間では、プロアクティブモードに設定されたデバイスＡで指定されたサービスが実行される。
【０１２９】
デバイスＡがプロアクティブモードに設定され、且つデバイスＢがリアクティブモードに設定されている場合、デバイスＡはサービスの開始要求を通信相手のデバイスへ送信する。また、リアクティブモードに設定されたデバイスＢは、このサービス開始要求を受信し、デバイスＡへサービス開始要求に対する応答を返す。したがって、デバイスＡとデバイスＢとの間では、プロアクティブモードに設定されたデバイスＡで指定されたサービスが実行される。
【０１３０】
次に、デバイスＡがフレキシブルモードに設定されている場合について説明する。
【０１３１】
デバイスＡがフレキシブルモードに設定され、且つデバイスＢがプロアクティブモードに設定されている場合、デバイスＡとデバイスＢのいずれのデバイスも、サービス開始要求を通信相手のデバイスへ送信する。また、フレキシブルモードに設定されたデバイスＡは、デバイスＢからのサービス開始要求を受信し、フレキシブルモードからリアクティブモードへ遷移し、デバイスＢへサービス開始要求に対する応答を返す。したがって、デバイスＡとデバイスＢとの間では、プロアクティブモードに設定されたデバイスＢで指定されたサービスが実行される。
【０１３２】
デバイスＡがフレキシブルモードに設定され、且つデバイスＢがフレキシブルモードに設定されている場合、デバイスＡとデバイスＢのいずれのデバイスも、サービス開始要求を通信相手のデバイスへ送信する。しかし、自身のモードがフレキシブルモードに設定され、且つ通信相手のデバイスのモードもフレキシブルモードに設定されているため、デバイスＡとデバイスＢとの間でサービスは開始されず、エラーとなる。
【０１３３】
デバイスＡがフレキシブルモードに設定され、且つデバイスＢがリアクティブモードに設定されている場合、デバイスＡは、サービス開始要求を通信相手のデバイスへ送信する。リアクティブモードに設定されたデバイスＢは、デバイスＡからのサービス開始要求を受信し、デバイスＡへサービス開始要求に対する応答を返す。そして、デバイスＡは、フレキシブルモードからプロアクティブモードへ遷移する。デバイスＡとデバイスＢとの間では、プロアクティブモードに設定されたデバイスＡで予め指定されたサービスが実行される。なお、デバイスＢが実行し得るサービスのリストをデバイスＡ上でユーザへ提示し、デバイス間で実行するサービスをユーザが選択することもできる。
【０１３４】
最後に、デバイスＡがリアクティブモードに設定されている場合について説明する。
【０１３５】
デバイスＡがリアクティブモードに設定され、且つデバイスＢがプロアクティブモードに設定されている場合、デバイスＢは、サービス開始要求を通信相手のデバイスへ送信する。また、リアクティブモードに設定されたデバイスＡは、デバイスＢからのサービス開始要求を受信し、デバイスＢへサービス開始要求に対する応答を返す。したがって、デバイスＡとデバイスＢとの間では、プロアクティブモードに設定されたデバイスＢで指定されたサービスが実行される。
【０１３６】
デバイスＡがリアクティブモードに設定され、且つデバイスＢがフレキシブルモードに設定されている場合、デバイスＢは、サービス開始要求を通信相手のデバイスへ送信する。リアクティブモードに設定されたデバイスＡは、デバイスＢからのサービス開始要求を受信し、デバイスＢへサービス開始要求に対する応答を返す。そして、デバイスＢは、フレキシブルモードからプロアクティブモードへ遷移する。デバイスＡとデバイスＢとの間では、プロアクティブモードに設定されたデバイスＢで予め指定されたサービスが実行される。なお、デバイスＡが実行し得るサービスのリストをデバイスＢ上でユーザへ提示し、デバイス間で実行するサービスをユーザが選択することもできる。
【０１３７】
なお、デバイスＡがリアクティブモードに設定され、且つデバイスＢがリアクティブモードに設定されている場合には、デバイスＡとデバイスＢのいずれのデバイスも、サービス開始要求を通信相手のデバイスへ送信しない。このため、デバイスＡとデバイスＢとの間でサービスは実行されない。
【０１３８】
次に、図１４のフローチャートを参照して、近接無線通信方式による通信処理の手順の例を説明する。
【０１３９】
まず、電子機器１０は、電子機器１０と外部デバイスとが近づけられるタッチ操作が行われたかどうかを判定する（ステップＳ７０１）。具体的には、電子機器１０は、外部デバイスへ接続要求を送信し、この接続要求に対する応答を外部デバイスから受信したかどうか、又は外部デバイスから接続要求を受信したかどうかを判定する。
【０１４０】
電子機器１０と外部デバイスとが近づけられるタッチ操作が行われた場合（ステップＳ７０１のＹＥＳ）、電子機器１０は、外部デバイスとの間で認証処理を実行する（ステップＳ７０２）。電子機器１０は、通信相手のデバイスである外部デバイスを同定する。そして、電子機器１０は、外部デバイスとの間でネゴシエーション処理を実行する（ステップＳ７０３）。ネゴシエーション処理では、電子機器１０は、モード調停、サービスネゴシエーション、及びサービス同期の処理を実行する。具体的には、電子機器１０は、モード調停により、ＰＣＬ４０に設定するモードを制御する。また、電子機器１０は、電子機器１０と外部デバイスとの間で実行するサービスを決定し、サービスを開始する。
【０１４１】
ネゴシエーション処理が完了すると、電子機器１０は、ネゴシエーション処理により決定されたサービスを実行する（ステップＳ７０４）。
【０１４２】
次いで、電子機器１０は、外部デバイスとの間で実行したサービスが完了したかどうかを判定する（ステップＳ７０５）。外部デバイスとの間で実行したサービスが完了した場合（ステップＳ７０５のＹＥＳ）、電子機器１０は、再度ステップＳ７０２以降の処理を繰り返す。つまり、電子機器１０と外部デバイスとが近接状態に設定されている間、電子機器１０と外部デバイスとの間でサービスの提供が繰り返される。
【０１４３】
以上の処理により、近接状態に設定されたデバイス間で、サービスの提供を繰り返し行うことができる。しかし、一つのサービスが完了した後、自動的に新たなサービスの提供が開始される場合、ユーザによる操作の手間を省くことができる一方で、単に近接状態で放置されているデバイス間でもサービスの提供が開始されてしまい、予期せぬサービスが実行されてしまう可能性がある。図１５は、サービスの開始要求があった場合にのみ、サービスの提供を開始するように近接無線通信デバイス１０４を制御する場合の通信処理の手順の例を示すフローチャートである。
【０１４４】
まず、電子機器１０は、電子機器１０と外部デバイスとが近づけられるタッチ操作が行われたかどうかを判定する（ステップＳ８０１）。具体的には、電子機器１０は、外部デバイスへ接続要求を送信し、この接続要求に対する応答を外部デバイスから受信したかどうか、又は外部デバイスから接続要求を受信したかどうかを判定する。
【０１４５】
電子機器１０と外部デバイスとが近づけられるタッチ操作が行われた場合（ステップＳ８０１のＹＥＳ）、電子機器１０は、外部デバイスとの間で認証処理を実行する（ステップＳ８０２）。電子機器１０は、通信相手のデバイスである外部デバイスを同定する。そして、電子機器１０は、外部デバイスとの間でネゴシエーション処理を実行する（ステップＳ８０３）。ネゴシエーション処理では、電子機器１０は、モード調停、サービスネゴシエーション、及びサービス同期の処理を実行する。具体的には、電子機器１０は、モード調停により、ＰＣＬ４０に設定するモードを制御する。また、電子機器１０は、電子機器１０と外部デバイスとの間で実行するサービスを決定し、サービスを開始する。
【０１４６】
ネゴシエーション処理が完了すると、電子機器１０は、ネゴシエーション処理により決定されたサービスを実行する（ステップＳ８０４）。
【０１４７】
次いで、電子機器１０は、外部デバイスとの間で実行したサービスが完了したかどうかを判定する（ステップＳ８０５）。外部デバイスとの間で実行したサービスが完了した場合（ステップＳ８０５のＹＥＳ）、電子機器１０は、サービスの完了を示すフラグを立てる（ステップＳ８０６）。つまり、電子機器１０は、新たなサービスを開始するための処理を待つウェイト状態へ移行する。
【０１４８】
ウェイト状態に移行した後、電子機器１０は、新たなサービスの開始を要求するサービス開始要求のイベントが発生したかどうかを判定する（ステップＳ８０７）。サービス開始要求のイベントは、例えば、ユーザによりサービス開始要求が入力された場合や外部デバイスからサービス開始要求を受信した場合に発生する。
【０１４９】
サービス開始要求のイベントが発生している場合（ステップＳ８０７のＹＥＳ）、電子機器１０は、フラグを落とす（ステップＳ８０８）。そして、電子機器１０は、ウェイト状態を解除し、新たなサービスを開始するための処理を実行する。つまり、電子機器１０は、ステップＳ８０３以降の処理を再度、実行する。
【０１５０】
サービス開始要求のイベントが発生していない場合（ステップＳ８０７のＮＯ）、電子機器１０は、通信相手のデバイスとの近接状態が解除されていないかどうかを判定する（ステップＳ８０９）。具体的には、電子機器１０は、通信相手のデバイスとの間で確立されたＣＮＬ接続が切断されていないかどうかを判定する。通信相手のデバイスとの近接状態が解除されていない場合（ステップＳ８０９のＮＯ）、ステップＳ８０７以降の処理を再度、実行する。通信相手のデバイスとの近接状態が解除されている場合（ステップＳ８０９のＹＥＳ）、電子機器１０は、フラグを落とし、ウェイト状態を解除する（ステップＳ８１０）。
【０１５１】
以上の処理により、デバイス間で一つのサービスの提供が完了した後、ユーザによるサービス開始要求があった場合にのみ新たなサービスの提供を開始し、不要なサービスが開始されることを抑制することができる。
【０１５２】
以上説明したように、本実施形態によれば、不要なサービスの提供を抑制することができる。電子機器１０と外部デバイスとが近接状態に設定された場合、電子機器１０は、外部デバイスとのＣＮＬ接続を確立し、サービスの提供を開始するためのネゴシエーション処理を実行する。そして、電子機器１０は、ネゴシエーション処理により決定されたサービスを実行する。サービスの実行が完了した場合、電子機器１０は、ウェイト状態へ遷移し、ユーザにより入力されるサービス開始要求、又は外部デバイスから送信されるサービス開始要求を待つ。そして、サービス開始要求の入力（受信）に応答して、電子機器１０は、新たなサービスを開始するための処理を実行する。上述の処理により、一つのサービスの実行が完了した後、ユーザによる指示なしに自動的に新たなサービスの提供が開始され、不要なサービスが実行されることを抑制することができる。
【０１５３】
また本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素からいくつかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【符号の説明】
【０１５４】
１０３ａ…近接無線通信制御プログラム、２０１…データ通信部、４０…プロトコル変換層、４０１…制御部、４０２…ＣＮＬ接続監視部、４０３…ネゴシエーション処理部、４０４…モード制御部、４０５…サービス処理部、４０６…待機処理部、４１０…データベース、４１０ａ…ＣＮＬ接続状態、４１０ｂ…接続モード、５０…アプリケーション層、５０１…アプリケーション部。
【図１】
2010252036.tif 000003
【図２】
2010252036.tif 000004
【図３】
2010252036.tif 000005
【図４】
2010252036.tif 000006
【図５】
2010252036.tif 000007
【図６】
2010252036.tif 000008
【図７】
2010252036.tif 000009
【図８】
2010252036.tif 000010
【図９】
2010252036.tif 000011
【図１０】
2010252036.tif 000012
【図１１】
2010252036.tif 000013
【図１２】
2010252036.tif 000014
【図１３】
2010252036.tif 000015
【図１４】
2010252036.tif 000016
【図１５】
2010252036.tif 000017
【手続補正書】
【提出日】平成22年7月14日(2010.7.14)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０００９
【補正方法】変更
【補正の内容】
【０００９】
また、本発明の電子機器は、近接無線通信を実行する通信モジュールと、前記通信モジュールと外部デバイスとが近接状態である場合に、前記通信モジュールと前記外部デバイスとの間の接続を確立する接続確立手段と、前記通信モジュールと前記外部デバイスとの間の接続が確立されている場合、前記外部デバイスが、通信相手のデバイスへサービスの開始要求を送信する第一のモード、又は通信相手のデバイスからサービスの開始要求を受信する第二のモードのいずれかであるかを判定する処理と、前記外部デバイスが前記第一のモードに設定されている場合、前記外部デバイスからサービスの開始要求を受信する処理と、前記外部デバイスが前記第二のモードに設定されている場合、前記外部デバイスへサービスの開始要求を送信し、前記通信モジュールと前記外部デバイスとの間で実行するサービスを決定する処理とを含むネゴシエーション処理を実行するネゴシエーション手段と、前記決定されたサービスを実行するサービス実行手段と、前記決定されたサービスの実行が完了した後、前記通信モジュールと前記外部デバイスとの間の接続が維持されている場合、ユーザによる要求又は前記外部デバイスからの要求に応答して、前記ネゴシエーション処理を再度実行する実行制御手段とを具備することを特徴とする。
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
近接無線通信を実行する通信モジュールと、
前記通信モジュールと外部デバイスとが近接状態である場合に、前記通信モジュールと前記外部デバイスとの間の接続を確立する接続確立手段と、
前記通信モジュールと前記外部デバイスとの間の接続が確立されている場合に、前記通信モジュールと前記外部デバイスとの間におけるネゴシエーション処理によって、前記通信モジュールと前記外部デバイスとの間で実行するサービスを決定するネゴシエーション手段と、
前記決定されたサービスを実行するサービス実行手段と、
前記決定されたサービスの実行が完了した後、前記通信モジュールと前記外部デバイスとの間の接続が維持されている場合、ユーザによる要求又は前記外部デバイスからの要求に応答して、前記ネゴシエーション処理を再度実行する実行制御手段とを具備することを特徴とする電子機器。
【請求項２】
前記実行制御手段は、前記決定されたサービスの実行が完了した後、ユーザによる要求までの間、前記ネゴシエーション処理の開始要求を送信しないことを特徴とする請求項１記載の電子機器。
【請求項３】
前記決定されたサービスの実行が完了した場合、実行完了を示すフラグをセットし、前記通信モジュールと前記外部デバイスとの間の接続が確立されている場合、ユーザによる要求又は前記外部デバイスからの要求に応答して、前記フラグをリセットするフラグ設定手段をさらに具備し、
前記実行制御手段は、前記フラグのリセットに応答して、前記ネゴシエーション処理を再度実行することを特徴とする請求項１記載の電子機器。
【請求項４】
近接無線通信を実行する通信モジュールと、
前記通信モジュールと外部デバイスとが近接状態である場合に、前記通信モジュールと前記外部デバイスとの間の接続を確立する接続確立手段と、
前記通信モジュールと前記外部デバイスとの間の接続が確立されている場合、前記外部デバイスが、通信相手のデバイスへサービスの開始要求を送信する第一のモード、又は通信相手のデバイスからサービスの開始要求を受信する第二のモードのいずれかであるかを判定する処理と、前記外部デバイスが前記第一のモードに設定されている場合、前記外部デバイスからサービスの開始要求を受信する処理と、前記外部デバイスが前記第二のモードに設定されている場合、前記外部デバイスへサービスの開始要求を送信し、前記通信モジュールと前記外部デバイスとの間で実行するサービスを決定する処理とを含むネゴシエーション処理を実行するネゴシエーション手段と、
前記決定されたサービスを実行するサービス実行手段と、
前記決定されたサービスの実行が完了した後、前記通信モジュールと前記外部デバイスとの間の接続が維持されている場合、ユーザによる要求又は前記外部デバイスからの要求に応答して、前記ネゴシエーション処理を再度実行する実行制御手段とを具備することを特徴とする電子機器。
【請求項５】
前記ネゴシエーション手段は、前記外部デバイスが前記第二のモードに設定されている場合、前記外部デバイスへサービスの開始要求を送信し、前記外部デバイスから前記外部デバイスが実行し得るサービス群を示す情報を受信し、前記サービス群から選択されたサービスを、前記通信モジュールと前記外部デバイスとの間で実行するサービスに決定し、
前記実行制御手段は、前記決定されたサービスの実行が完了した後、前記通信モジュールと前記外部デバイスとの間の接続が維持されている場合、ユーザによる要求又は前記外部デバイスからの要求に応答して、前記ネゴシエーション処理を再度実行することを特徴とする請求項４記載の電子機器。
【請求項６】
前記ネゴシエーション手段は、前記外部デバイスが前記第一のモードに設定されている場合、前記外部デバイスからサービスの開始要求を受信し、前記外部デバイスで指定されたサービスを示す情報を受信し、当該サービスを前記通信モジュールと前記外部デバイスとの間で実行するサービスに決定し、
前記実行制御手段は、前記決定されたサービスの実行が完了した後、前記通信モジュールと前記外部デバイスとの間の接続が維持されている場合、ユーザによる要求又は前記外部デバイスからの要求に応答して、前記ネゴシエーション処理を再度実行することを特徴とする請求項４記載の電子機器。
【請求項７】
前記ネゴシエーション手段は、ユーザによる要求に応答して、前記外部デバイスへサービスの開始要求を送信し、前記ユーザによる要求で指定されたサービスを前記通信モジュールと前記外部デバイスとの間で実行するサービスに決定し、
前記実行制御手段は、前記決定されたサービスの実行が完了した後、前記通信モジュールと前記外部デバイスとの間の接続が維持されている場合、ユーザによる要求又は前記外部デバイスからの要求に応答して、前記ネゴシエーション処理を再度実行することを特徴とする請求項４記載の電子機器。
【請求項８】
前記決定されたサービスの実行が完了した場合、サービスの実行完了を示すフラグをセットし、前記通信モジュールと前記外部デバイスとの間の接続が確立されている場合、ユーザによる要求又は前記外部デバイスからの要求に応答して、前記フラグをリセットするフラグ設定手段をさらに具備し、
前記実行制御手段は、前記フラグのリセットに応答して、前記ネゴシエーション処理を再度実行することを特徴とする請求項４記載の電子機器。
【請求項９】
近接無線通信を実行する通信モジュールを備える電子機器と外部デバイスとの間の通信を制御する通信制御方法であって、
前記通信モジュールと前記外部デバイスとが近接状態である場合に、前記通信モジュールと前記外部デバイスとの間の接続を確立する接続確立ステップと、
前記通信モジュールと前記外部デバイスとの間の接続が確立されている場合に、前記通信モジュールと前記外部デバイスとの間におけるネゴシエーション処理によって、前記通信モジュールと前記外部デバイスとの間で実行するサービスを決定するネゴシエーションステップと、
前記決定されたサービスを実行するサービス実行ステップと、
前記決定されたサービスの実行が完了した後、前記通信モジュールと前記外部デバイスとの間の接続が維持されている場合、ユーザによる要求又は前記外部デバイスからの要求に応答して、前記ネゴシエーション処理を再度実行する実行制御ステップとを具備することを特徴とする通信制御方法。