以下、図面を参照して、実施形態を説明する。
図1は、本実施形態に係る電子機器の構成を示す。電子機器は、例えばスマートフォン、タブレットコンピュータまたはノートブック型のパーソナルコンピュータ(PC)等の各種デバイスとして実現され得る。本実施形態においては、この電子機器が例えばスマートフォンとして実現されているものとして説明する。
図1に示す電子機器10は、システム制御部11、ROM12、RAM13、第1無線通信デバイス14、第2無線通信デバイス15、電源制御部16及びバッテリ17等を備える。
システム制御部11は、電子機器10内の各部の動作を制御する。システム制御部11は、例えばCPU11aを備え、ROM12、RAM13、第1無線通信デバイス14、第2無線通信デバイス15及び電源制御部16等に接続される。
CPU11aは、ROM12のような記憶媒体に格納されたソフトウェア(プログラム)をRAM13へロードし、必要な処理を実行するハードウェアプロセッサ(処理回路)である。なお、ROM12からRAM13にロードされるソフトウェアには、オペレーティングシステム(図示せず)、近接無線通信制御プログラム13a及びSNS(Social Networking Service)アプリケーションプログラム13b等が含まれる。
近接無線通信制御プログラム13aは、後述する第1無線通信デバイス14を制御して、電子機器10と近接無線通信機能を有する他のデバイス(以下、外部デバイスと表記)との間で近接無線通信を実行するためのプログラムである。なお、外部デバイスは、電子機器10と同様に、例えばスマートフォン、タブレットコンピュータまたはノートブック型のPC等のデバイス(電子機器)である。
SNSアプリケーションプログラム13bは、電子機器10を使用するユーザが予め登録された他のユーザとコミュニケーションを図ることが可能なソーシャルネットワーキングサービスの提供を受けるためのプログラムである。なお、ソーシャルネットワーキングサービス(の提供を実現する管理サーバ等)においては、当該ソーシャルネットワーキングサービスの提供を受けるユーザの情報が管理されている。ソーシャルネットワークキングサービスにおいては、このようなユーザの情報等を用いることによって、各ユーザ(によって使用されるデバイス)間でメッセージ及び各種データ等を送受信することができる。
なお、本実施形態において、SNSアプリケーションプログラム13bは、例えば電子機器10を使用するユーザが他のユーザが使用する外部デバイスを特定して例えばメッセージ等を送信することが可能なプログラム(コミュニケーションアプリ)であればよい。
第1無線通信デバイス14は、例えば近接無線通信を実行する通信モジュールである。第1無線通信デバイス14は、当該第1無線通信デバイス14から所定の距離内に存在する外部デバイスとの無線接続(セッション)を確立し、例えば動画、静止画及び音楽等のデータ(デジタルコンテンツ)を送受信する機能を有する。
なお、第1無線通信デバイス14(を備える電子機器10)と外部デバイスとの間の近接無線通信は、ピアツーピア形式で実行される。この近接無線通信における通信可能距離は、例えば数cmである。第1無線通信デバイス14と外部デバイスとの間の無線接続は、第1無線通信デバイス14と外部デバイスとが近接状態にある場合、つまり、第1無線通信デバイス14と外部デバイスとが通信可能距離(例えば、数cm)以内に接近した場合にのみ可能となる。第1無線通信デバイス14と外部デバイスとの間の無線接続が確立された場合、例えばユーザによって明示的に指定されたデータ(ファイル)等の伝送が第1無線通信デバイス14と外部デバイスとの間で実行される。
近接無線通信(技術)としては、例えば誘導電界を利用したTransferJetを用いることができる。TransferJetは、UWB(超広帯域無線)を使用することにより、高速データ転送を実現することができる。
第1無線通信デバイス14は、アンテナ14aに接続されている。アンテナ14aは、カプラと称される電極であり、誘導電界を用いた無線信号により、外部デバイスに対するデータの送受信を行う。外部デバイスがアンテナ14aから通信可能距離の範囲内に接近した場合、第1無線通信デバイス14及び外部デバイスのそれぞれのアンテナ(カプラ)間が誘導電界によって結合される。これにより、第1無線通信デバイス14と外部デバイスとの間の無線通信が実行可能となる。なお、第1無線通信デバイス14及びアンテナ14aは、1つのモジュールとして実現し得る。
第2無線通信デバイス15は、上記した近接無線通信とは異なる無線通信を実行する通信モジュールである。具体的には、第2無線通信デバイス15は、例えば3G/LTE通信網(セルラーネットワーク)、インターネット及び無線LAN(WiFi(登録商標))等のネットワーク(以下、公衆ネットワークと表記)を介して外部デバイスとの無線通信を実行する。なお、第2無線通信デバイス15は、上記した近接無線通信とは異なる無線通信を実行するものであればよく、例えばBluetooth(登録商標)等の無線通信を実行しても構わない。
電源制御部16は、バッテリ17から供給される電力を用いて、電子機器10内の各部に電力を供給する。なお、バッテリ17は、例えば図示しない外部電源装置から供給される電力を用いて充電可能である。
なお、図1においては近接無線通信を実行するためのモジュール(第1無線通信デバイス14及びアンテナ14a)が電子機器10に内蔵されているものとして説明したが、当該電子機器10における近接無線通信機能は、近接無線通信を実行するように構成された小型アダプタ(ドングル)によって実現されてもよい。この場合、電子機器10自体が近接無線通信機能を有していない場合であっても、電子機器10(スマートフォン)に設けられている例えばマイクロUSBコネクタを介して当該電子機器10に小型アダプタを取り付けることによって、当該電子機器10は、外部デバイスと近接無線通信を実行することが可能となる。なお、電子機器10がノートブック型のPC等である場合には、小型アダプタは、例えばUSBコネクタを介して電子機器10に取り付け可能なように構成されていてもよい。
また、図1においては省略されているが、電子機器10は、当該電子機器10のディスプレイ(画面)の前面に重畳して配置され、例えばユーザの指先等が接触(タッチ)した画面上の位置を検出することが可能なタッチパネルを更に備える。このようなタッチパネルによって、電子機器10は、電子機器10に対するユーザの各種操作を検出することができる。
ここで、図2を参照して、近接無線通信を実行する際の2つのデバイス(電子機器10及び外部デバイス20)の位置関係の概要について説明する。
ここでは、電子機器10及び外部デバイス20が共にスマートフォンである場合を想定している。なお、図1においては電子機器10の構成について説明したが、外部デバイス20は、上記した図1に示す構成と同様の構成を有するものとする。
この場合、ユーザは、例えば電子機器10を外部デバイス20に近接させる操作を行うことにより、電子機器10及び外部デバイス20間のデータ転送(つまり、データの送受信)を開始させることができる。電子機器10及び外部デバイス20間のデータ転送は、電子機器10及び外部デバイス20(のアンテナ)が互いに近接した(つまり、通信可能距離内に存在する)ことをトリガとして実行される。
次に、図3を参照して、第1無線通信デバイス14を用いて実行される近接無線通信を制御するためのソフトウェアアーキテクチャを説明する。
図3のソフトウェアアーキテクチャは、近接無線通信を制御するためのプロトコルスタックの階層構造を示している。プロトコルスタックは、物理層(PHY)、コネクション層(CNL)、プロトコル変換層(PCL)、アプリケーション層(APPLICATION)から構成されている。なお、例えばコネクション層、プロトコル変換層及びアプリケーション層は、通信制御プログラム13aによって実現される。
物理層(PHY)は、物理的なデータ転送を制御する層であり、OSI参照モデル内の物理層に対応する。物理層の一部の機能または全ての機能は、第1無線通信デバイス14内のハードウェアを用いて実現することができる。物理層は、コネクション層からのデータを無線信号に変換する。具体的には、物理層は、データ(デジタル情報)をカプラへの通信に適したRF信号に変換する。
コネクション層(CNL)は、OSI参照モデル内のデータリンク層及びトランスポート層に対応しており、物理層を制御してデータ通信を実行する。コネクション層は、プロトコル変換層からの接続要求または外部デバイス20からの接続要求に応じて、近接状態にある(通信可能距離内に存在する)第1無線通信デバイス14と外部デバイス20との間の接続(CNL接続)を確立する処理を実行する。また、コネクション層は、近接状態が解除された第1無線通信デバイス14と外部デバイス20との間の接続を切断する処理も実行する。
プロトコル変換層(PCL)は、OSI参照モデル内のセッション層及びプレゼンテーション層に対応しており、アプリケーション層とコネクション層との間に位置する。プロトコル変換層は、アプリケーション層内の各アプリケーション(通信プログラム)の制御及びコネクション層の制御を行う。
より具体的には、プロトコル変換層は、アプリケーション層の各アプリケーションが扱うアプリケーションプロトコル(例えば、SCSI、OBEX、他の汎用プロトコル等)に対応したデータを特定の伝送用データ形式に変換するための変換処理を実行する。この変換処理により、異なるアプリケーションによって送受信されるデータも、コネクション層が扱うことが可能なパケット(特定の伝送用データ形式のデータ)に変換される。このプロトコル変換層は、様々なアプリケーションプロトコルを近接無線通信で利用することを可能にする。
アプリケーション層(APPLICATION)は、SCSI、OBEX、他の汎用プロトコル等の複数のアプリケーションプロトコルにそれぞれ対応した複数のアプリケーションを含む。各アプリケーションは、プロトコル変換層に対して無線接続(セッション)の開始/終了を要求する処理、及びプロトコル変換層を介してデータを送受信する処理を実行する。
ここで、上記した近接無線通信が実行される場合の2つのデバイスの動作について簡単に説明する。ここでは、近接無線通信によって電子機器10が外部デバイス20にデータを送信するものとする。
この場合、外部デバイス20に対して送信されるデータを指定する等の操作が行われた電子機器10(つまり、データを送信可能な状態に設定されているデータの送信元デバイス)は、当該データ(の一部)をアンテナ14a(カプラ)を介して送信する処理を継続的に実行する。
一方、データを受信可能な状態(以下、受信待機状態と表記)に設定されている外部デバイス20(つまり、データの送信先デバイス)は、アンテナ(カプラ)を介してデータを受信可能な範囲内(つまり、上記した通信可能距離内)に送信元デバイスが存在する(近接した)か否かを継続的に監視する。
これにより、外部デバイス20(送信先デバイス)は、電子機器10(送信元デバイス)の近接を検知することができる。
このような受信待機状態に設定されている外部デバイス20によって電子機器10の近接が検知された場合には、当該電子機器10によって送信されたデータが外部デバイス20において受信される。
データが外部デバイス20において受信された場合、当該データが受信されたことを示す応答が当該外部デバイス20から電子機器10に送信される。電子機器10は、このように外部デバイス20から送信された応答を受信することによって、次のデータを外部デバイス20に送信することができる。近接無線通信においては、このような動作が電子機器10及び外部デバイス20によって行われることによって、送信対象のデータ(の全て)を電子機器10から外部デバイス20に送信することができる。
ここで、上記したように外部デバイス20が受信待機状態に設定されている間、当該外部デバイス20は、送信元デバイスが近接したか否かを常に監視する。このような動作が長時間継続して行われる場合、外部デバイス20における消費電力(量)は大きくなる。
このため、近接無線通信機能を有する外部デバイス20(及び電子機器10)においては、受信待機状態の設定及び解除(以下、近接無線通信機能のON/OFFと表記)をユーザの操作に応じて切り替えることができる構成が採用されている。
このような構成によれば、例えば外部デバイス20(つまり、データを受信するデバイス)は、近接無線通信機能(近接無線通信における受信回路)がONされている(つまり、外部デバイス20が受信待機状態に設定されている)間にのみ上記した監視処理を実行し、近接無線通信機能がOFFされている(つまり、受信待機状態が解除されている)間は監視処理を実行しないため、消費電力を低減することができる。
しかしながら、上記したように近接無線通信機能のON/OFFをユーザの操作に応じて切り替える場合、送信先デバイスである外部デバイス20のユーザは、電子機器10等の他のデバイス(送信元デバイス)とデータの送受信を行う度に近接無線通信機能をONするための操作を行う必要があるため、非常に煩雑であり、ユーザにとって利便性が低い。
そこで、本実施形態に係る電子機器10は、例えば近接無線通信を実行する際に自動的に送信先デバイスの近接無線通信機能をONする(送信先デバイスを受信待機状態に自動的に設定する)ための機能(以下、自動受信設定機能と表記)を有する。
図4は、本実施形態に係る電子機器10が有する自動受信設定機能に関する機能構成を示すブロック図である。なお、図4においては電子機器10の機能構成について説明するが、当該電子機器10と近接無線通信を実行する外部デバイス20(つまり、近接無線通信機能を有する外部デバイス20)も同様の機能構成を有するものとする。
図4に示すように、電子機器10は、格納部101、指定部102、通知送信部(第1の送信部)103、データ送信部(第2の送信部)104、通知受信部105、設定部106及びデータ受信部107を含む。
本実施形態において、格納部101は、電子機器10に備えられる各種記憶装置(例えば、ROM12等)によって実現される。
また、本実施形態において、指定部102、通知送信部103、データ送信部104、通知受信部105、設定部106及びデータ受信部107は、図1に示すCPU11aが近接無線通信制御プログラム13aを実行すること(すなわち、ソフトウェア)によって実現される機能部である。
なお、これらの各部102〜107は、例えばIC(Integrated Circuit)等のハードウェアによって実現されてもよいし、ソフトウェア及びハードウェアの組み合わせ構成として実現されてもよい。
格納部101には、例えば近接無線通信によって外部デバイス20に送信可能な各種データが格納されている。
指定部102は、ユーザの操作に応じて、データの送信先となる外部デバイス20(送信先デバイス)を指定する。この場合、指定部102は、例えば上記したSNSアプリケーションによって提供されるソーシャルネットワーキングサービスにおいて管理されている他のユーザの情報を用いて、電子機器10を使用するユーザによって指定された他のユーザによって使用される外部デバイス20(例えば、スマートフォン等)を指定する。また、指定部102は、格納部101に格納されているデータの中から、送信対象のデータ(つまり、指定された外部デバイス20に送信されるデータ)を指定する。
通知送信部103は、指定部102によって送信対象のデータが指定されたことを示す通知を、当該指定部102によって指定された外部デバイス20に送信する。この通知は、電子機器10に備えられる第2無線通信デバイス15を用いて、例えば上記した公衆ネットワークを介して送信される。
ここで、通知送信部103によって送信された通知は、公衆ネットワークを介して外部デバイス20によって受信される。これにより、外部デバイス20は、電子機器10が近接無線通信により送信対象のデータが送信されることを事前に把握することができる。この場合、外部デバイス20においては、例えば近接無線通信機能が自動的にONされ、近接無線通信によりデータを受信可能な状態(つまり、受信待機状態)となる。これによれば、外部デバイス20においては、当該外部デバイス20のアンテナを介してデータを受信可能な範囲内に送信元デバイス(電子機器10)が近接したか否かを継続的に監視する。
データ送信部104は、送信対象のデータをアンテナ14aを介して送信する処理を実行する。電子機器10が上記したように近接無線通信機能が自動的にONされた外部デバイス20(つまり、送信元デバイスの近接を監視している外部デバイス20)に近接した場合、送信対象のデータは、電子機器10(データ送信部104)から外部デバイス20に送信される。
なお、上記した指定部102、通知送信部103及びデータ送信部104は、電子機器10が送信元デバイスとして動作する場合における自動受信設定機能に関する機能部である。
一方、通知受信部105、設定部106及びデータ受信部107は、電子機器10が送信先デバイスとして動作する場合における自動受信設定機能に関する機能部である。
例えば電子機器10が送信先デバイスとして動作し、外部デバイス20が送信元デバイスとして動作する場合、電子機器10と同様に図4に示す機能構成を有する外部デバイス20(に含まれる通知送信部103)は、当該外部デバイス20において送信対象のデータが指定されたことを示す通知を公衆ネットワークを介して電子機器10に送信する。
この場合、電子機器10に含まれる通知受信部105は、外部デバイス20によって送信された通知を受信する。
設定部106は、通知受信部105によって受信された通知に応じて、電子機器10の近接無線通信機能をONする(つまり、電子機器10を受信待機状態に設定する)。
データ受信部107は、データをアンテナ14aを介して受信する処理を実行する。この場合、データ受信部107は、アンテナ14aを介してデータを受信可能な範囲内に送信元デバイス(外部デバイス20)が近接したか否かを継続的に監視する。
外部デバイス20が電子機器10に近接した場合、データ受信部107は、外部デバイス20によって送信された送信対象のデータを受信する。
次に、図5を参照して、本実施形態において近接無線通信を実行する電子機器10及び外部デバイス20の動作の概要について説明する。
ここでは、電子機器10が送信元デバイスとして動作し、外部デバイス20が送信先デバイスとして動作するものとして説明する。また、便宜的に、電子機器10を使用するユーザをユーザA、外部デバイス20を使用するユーザをユーザBと称する。
(1)ユーザA(が使用する電子機器10)がユーザB(が使用する外部デバイス20)に対してデータを送信する場合、ユーザAは、電子機器10を操作することによって上述したSNSアプリケーションプログラム13bを起動する。
このSNSアプリケーションプログラム13bは、上記したソーシャルネットワーキングサービスの提供を受けるプログラム(ソフトウェア)である。このようなSNSアプリケーションプログラム13bによって提供されるソーシャルネットワーキングサービス上では、ユーザAは、電子機器10を介して他のユーザを指定してメッセージ及び当該電子機器10(格納部101)に格納されている各種データ等を送信することができる。
ここで、SNSアプリケーションプログラム13bが電子機器10上で起動された場合、当該電子機器10の画面には、例えばユーザAによって予め登録されている他のユーザ(のユーザ名等)が一覧表示される。ユーザAは、このように表示された他のユーザの一覧の中からユーザB(によって使用される外部デバイス20)を送信先デバイスとして指定する。
また、ユーザAは、SNSアプリケーションプログラム13bを起動した電子機器10を操作することによって、当該電子機器10に格納されている各種データの中から送信対象のデータ(ファイル)を指定する。
(2)上記した(1)において送信先デバイス(外部デバイス20)及びデータが指定された場合、当該データが指定されたこと(つまり、当該データを外部デバイス20に送信しようとしていること)を示す通知(以下、データ送信通知と表記)が公衆ネットワークを介して電子機器10から外部デバイス20に送信される。換言すれば、データ送信通知は、近接無線通信とは異なる公衆ネットワークを介した無線通信によって外部デバイス20に送信される。
なお、データ送信通知は、上記したSNSアプリケーションプログラム13bによって提供されるソーシャルネットワーキングサービスにおいて管理されているユーザB(外部デバイス20)の情報を用いて、当該外部デバイス20に対して送信される。
(3)電子機器10によって送信されたデータ送信通知は、外部デバイス20によって受信される。この場合、近接無線通信によって電子機器10からデータを受信するために、外部デバイス20の近接無線通信機能がONされる。
(4)外部デバイス20において近接無線通信機能がONされた場合、当該近接無線通信機能をONしたことを示す通知(以下、ON設定完了通知と表記)が公衆ネットワークを介して外部デバイス20から電子機器10に対して送信される。
(5)外部デバイス20によって送信されたON設定完了通知は、電子機器10によって受信され、当該電子機器10の画面等に表示される。上記したように外部デバイス20において近接無線通信機能がONされると、電子機器10及び外部デバイス20間で近接無線通信が可能となる。このため、ON設定完了通知が表示された電子機器10の画面(つまり、外部デバイス20において近接無線通信機能がONされたこと)を確認したユーザAは、電子機器10を外部デバイス20に近接させることによって、電子機器10及び外部デバイス20間で近接無線通信を実行させることができる。これにより、電子機器10から外部デバイス20にデータが送信される。
次に、図6のフローチャートを参照して、近接無線通信を実行する電子機器10の処理手順について説明する。ここでは、主に送信元デバイスとして動作する電子機器10の処理手順について説明する。
まず、ユーザAがユーザBに対してデータを送信する場合、電子機器10は、ユーザAの当該電子機器10に対する操作に応じてSNSアプリケーションプログラム13bを起動する(ステップS1)。
ここで、ユーザAは、SNSアプリケーションプログラム13bが起動された電子機器10の画面に表示されたユーザインタフェース(以下、SNSのUIと表記)上で、送信先デバイス(例えば、外部デバイス20)及び送信対象のデータ(以下、対象データと表記)を指定(選択)する操作を行うことができる。
なお、送信先デバイスを指定する操作には、例えば他のユーザ(によって使用される外部デバイス20)の一覧の中からSNSのUIを介して送信先デバイスを使用するユーザを選択する操作等が含まれる。対象データを指定する操作には、電子機器10(格納部101)に格納されているデータの一覧の中からSNSのUIを介して対象データを選択する操作等が含まれる。なお、対象データには例えば動画または静止画等の画像データが含まれるが、対象データは他のデータ(音声データ及びテキストデータ)等であっても構わない。
指定部102は、上記したユーザAの操作に従って、送信先デバイス及び対象データを指定する(ステップS2)。
ここでは、SNSアプリケーションプログラム13bに応じたSNSのUI上でユーザAが送信先デバイス及び対象データを指定する操作を行うものとして説明したが、例えば当該SNSアプリケーションプログラム13bによって提供されるソーシャルネットワーキングサービスにおいて管理されている他のユーザの情報を利用して送信先デバイス(及び対象データ)を指定することができるのであれば、当該他のユーザの情報を利用可能な別のアプリケーションソフトウェア(例えば、送信先デバイス及び対象データを指定するための専用のアプリケーションプログラム)が電子機器10上で起動されて、送信先デバイス及び対象データが指定されても構わない。
以下、ステップS2において指定された送信先デバイスは外部デバイス20であるものとして説明する。
次に、通知送信部103は、ステップS2において指定された対象データのサイズ(容量)が予め定められた値(以下、閾値と表記)以上であるか否かを判定する(ステップS3)。なお、閾値としては例えば5MB等が設定されるが、当該閾値は、ユーザA等によって適宜変更されても構わない。
対象データのサイズが閾値以上であると判定された場合(ステップS3のYES)、電子機器10の画面には、例えば対象データをSNSアプリケーションプログラム13bによって提供されるソーシャルネットワーキングサービス上で送信するか否かをユーザAに対して問い合わせるメッセージ(以下、第1問合せメッセージと表記)が表示される。この場合、例えば「SNSで送信しますか?」等の第1問い合わせメッセージが表示される。
ユーザAは、電子機器10の画面に表示された第1問い合わせメッセージに対して、対象データをソーシャルネットワーキングサービス上で送信するか否かを電子機器10に対して指示することができる。具体的には、電子機器10の画面には上記した第1問い合わせメッセージの近傍に「YES」及び「NO」ボタンが表示されており、ユーザAは、例えば電子機器10の画面に表示された「YES」ボタンを指定(押下)する操作を行うことによって、対象データをソーシャルネットワーキングサービス上で送信することを指示することができる。一方、ユーザAは、例えば「NO」ボタンを指定(押下)する操作を行うことによって、対象データをソーシャルネットワーキングサービス上で送信しないことを指示することができる。
電子機器10においては、このユーザの指示(操作)に応じて対象データをソーシャルネットワーキングサービス上で送信するか否かが判定される(ステップS4)。
対象データをソーシャルネットワーキングサービス上で送信しないと判定された場合(ステップS4のNO)、電子機器10の画面には、例えば対象データを近接無線通信によって送信するか否かをユーザAに対して問い合わせるメッセージ(以下、第2問い合わせメッセージと表記)が表示される。この場合、例えば「近接無線通信で送信しますか?」等の第2問い合わせメッセージが表示される。
ユーザAは、電子機器10の画面に表示された第2問い合わせメッセージに対して、対象データを近接無線通信により送信するか否かを電子機器10に対して指示することができる。具体的には、上記した第1問い合わせメッセージが表示された場合と同様に、ユーザは、第2問い合わせメッセージの近傍に表示された「YES」または「NO」ボタンを指定(押下)する操作を行うことによって、対象データを近接無線通信により送信するか否かを指示することができる。
電子機器10においては、このユーザAの指示(操作)に応じて対象データを近接無線通信により送信するか否かが判定される(ステップS5)。
対象データを近接無線通信により送信すると判定された場合(ステップS5のYES)、通知送信部103は、対象データを外部デバイス20に送信しようとしていることを示すデータ送信通知を当該外部デバイス20に送信する(ステップS6)。
この場合、通知送信部103は、近接無線通信ではなく、例えば3G/LTE通信網、インターネットまたは無線LAN等の公衆ネットワークを介した無線通信により対象データを送信する。この対象データは、例えばSNSアプリケーションプログラム13bによって提供されるソーシャルネットワーキングサービスを管理する管理サーバ装置等を介して外部デバイス20に送信されても構わない。
なお、通知送信部103によって送信されるデータ送信通知には、対象データ(ファイル)のファイル名及び電子機器10を識別するためのID等が含まれる。
ここで、通知送信部103は、ステップS6においてデータ送信通知を外部デバイス20に対して送信することによって、近接無線通信機能のONを当該外部デバイス20に対して要求する。すなわち、外部デバイス20(通知受信部105)によってデータ送信通知が受信された場合、外部デバイス20(設定部106)は、電子機器10からの要求に応答して、近接無線通信により対象データを受信するために近接無線通信機能をONする(つまり、外部デバイス20を受信待機状態に設定する)処理を実行する。なお、外部デバイス20において受信されたデータ送信通知(対象データのファイル名及びID)は、当該外部デバイス20内に保持される。
外部デバイス20において近接無線通信機能がONされた場合、当該外部デバイス20は、近接無線通信機能がONされたことを示す通知(ON設定完了通知)を電子機器10に送信する。
この場合、外部デバイス20において近接無線通信機能がONされたことは、外部デバイス20を使用するユーザBに通知されても構わない。具体的には、近接無線通信機能がONされたことを示すメッセージ(例えば、ポップアップ等)が外部デバイス20の画面に表示されてもよいし、音声または通知音等がスピーカから出力されてもよい。
電子機器10においては、ON設定完了通知が外部デバイス20から受信されたか否かが判定される(ステップS7)。
ステップS7においてON設定完了通知が受信されたと判定された場合(ステップS7のYES)、電子機器10の画面には、外部デバイス20において近接無線通信機能がONされ、近接無線通信が可能であることをユーザAに通知するメッセージ(以下、通信可能メッセージと表記)が表示される。この場合、例えば「受信設定が完了しました。デバイスを近づけて下さい。」等の通信可能メッセージが表示される。
ステップS8において表示された通信可能メッセージを確認したユーザAは、当該ユーザAが把持する電子機器10と外部デバイス20とを近接させることによって、当該電子機器10及び外部デバイス20間で近接無線通信を実行させることができる。これにより、電子機器10に含まれるデータ送信部104は、外部デバイス20に対して対象データを送信する。
このように電子機器10及び外部デバイス20間で近接無線通信が実行された場合には、外部デバイス20(データ受信部107)は、電子機器10によって送信された対象データを受信することができる。
ここで、外部デバイス20内部には、上記したステップS6において電子機器10によって送信されたデータ送信通知(対象データのファイル名及びID)が保持されている。
このため、上記したように電子機器10及び外部デバイス20間で近接無線通信が実行される際に、外部デバイス20(データ受信部107)において、当該電子機器10に対する認証処理が実行されてもよい。
具体的には、外部デバイス20は、対象データを受信する前に近接無線通信により電子機器10から当該対象データのファイル名及び電子機器10を識別するためのIDを受信し、外部デバイス20内に保持されているファイル名及びIDと比較する。この比較の結果、ファイル名及びIDが一致していない場合には、外部デバイス20は、近接無線通信による対象データの受信を拒否するように構成されていても構わない。外部デバイス20によって対象データの受信が拒否された場合には、図6に示す処理は終了される。
このような構成によれば、例えばステップS6においてデータ送信通知を送信した電子機器10以外のデバイスが近接無線通信により不正なデータを外部デバイス20に対して送信しようとした場合であっても、当該外部デバイス20が当該不正なデータを受信することを回避することができる。
データ送信部104は、外部デバイス20への対象データ(の全て)の送信が完了したか否かを判定する(ステップS9)。
対象データの送信が完了したと判定された場合(ステップS9のYES)、電子機器10の画面には、例えば対象データの送信が完了したことを示すメッセージ(例えば、「通信が完了しました。」等)が表示される。
ここで、対象データの送信が完了したにもかかわらず外部デバイス20において近接無線通信機能がONにされた状態が維持されることは、上述した受信待機状態における電力消費の観点から好ましくない。
このため、上記したようにステップS9において対象データの送信が完了したと判定された場合には、当該対象データの送信が完了したことを示す通知(以下、送信完了通知と表記)が通知送信部103から外部デバイス20に対して送信される(ステップS10)。
通知送信部103は、ステップS10において送信完了通知を外部デバイス20に対して送信することによって、近接無線通信機能のOFFを当該外部デバイス20に対して要求する。すなわち、外部デバイス20によって送信完了通知が受信された場合、当該外部デバイス20(設定部106)は、電子機器10からの要求に応答して、近接無線通信機能をOFFする(つまり、外部デバイス20の受信待機状態を解除する)処理を実行する。
外部デバイス20において近接無線通信機能がOFFされた場合、当該外部デバイス20は、近接無線通信機能がOFFされたことを示す通知(以下、OFF設定完了通知と表記)を電子機器10に送信する。
この場合、外部デバイス20において近接無線通信機能がOFFされたことは、外部デバイス20を使用するユーザBに通知されても構わない。
電子機器10においては、OFF設定完了通知が外部デバイス20から受信されたか否かが判定される(ステップS11)。
ステップS11においてOFF設定完了通知が受信されたと判定された場合(ステップS11のYES)、電子機器10の画面には、外部デバイス20において近接無線通信機能がOFFされ、外部デバイス20との通信が終了することを示すメッセージが表示される(ステップS12)。ステップS12の処理が実行されると、電子機器10の処理は終了される。
なお、上述したステップS3において対象データのサイズが閾値以上でないと判定された場合(ステップS3のNO)、例えば当該対象データはソーシャルネットワーキングサービス上で(つまり、公衆ネットワークを介した無線通信により)外部デバイス20に送信され、処理は終了される。
また、上述したステップS4において対象データをソーシャルネットワーキングサービス上で送信すると判定された場合(ステップS4のNO)、対象デバイスはソーシャルネットワーキングサービス上で外部デバイス20に送信され、処理は終了される。
更に、上述したステップS5において対象データを近接無線通信により送信しないと判定された場合(ステップS5のNO)、例えば対象データは外部デバイス20に送信されず、処理は終了される。
上述したようにTransferJetのような近接無線通信によれば、公衆ネットワークを介した無線通信と比較して、高速データ転送を実現することができる。
このため、本実施形態においては、対象データのサイズが閾値以上である場合に、近接無線通信により送信先デバイスである外部デバイス20に対象データを送信するような構成とする。なお、例えば送信先デバイスが近接無線通信機能を有していない場合等が想定されるため、対象データのサイズが閾値以上で合っても、ユーザの指示によってソーシャルネットワーキングサービス上で公衆ネットワークを介して対象データを送信することも可能である。
一方、対象データのサイズが閾値未満である場合には、近接無線通信を利用する利点が少ないため、公衆ネットワークを介した無線通信によって(つまり、ソーシャルネットワーキングサービス上で)対象データが送信される。
なお、図6に示す処理は一例であるため、例えばステップS3〜S5の処理が省略され、ステップS2において対象データが指定された後にステップS6の処理が実行される(すなわち、対象データのサイズ等にかかわらず近接無線通信が実行される)ような構成であってもよい。
また、ステップS4及びS5の処理が省略され、ステップS3において対象データのサイズが閾値以上であると判定された場合にステップS6の処理が実行される(つまり、対象データのサイズが閾値以上であれば近接無線通信が実行される)ような構成であってもよい。
なお、ステップS3において対象データのサイズが閾値以上でないと判定された場合であっても、例えば公衆ネットワークを介した無線通信における電波状況が比較的良好でない場合には、近接無線通信が実行される(つまり、ステップS6の処理が実行される)ようにしてもよい。
また、上述したステップS7においてON設定完了通知が受信されていないと判定された場合(ステップS7のNO)、外部デバイス20において近接無線通信機能がONされておらず、近接無線通信を実行することができないため、処理は終了(異常終了)される。この場合、予め定められた間隔(例えば、3秒間隔)でステップS7の処理を予め定められた回数(例えば、3回)繰り返してもON設定完了通知が受信されない場合に、処理が終了されるようにしてもよい。
また、上述したステップS9において対象データの送信が完了していないと判定された場合(ステップS9のNO)、当該対象データの送信が完了するまでステップS9の処理が繰り返される。なお、予め定められた時間内に対象データの送信が完了しない場合には、例えば近接無線通信機能のOFFを外部デバイス20に対して要求する通知を当該外部デバイス20に対して送信して、処理が終了されても構わない。このような構成によれば、外部デバイス20の近接無線通信機能を自動的にOFFすることができるため、当該外部デバイス20の消費電力を低減することが可能となる。
また、上述したステップS11においてOFF設定完了通知が受信されていないと判定された場合(ステップS11のNO)、処理は終了(異常終了)される。この場合、予め定められた間隔(例えば、3秒間隔)でステップS11の処理を予め定められた回数(例えば、3回)繰り返してもOFF設定完了通知が受信されない場合に、処理が終了されるようにしてもよい。また、この場合には、例えば電子機器10から外部デバイス20に対してOFF設定完了通知が受信されていないことを示す通知を送信することによって、例えば外部デバイス20の画面に近接無線通信機能がONされている(つまり、近接無線通信機能がOFFされていない)ことを示すメッセージ等を表示し、手動で近接無線通信機能をOFFすることをユーザBに対して通知するようにしてもよい。
上記したように本実施形態においては、データの送信先となる外部デバイス20及び当該外部デバイス20に送信されるデータを指定し、当該データが指定されたことを示す通知(データ送信通知)を、近接無線通信(第1の無線通信)とは異なる公衆ネットワークを介した無線通信(第2の無線通信)を実行することにより外部デバイス20に送信し、当該データ送信通知が送信された後、外部デバイス20と近接無線通信を実行することにより、当該外部デバイス20にデータを送信する。
本実施形態においては、このような構成により、近接無線通信を実行する前に当該近接無線通信の実行を公衆ネットワークを介して外部デバイス20に事前に通知することが可能であるため、当該外部デバイス20においては近接無線通信を実行するための準備(設定)を自動的に完了させることができ、ユーザの利便性を向上させることが可能となる。
具体的には、本実施形態においては、データ送信通知を外部デバイス20に送信することにより、外部デバイス20を近接無線通信における受信待機状態に設定することを当該外部デバイス20に要求する。これにより、例えばユーザが手動で設定を変更することなく、近接無線通信の実行前に予め外部デバイス20において近接無線通信機能をONしておくことが可能となる。
また、本実施形態においては、例えばソーシャルネットワーキングサービスにおいて管理されている情報(外部デバイス20を使用する他のユーザの情報)を用いてデータの送信先となる送信先デバイス(外部デバイス20)を指定する。本実施形態においては、このような構成により、近接無線通信によりデータを送信する場合においても使い慣れたSNSアプリケーションプログラム13bを起動して送信先デバイス(及びデータ)を指定することができる。すなわち、本実施形態においては、公衆ネットワークを介してソーシャルネットワーキングサービス上でデータを送信する場合と同様の使い勝手で近接無線通信による大容量データ通信を実行することが可能となる。
更に、本実施形態においては、指定されたデータのサイズが閾値(予め定められた値)以上である場合にデータ送信通知を外部デバイス20に送信して、近接無線通信が実行される。一方、指定されたデータのサイズが閾値未満である場合、データ送信通知は外部デバイス20に送信されず、公衆ネットワークを介した無線通信により(つまり、ソーシャルネットワーキングサービス上で)外部デバイス20にデータが送信される。本実施形態においては、このような構成により、データのサイズに応じた適切な無線通信(方式)によりデータを送信することが可能となる。
また、本実施形態においては、外部デバイス20へのデータの送信が完了した場合、公衆ネットワークを介した無線通信により送信完了通知を外部デバイス20に送信することによって、当該外部デバイス20に設定された近接無線通信における受信待機状態を解除することを当該外部デバイス20に対して要求する。本実施形態においては、このような構成により、データの送信が完了した場合には自動的に近接無線通信機能をOFFすることができるため、外部デバイス20における消費電力を低減することができる。
なお、本実施形態においては、近接無線通信を実行する前にデータ送信通知を公衆ネットワークを介した無線通信により外部デバイス20に送信することによって、当該外部デバイス20において近接無線通信機能がONされる場合について主に説明したが、本実施形態は、データを送信することを外部デバイス20に対して事前に通知することによって、例えば通信に関する設定等を外部デバイス20に対して要求する(指示する)ようなものであれば適用可能である。
更に、本実施形態においては近接無線通信(技術)としてTransferJetが用いられるものとして説明したが、当該近接無線通信としては、例えばIrDA(Infrared Data Association)、NFC(Near Field Communication)及びBluetooth等の他の通信技術が用いられても構わない。
また、本実施形態の各種処理は、コンピュータプログラムによって実現することができる。このため、このコンピュータプログラムを格納したコンピュータ読み取り可能な記憶媒体を通じて当該コンピュータプログラムをコンピュータにインストールして実行するだけで、本実施形態と同様の効果を容易に実現することができる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。