(57)【要約】【課題】通信インタフェースの異なる他の通信装置が提供するサービスをあたかも自己のサービスのように見せかえるようにする。【解決手段】本発明に係るサービス提供装置は、自装置と通信可能な周辺機器が提供するサービス情報を記憶する周辺機器管理部１００と、周辺機器が提供するサービスを別種類のサービスに変換するサービス変換部３００と、周辺機器が提供するサービスを自装置が提供するサービスとして見せかけるためのサービス情報を生成するサービス情報生成部２００と、周辺機器との間でＢｌｕｅｔｏｏｔｈの規格で近距離無線通信を行うための通信制御を行うＢｌｕｅｔｏｏｔｈ管理部９００とを備えている。他の機器が提供する各種サービスに関するサービスレコードを生成するため、これらサービスをあたかも自装置が提供するかのように見せかけることができ、本来自装置が提供するサービスよりも広範なサービスを他の機器に対して提供できる。【選択図】  図１
2004272376.tif 000002
【特許請求の範囲】
【請求項１】
通信可能な他の通信装置が提供するサービスに関するサービス情報を記憶するサービス情報記憶手段と、
前記サービス情報記憶手段に記憶したサービス情報に従って、通信可能な他の通信装置が提供するサービスを別種類のサービスに変換するサービス変換手段と、
前記サービス情報記憶手段に記憶したサービス情報に従って、前記サービス変換手段で変換したサービスに対応するサービス情報を生成するサービス情報生成手段と、を備えることを特徴とするサービス提供装置。
【請求項２】
前記サービス情報生成手段は、実際にサービスを行う他の通信装置の識別名称と、サービス種別と、通信チャネル番号と、サービス名とを含むサービス情報を生成することを特徴とする請求項１に記載のサービス提供装置。
【請求項３】
前記サービス情報生成手段は、前記サービス変換手段が行ったサービスの変換についての情報を含むサービス情報を生成することを特徴とする請求項２に記載のサービス提供装置。
【請求項４】
前記サービス情報生成手段は、サービス変換後のサービスを行う必要がないと判断したサービスを除いたサービスについてサービス情報を生成することを特徴とする請求項２または３に記載のサービス提供装置。
【請求項５】
他の通信装置との間の通信に、近接無線通信を行うための近接無線通信手段を備えることを特徴とする請求項１及至４のいずれかに記載のサービス提供装置。
【請求項６】
前記他の通信装置とは異なる通信装置との間の通信で、近接無線通信とは異なる通信を行うための通信手段を備えることを特徴とする請求項５に記載のサービス提供装置。
【請求項７】
前記サービス情報生成手段に対してサービス情報の生成を指示する指示手段をさらに備えることを特徴とする請求項１及至６のいずれかに記載のサービス提供装置。
【請求項８】
複数の通信装置に対してサービスを提供するサーバとの間で通信を行い、該サーバからサービスを受信する通信手段を備え、
前記サービス情報記憶手段は、前記サーバから提供されたサービスに関するサービス情報を記憶することを特徴とする請求項１及至５のいずれかに記載のサービス提供装置。
【請求項９】
前記サービス変換手段は、他の通信装置のそれぞれが提供する少なくとも１以上のサービスを単一のサービスに変換することを特徴とする請求項１及至８のいずれかに記載のサービス提供装置。
【請求項１０】
前記サービス変換手段は、他の通信装置が提供するサービスを、複数の他の通信装置それぞれが提供する少なくとも１以上のサービスを組み合わせて、これらサービスのいずれとも異なる新たなサービスに変換することを特徴とする請求項１及至９のいずれかに記載のサービス提供装置。
【請求項１１】
前記サービス変換手段は、他の通信装置が提供するサービスを複数のサービスに変換することを特徴とする請求項１及至８のいずれかに記載のサービス提供装置。
【請求項１２】
通信可能な他の通信装置が提供するサービスに関するサービス情報を記憶するステップと、
前記記憶されたサービス情報に従って、通信可能な他の通信装置が提供するサービスを別種類のサービスに変換するステップと、
前記記憶されたサービス情報に従って、前記変換したサービスに対応するサービス情報を生成するステップと、を実行させることを特徴とするサービス提供プログラム。
【請求項１３】
通信可能な他の通信装置が提供するサービスに関するサービス情報を記憶し、前記記憶されたサービス情報に従って、通信可能な他の通信装置が提供するサービスを別種類のサービスに変換し、
前記記憶されたサービス情報に従って、前記変換したサービスに対応するサービス情報を生成するステップと、を実行させることを特徴とするサービス提供方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、無線通信により各種サービスを提供可能なサービス提供装置、サービス提供プログラム及びサービス提供方法に関する。
【０００２】
【従来の技術】
Ｂｌｕｅｔｏｏｔｈ（ＴＭ）  ＳＩＧ（Ｓｐｅｃｉａｌ  Ｉｎｔｅｒｅｓｔ  Ｇｒｏｕｐ）によって規格化されているＢｌｕｅｔｏｏｔｈと呼ばれる無線通信方式の仕様（ｈｔｔｐ：／／ｗｗｗ．Ｂｌｕｅｔｏｏｔｈ．ｏｒｇ／より取得可能）では、無線デバイス、通信プロトコル、アプリケーションモデルまでを規定している。アプリケーションモデルの仕様はプロファイルと呼ばれている。プロファイルの例としては、ファイル転送方法を規定したＦｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｆｉｌｅ、電子名刺情報の交換方法を規定した  Ｏｂｊｅｃｔ  Ｐｕｓｈ  Ｐｒｏｆｉｌｅ、写真電子画像の交換方法を規定した  Ｂａｓｉｃ  Ｉｍａｇｉｎｇ  Ｐｒｏｆｉｌｅ、プリントアウトする電子情報をプリンタに送信する方法を規定した  Ｂａｓｉｃ  Ｐｒｉｎｔｉｎｇ  Ｐｒｏｆｉｌｅなどがある。
【０００３】
Ｂｌｕｅｔｏｏｔｈ機器がデータ交換を行う場合、まず、周囲に存在するＢｌｕｅｔｏｏｔｈ機器の発見処理を行う。発見処理により、周囲に存在する機器のデバイスアドレスを取得することができる。Ｂｌｕｅｔｏｏｔｈ機器は、周辺機器を発見すると、周辺機器からサービス情報の取得を行う。サービス情報とは、その機器が提供可能なサービス、すなわち、その機器がサポートしているプロファイル情報であり、そのサービスに接続するためのパラメータが含まれている。
【０００４】
Ｂｌｕｅｔｏｏｔｈ機器は、周辺機器を発見し、サービス情報の取得を行った結果、自装置がサポートしているプロファイルと同一のプロファイルをサポートしていることが判明した機器に接続して情報交換を行うことができる。
【０００５】
Ｂｌｕｅｔｏｏｔｈ機器は、相手機器と接続するために先に述べたサービス情報の取得という処理が重要であるが、この処理は  ＳＤＰ  （Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ  Ｐｒｏｔｏｃｏｌ）  としてＢｌｕｅｔｏｏｔｈ  ＳＩＧにより規定されている。ＳＤＰによる処理は周辺機器と接続するための非常に重要な手順であり、ＳＤＰの処理や相手機器に提供するサービス情報を工夫することで、周辺機器との接続を制御することができる。サービス情報の取得や交換に関する発明のうち、とくにＢｌｕｅｔｏｏｔｈに関連するものとしては、特許文献１及び２に記載されている。
【０００６】
【特許文献１】
特開２００２−１９６９９０公報
【特許文献２】
特開２００２−９９４７３公報
【０００７】
【発明が解決しようとする課題】
Ｂｌｕｅｔｏｏｔｈは、相互接続性を重視する観点から、複数のプロファイルを規定しているが、その弊害として共通のプロファイルをサポートしていない機器同士で接続しても、データの交換を行えないという問題がある。
【０００８】
また、Ｂｌｕｅｔｏｏｔｈ  機器間であれば、同一のプロファイルを使用する限り、相互にデータの交換を行えるが、例えばイーサネット（登録商標）を介してＬＡＮ  に接続された機器のように、Ｂｌｕｅｔｏｏｔｈ  以外のインタフェースを有する機器は一般に  Ｂｌｕｅｔｏｏｔｈ  のプロファイルをサポートしていないため、これらの機器と  Ｂｌｕｅｔｏｏｔｈ  機器との間でデータの交換を行うことは不可能である。
【０００９】
この問題を解決するために、異なるプロファイルを持ち、相互に直接データを交換することが不可能な複数のＢｌｕｅｔｏｏｔｈ機器間、またはＢｌｕｅｔｏｏｔｈ機器と例えばイーサネットのようにＢｌｕｅｔｏｏｔｈ以外のインタフェースをもった機器との間に介在し、各機器が有するサービスを自由に相互利用可能とする装置
を提供することを目的とする。
【００１０】
本発明は、このような点に鑑みてなされたものであり、その目的は、通信インタフェースの異なる他の通信装置が提供するサービスをあたかも自己のサービスのように見せかけるようにしたサービス提供装置、サービス提供プログラム及びサービス提供方法を提供することにある。
【００１１】
【課題を解決するための手段】
上述した課題を解決するために、本発明は、通信可能な他の通信装置が提供するサービスに関するサービス情報を記憶するサービス情報記憶手段と、前記サービス情報記憶手段に記憶されたサービス情報に従って、通信可能な他の通信装置が提供するサービスを別種類のサービスに変換するサービス変換手段と、前記サービス情報記憶手段に記憶したサービス情報に従って、前記サービス変換手段で変換したサービスに対応するサービス情報を生成するサービス情報生成手段と、を備える。
【００１２】
【発明の実施の形態】
以下、本発明に係るサービス提供装置について、図面を参照しながら具体的に説明する。
【００１３】
（第１の実施形態）
図１は本発明に係るサービス提供装置の第１の実施形態の概略構成を示すブロック図である。図１のサービス提供装置は、他の通信装置との間でＢｌｕｅｔｏｏｔｈの通信プロトコルで近距離無線通信を行う。より具体的には、サービス提供装置は、Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｆｉｌｅ（以後、ＦＴＰと表記）、Ｏｂｊｅｃｔ  Ｐｕｓｈ  Ｐｒｏｆｉｌｅ（以後、ＯＰＰと表記）、Ｂａｓｉｃ  Ｉｍａｇｉｎｇ  Ｐｒｏｆｉｌｅ（以後、ＢＩＰと表記）、Ｂａｓｉｃ  Ｐｒｉｎｔｉｎｇ  Ｐｒｏｆｉｌｅ（以後、ＢＰＰと表記）の４つのサービスをサポートしており、それぞれに対応したデータの送受信を行う。
【００１４】
図１のサービス提供装置は、自装置と通信可能な周辺機器が提供するサービス情報を記憶する周辺機器管理部１００と、周辺機器が提供するサービスを別種類のサービスに変換するサービス変換部３００と、周辺機器が提供するサービスを自装置が提供するサービスとして見せかけるためのサービス情報を生成するサービス情報生成部２００と、周辺機器との間でＢｌｕｅｔｏｏｔｈの規格で近距離無線通信を行うための通信制御を行うＢｌｕｅｔｏｏｔｈ管理部９００とを備えている。
【００１５】
Ｂｌｕｅｔｏｏｔｈ管理部９００は、Ｂｌｕｅｔｏｏｔｈプロトコルスタックとして、ＳＤＰ（Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ  Ｐｒｏｔｏｃｏｌ）とＯＢＥＸ（Ｏｂｊｅｃｔ  Ｅｘｃｈａｎｇｅ  Ｐｒｏｔｏｃｏｌ）をサポートする。Ｂｌｕｅｔｏｏｔｈ管理部９００の内部には、ＳＤＰの処理を行うＳＤＰ処理部９０１と、ＳＤＰデータベース９０２と、ＯＢＥＸの処理を行うＯＢＥＸ処理部９０３とが設けられている。
【００１６】
なお、図１では、本発明の特徴的な部分以外の構成要素（例えばＣＰＵ等）は省略している。
【００１７】
周辺機器管理部１００は、Ｂｌｕｅｔｏｏｔｈ管理部９００を利用してＢｌｕｅｔｏｏｔｈの機器発見処理とサービス発見処理を行い、周辺機器がＦＴＰ，ＯＰＰ，ＢＩＰ，ＢＰＰをサポートしていた場合は、それらの全サービス情報を取得して記憶する。サービス情報生成部２００は、周辺機器管理部１００の記憶したサービス情報に基づいて、自装置の提供するサービス情報を生成し、Ｂｌｕｅｔｏｏｔｈ  管理部に登録する。
【００１８】
Ｂｌｕｅｔｏｏｔｈで互いに通信を行う周辺機器（Ｂｌｕｅｔｏｏｔｈ機器）は、各々が提供可能なサービスをサービスレコードとして各機器内のデータベースに登録しており、相手機器からサービス取得要求を受けた場合にサービスレコード情報を提供する。先に述べたサービス発見処理とは、周辺機器に対してサービス取得要求を送り、相手が有するサービスレコードに記載されている情報を取得することを示している。図１では、サービスレコードを登録するデータベースをＳＤＰデータベース９０２と表記している。
【００１９】
図２は、図１のサービス提供装置１と周辺機器１１，１２，１３との通信の様子を示す図である。機器１１，１２，１３はいずれもＢｌｕｅｔｏｏｔｈ機器であり、機器１１はＦＴＰとＯＰＰをサポートしたＰＣ、機器１２はＢＩＰをサポートしたデジタルカメラ、機器１３はＢＰＰをサポートしたプリンタであるとする。
【００２０】
図１の周辺機器管理部１００は、機器発見処理とサービス発見処理を行い、発見した機器情報を内部に記憶する。図２の場合、周辺機器管理部１００は内部に図３に示すサービス情報テーブルを作成する。図３のサービス情報テーブルは、機器名とその機器が有するサービス名（プロファイル名）と、各サービスに接続するためのパラメータであるサーバチャンネルナンバー（ＳＣＮ）と、サービスネーム（ＳＮ）との対応関係を記憶している。
【００２１】
なお、図３のサービス情報テーブルは、機器名としては機器１１、機器１２、機器１３としか表記していないが、これらは機器の識別情報であり、Ｂｌｕｅｔｏｏｔｈ機器の場合はデバイスアドレス、フレンドリーネームも併せて記憶しているものとする。
【００２２】
以下、ＦＴＰの場合を一例とし、サービス情報テーブルの作成に関する具体例を説明する。機器１１はＦＴＰをサポートしていることから、図４に示すサービス情報の内容を電子情報の形式でサービスレコードとして機器１１の内部に登録している。
【００２３】
図４に示すサービス情報は、Ｂｌｕｅｔｏｏｔｈの仕様書におけるサービス記述形式に従っている。図４にＳＣＮの値が２として記述されているが、この値は機器１１内で割り当てられた値である。サービス提供装置１は、サービス発見処理の結果、機器１１からＦＴＰに関する情報を取得することで、図４に記述された全情報を知ることが可能である。
【００２４】
サービス提供装置１は、図４の内容を確認した上で、図３のサービス情報テーブルを作成する。なお、相手機器から取得したサービス情報の中で、ＳＣＮ及びＳＮ以外の情報についてもサービス情報テーブルに記憶してもよい。但し、図４に示したＳＣＮ及びＳＮ以外の値は、機器に依存する値でないため、相手機器から取得しなくても知ることができ、例えば予めデフォルト値として所持することも可能である。
【００２５】
以後、図４に示したサービス情報をＦＴＰ（”Ｏｂｅｘ  Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ”，２）と表記することにする。また、便宜上、図４に対応するサービスレコードもＦＴＰ（”Ｏｂｅｘ  Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ”，２）と表記する。また、サービス提供装置１が機器１１のＦＴＰサービスを検出した場合、「サービス提供装置１１はＦＴＰ（”Ｏｂｅｘ  Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ”，２）を所持している」というような表現を用いる。
【００２６】
周辺機器管理部１００は、自装置の周囲に存在する機器のアドレスや名前などの情報を周辺機器情報として取得し、それらの機器のうち自装置と通信可能なものからサービス情報を取得し、図３に示したサービス情報テーブルが完成すると、サービス情報生成部２００に対してサービス情報取得完了通知を送る。
【００２７】
サービス情報生成部２００は、サービス情報取得完了通知を受け取ると、周辺機器管理部１００のサービス情報テーブルの内容を確認し、その情報を利用して新たなサービスレコードを作成し、作成したサービスレコードを自装置のＳＤＰデータベース９０２に登録する。
【００２８】
以下、サービス情報生成部２００がＳＤＰデータベース９０２に登録するサービスレコードの作成方法を説明する。
【００２９】
＜サービスレコード作成例１＞
サービス情報生成部２００は、サービス情報テーブルに登録されているサービスを自装置のサービスレコードとして登録する。各サービスレコードに記述されるＳＣＮを除くパラメータについては、周辺機器から取得してサービス情報テーブルに記述されている情報をそのまま記述するか、または、デフォルト値として用いられる値を記述する。サービス情報生成部２００は、ＳＣＮについては、Ｂｌｕｅｔｏｏｔｈ管理部９００が設定した値を取得し、取得した値をサービスレコードに記述する。
【００３０】
例えば、サービス情報テーブルが図３の場合、サービス情報生成部２００は、ＦＴＰ（”ＯＢＥＸ  Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ”，１）、ＯＰＰ（”ＯＢＥＸ  Ｏｂｊｅｃｔ  Ｐｕｓｈ”，２）、ＢＩＰ（”ＯＢＥＸ  Ｂａｓｉｃ  Ｉｍａｇｉｎｇ”３）、ＢＰＰ（”ＯＢＥＸ  Ｂａｓｉｃ  Ｐｒｉｎｔｉｎｇ”４）の４つをサービスレコードとしてＢｌｕｅｔｏｏｔｈ管理部９００のＳＤＰデータベース９０２に登録する。ここで、各サービスのＳＣＮの値１，２，３，４はＢｌｕｅｔｏｏｔｈ管理部９００から取得した値である。
【００３１】
その結果、他機器からサービス提供装置１に対してサービス発見処理を行い、サービス情報を取得した場合、サービス提供装置１はサービスとしてＦＴＰ（”ＯＢＥＸ  Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ”，１）、ＯＰＰ（”ＯＢＥＸ  Ｏｂｊｅｃｔ  Ｐｕｓｈ”，２）、ＢＩＰ（”ＯＢＥＸ  Ｂａｓｉｃ  Ｉｍａｇｉｎｇ”３）、ＢＰＰ（”ＯＢＥＸ  Ｂａｓｉｃ  Ｐｒｉｎｔｉｎｇ”４）を所持しているように認識される。
【００３２】
＜サービスレコード作成例２＞
サービスレコード作成例１において、登録する各サービスレコードのＳＮの値をサービス情報生成部２００が独自に作成するとする。例えば、サービス情報生成部２００は、ＦＴＰ（”サービス提供装置１のＦｉｌｅ  Ｔｒａｎｓｆｅｒ”，１）、ＯＰＰ（”  サービス提供装置１の  Ｏｂｊｅｃｔ  Ｐｕｓｈ”，２）、ＢＩＰ（”  サービス提供装置１の  Ｂａｓｉｃ  Ｉｍａｇｉｎｇ”３）、ＢＰＰ（”  サービス提供装置１のＢａｓｉｃ  Ｐｒｉｎｔｉｎｇ”４）の４つをサービスレコードとしてＢｌｕｅｔｏｏｔｈ管理部９００のＳＤＰデータベース９０２に登録する。
【００３３】
その結果、他機器からサービス提供装置１に対しサービス発見処理を行い、サービス情報を取得した場合、サービス提供装置１はサービスとしてＦＴＰ（”  サービス提供装置１の  Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ”，１）、ＯＰＰ（”  サービス提供装置１のＯｂｊｅｃｔ  Ｐｕｓｈ”，２）、ＢＩＰ（”  サービス提供装置１のＢａｓｉｃ  Ｉｍａｇｉｎｇ”，３）、ＢＰＰ（”  サービス提供装置１のＢａｓｉｃ  Ｐｒｉｎｔｉｎｇ”４）を所持しているように認識される。
【００３４】
＜サービスレコード作成例３＞
サービス情報生成部２００は、サービス情報テーブルに登録されている一つのサービスに対し、それを自装置がサポートしている全サービスへ複製および変換作成して登録する。各サービスレコードに登録するＳＣＮは、Ｂｌｕｅｔｏｏｔｈ管理部９００が設定した値を取得し、その値を採用する。ＳＮについてはサービス情報生成部２００が独自に作成する。ＳＣＮ，ＳＮ以外の値はサービス情報生成部２００で設定されているデフォルト値を利用する。
【００３５】
例えば、図３の機器１１のＦＴＰサービスに対して、ＦＴＰ（“ｆｔｐ１”，１）、ＯＰＰ（“ｏｐｐ１”，１）、ＢＩＰ（“ｂｉｐ１”，１）、ＢＰＰ（“ｂｐｐ１”，１）の４つのサービスレコードを複製および変換作成する。機器１１のＯＰＰ，機器１２のＢＩＰ，機器１３のＢＰＰについても同様にそれぞれ４つのサービスレコードを生成する。この場合、例えば、一例として示すが、サービス情報生成部２００は、以下の１６個のサービスレコードをＢｌｕｅｔｏｏｔｈ管理部９００のＳＤＰデータベース９０２に登録することになる。
ＦＴＰ（“ｆｔｐ１”，１）、ＯＰＰ（“ｏｐｐ１”，１）、
ＢＩＰ（“ｂｉｐ１”，１）、ＢＰＰ（“ｂｐｐ１”，１）、
ＦＴＰ（“ｆｔｐ２”，２）、ＯＰＰ（“ｏｐｐ２”，２）、
ＢＩＰ（“ｂｉｐ２”，２）、ＢＰＰ（“ｂｐｐ２”，２）、
ＦＴＰ（“ｆｔｐ３”，３）、ＯＰＰ（“ｏｐｐ３”，３）、
ＢＩＰ（“ｂｉｐ３”，３）、ＢＰＰ（“ｂｐｐ３”，３）、
ＦＴＰ（“ｆｔｐ４”，４）、ＯＰＰ（“ｏｐｐ４”，４）、
ＢＩＰ（“ｂｉｐ４”，４）、ＢＰＰ（“ｂｐｐ４”，４）
【００３６】
その結果、他機器からサービス提供装置１に対しサービス発見処理を行い、サービス情報を取得した場合、サービス提供装置１は合計１６個のサービスを所持しているように認識される。
【００３７】
＜サービスレコード作成例４＞
サービスレコード作成例３において、サービス情報生成部２００は、ＳＮを生成する場合に、対応する機器名を付加する。この場合、例えば、サービス情報生成部２００は、以下の１６個のサービスレコードをＢｌｕｅｔｏｏｔｈ管理部９００のＳＤＰデータベース９０２に登録することになる。
ＦＴＰ（“ｆｔｐ＿機器１１”，１）、ＯＰＰ（“ｏｐｐ＿機器１１”，１）、
ＢＩＰ（“ｂｉｐ＿機器１１”，１）、ＢＰＰ（“ｂｐｐ＿機器１１”，１）、
ＦＴＰ（“ｆｔｐ＿機器１１”，２）、ＯＰＰ（“ｏｐｐ＿機器１１”，２）、
ＢＩＰ（“ｂｉｐ＿機器１１”，２）、ＢＰＰ（“ｂｐｐ＿機器１１”，２）、
ＦＴＰ（“ｆｔｐ＿機器１２”，３）、ＯＰＰ（“ｏｐｐ＿機器１２”，３）、
ＢＩＰ（“ｂｉｐ＿機器１２”，３）、ＢＰＰ（“ｂｐｐ＿機器１２”，３）、
ＦＴＰ（“ｆｔｐ＿機器１３”，４）、ＯＰＰ（“ｏｐｐ＿機器１３”，４）、
ＢＩＰ（“ｂｉｐ＿機器１３”，４）、ＢＰＰ（“ｂｐｐ＿機器１３”，４）
【００３８】
その結果、他機器からサービス提供装置１に対しサービス発見処理を行い、サービス情報を取得した場合、サービス提供装置１は合計１６個のサービスを所持しているように認識される。
【００３９】
＜サービスレコード作成例５＞
上述したサービスレコード作成例３において、サービス情報生成部２００は、ＳＮを生成する場合にサービスの変換情報を付加する。この場合、例えば、サービス情報生成部２００は、以下の１６個のサービスレコードをＢｌｕｅｔｏｏｔｈ管理部９００のＳＤＰデータベース９０２に登録することになる。
ＦＴＰ（“ｆｔｐ→ｆｔｐ”，１）、ＯＰＰ（“ｏｐｐ→ｆｔｐ”，１）、
ＢＩＰ（“ｂｉｐ→ｆｔｐ”，１）、ＢＰＰ（“ｂｐｐ→ｆｔｐ”，１）、
ＦＴＰ（“ｆｔｐ→ｏｐｐ”，２）、ＯＰＰ（“ｏｐｐ→ｏｐｐ”，２）、
ＢＩＰ（“ｂｉｐ→ｏｐｐ”，２）、ＢＰＰ（“ｂｐｐ→ｏｐｐ”，２）、
ＦＴＰ（“ｆｔｐ→ｂｉｐ”，３）、ＯＰＰ（“ｏｐｐ→ｂｉｐ”，３）、
ＢＩＰ（“ｂｉｐ→ｂｉｐ”，３）、ＢＰＰ（“ｂｐｐ→ｂｉｐ”，３）、
ＦＴＰ（“ｆｔｐ→ｂｐｐ”，４）、ＯＰＰ（“ｏｐｐ→ｂｐｐ”，４）、
ＢＩＰ（“ｂｉｐ→ｂｐｐ”，４）、ＢＰＰ（“ｂｐｐ→ｂｐｐ”，４）
【００４０】
その結果、他機器からサービス提供装置１に対しサービス発見処理を行い、サービス情報を取得した場合、サービス提供装置１は合計１６個のサービスを所持しているように認識される。
【００４１】
＜サービスレコード作成例６＞
上述したサービスレコード作成例３において、サービス情報生成部２００は、ＳＮを生成する場合に対応する機器名とサービスの変換情報を付加する。この場合、例えば、サービス情報生成部２００は、以下の１６個のサービスレコードをＢｌｕｅｔｏｏｔｈ管理部９００のＳＤＰデータベース９０２に登録することになる。
ＦＴＰ（“機器１１＿ｆｔｐ→ｆｔｐ”，１）、ＯＰＰ（“機器１１＿ｏｐｐ→ｆｔｐ”，１）、
ＢＩＰ（“機器１１＿ｂｉｐ→ｆｔｐ”，１）、ＢＰＰ（“機器１１＿ｂｐｐ→ｆｔｐ”，１）、
ＦＴＰ（“機器１１＿ｆｔｐ→ｏｐｐ”，２）、ＯＰＰ（“機器１１＿ｏｐｐ→ｏｐｐ”，２）、
ＢＩＰ（“機器１１＿ｂｉｐ→ｏｐｐ”，２）、ＢＰＰ（“機器１１＿ｂｐｐ→ｏｐｐ”，２）、
ＦＴＰ（“機器１２＿ｆｔｐ→ｂｉｐ”，３）、ＯＰＰ（“機器１２＿ｏｐｐ→ｂｉｐ”，３）、
ＢＩＰ（“機器１２＿ｂｉｐ→ｂｉｐ”，３）、ＢＰＰ（“機器１２＿ｂｐｐ→ｂｉｐ”，３）、
ＦＴＰ（“機器１３＿ｆｔｐ→ｂｐｐ”，４）、ＯＰＰ（“機器１３＿ｏｐｐ→ｂｐｐ”，４）、
ＢＩＰ（“機器１３＿ｂｉｐ→ｂｐｐ”，４）、ＢＰＰ（“機器１３＿ｂｐｐ→ｂｐｐ”，４）
【００４２】
その結果、他機器からサービス提供装置１に対しサービス発見処理を行い、サービス情報を取得した場合、サービス提供装置１は合計１６個のサービスを所持しているように認識される。
【００４３】
＜サービスレコード作成例７＞
上述したサービスレコード作成例３に示したように、サービス情報テーブルに登録されている一つのサービスに対し、それを自装置がサポートしている全サービスに複製および変換作成して登録する場合、非常に多くのサービスレコードが登録されることになる。サービスレコード作成例７では、サービスレコード作成例３の方式を拡張し、不必要と判断した登録するサービスレコードは登録しないようにする。
【００４４】
サービス情報生成部２００は、周辺機器管理部１００のサービス情報テーブルを確認し、そこに登録されている機器とサービスの対応関係を考慮し、各機器は対応しているサービスのみサポートし、その他のサービスでサービス提供装置１に対して接続を行うことはないと仮定する。図３の場合、機器１１はＦＴＰとＯＰＰ，機器１２はＢＩＰ，機器１３はＢＰＰのみサポートと仮定し、機器１１がサービス提供装置１に対してＢＩＰやＢＰＰのための接続を行うことはないと仮定する。
【００４５】
例えば、図３の機器１１のＦＴＰサービスに対して、ＦＴＰ（“ｆｔｐ１”，１）、ＯＰＰ（“ｏｐｐ１”，１）、ＢＩＰ（“ｂｉｐ１”，１）、ＢＰＰ（“ｂｐｐ１”，１）の４つのサービスレコードを作成するが、それぞれのサービスレコードは図５に示す手順で登録される。
【００４６】
まず、機器ＡがサービスとしてプロファイルＡをサポートしていることを認識する（ステップＳ１）。ここで、プロファイルＡは、ＦＴＰ，ＯＰＰ，ＢＩＰ，ＢＰＰのいずれかを取りうるとする。
【００４７】
次に、機器Ａ以外にＦＴＰをサポートしている機器が存在するか否かを判断し（ステップＳ２）、存在する場合には、サービスレコードとしてＦＴＰ（”ｆｔｐ  ｎ”，  ｎ）が未登録であれば登録する（ステップＳ３）。
【００４８】
ステップＳ２で存在しないと判断された場合、あるいはステップＳ３の処理が終了した場合には、機器Ａ以外にＯＰＰをサポートしている機器が存在するか否かを判断する（ステップＳ４）。存在する場合には、サービスレコードとしてＯＰＰ（”ｏｐｐ  ｎ”，  ｎ）が未登録であれば登録する（ステップＳ５）。
【００４９】
ステップＳ４で存在しないと判断された場合、あるいはステップＳ５の処理が終了した場合には、機器Ａ以外にＢＩＰをサポートしている機器が存在するか否かを判断する（ステップＳ６）。存在する場合には、サービスレコードとしてＢＩＰ（”ｂｉｐ  ｎ”，  ｎ）が未登録であれば登録する（ステップＳ７）。
【００５０】
ステップＳ６で存在しないと判断された場合、あるいはステップＳ７の処理が終了した場合には、機器Ａ以外にＢＰＰをサポートしている機器が存在するか否かを判断する（ステップＳ８）。存在する場合には、サービスレコードとしてＢＰＰ（”ｂｐｐ  ｎ”，  ｎ）が未登録であれば登録する（ステップＳ９）。
【００５１】
例えば、図５の手順によれば、機器Ａを機器１１、プロファイルＡをＦＴＰ、ｎの値を１とすると、機器１２はＢＩＰ，機器１３はＢＰＰのみをサポートしていることから、サービスレコード作成例３では、ＦＴＰ（“ｆｔｐ１”，１）、ＯＰＰ（“ｏｐｐ１”，１）、ＢＩＰ（“ｂｉｐ１”，１）、ＢＰＰ（“ｂｐｐ１”，１）の４つが登録されるのに対し、本例ではＢＩＰ（“ｂｉｐ１”，１）、ＢＰＰ（“ｂｐｐ１”，１）のみが登録される。同様に、図３にある機器１１のＯＰＰサービスに対して、機器Ａを機器１１、プロファイルＡをＯＰＰ、ｎの値を２とすると、ＢＩＰ（“ｂｉｐ２”，２）、ＢＰＰ（“ｂｐｐ２”，２）のみが登録される。
【００５２】
同様に、図３の機器１２のＢＩＰサービスに対して、機器Ａを機器１２、プロファイルＡをＢＩＰ、ｎの値を３とすると、ＦＴＰ（“機器１２＿ｆｔｐ→ｂｉｐ”，３）、ＯＰＰ（“機器１２＿ｏｐｐ→ｂｉｐ”，３）、ＢＰＰ（“機器１２＿ｂｐｐ→ｂｉｐ”，３）のみが登録される。
【００５３】
同様に、図３にある機器１３のＢＰＰサービスに対して、機器Ａを機器１３、プロファイルＡをＢＰＰ、ｎの値を４とすると、ＦＴＰ（“ｆｔｐ４”，４）、ＯＰＰ（“ｏｐｐ４”，４）、ＢＩＰ（“ｂｉｐ４”，４）のみが登録される。
【００５４】
不要なサービスレコードを登録しないことで、サービスレコード作成例３では１６個のサービスレコードが登録されるのに対し、本例ではサービス情報生成部２００は、以下の１０個のサービスレコードをＢｌｕｅｔｏｏｔｈ管理部９００のＳＤＰデータベース９０２に登録することになる。
ＢＩＰ（“ｂｉｐ１”，１）、ＢＰＰ（“ｂｐｐ１”，１）、
ＢＩＰ（“ｂｉｐ２”，２）、ＢＰＰ（“ｂｐｐ２”，２）、
ＦＴＰ（“ｆｔｐ３”，３）、ＯＰＰ（“ｏｐｐ３”，３）、ＢＰＰ（“ｂｐｐ３”，３）、
ＦＴＰ（“ｆｔｐ４”，４）、ＯＰＰ（“ｏｐｐ４”，４）、ＢＩＰ（“ｂｉｐ４”，４）
【００５５】
その結果、他機器からサービス提供装置１に対しサービス発見処理を行い、サービス情報を取得した場合、サービス提供装置１は合計１０個のサービスを所持しているように認識される。
【００５６】
なお、サービスレコード作成例７においては、サービスレコード作成例３の拡張という形で説明したが、サービスレコード作成例４、サービスレコード作成例５についても同様の拡張により不必要なサービスレコードを登録しないようにすることが可能である。
【００５７】
＜サービスレコード作成例８＞
上述したサービスレコード作成例３に示したように、サービス情報テーブルに登録されている一つのサービスに対し、それを自装置がサポートしている全サービスへ複製および変換作成して登録する場合、非常に多くのサービスレコードが登録されることになる。サービスレコード作成例８では、サービスレコード作成例３の方式を拡張し、不必要と判断したサービスレコードは登録しないようにする。
【００５８】
サービスを提供する機器をサーバ機器、サーバ機器のサービスを利用する機器をクライアント機器と呼ぶとすると、クライアント機器とサーバ機器の両方の機能を備えたＢｌｕｅｔｏｏｔｈ機器だけでなく、どちらか一方の機能のみを備えたＢｌｕｅｔｏｏｔｈ機器も存在する。
【００５９】
また、クライアントとサーバの両機能を備えた機器においても、サーバとして提供するサービスと、クライアントとして利用できるサービスが異なる場合もある。例えば、サーバとしてＦＴＰサービスが提供可能であっても、クライアントとしてはＦＴＰサービスの利用が不可能な機器、または、サーバとしてＦＴＰサービスが提供不可能であってもクライアントとしてはＦＴＰサービスの利用が可能な機器などが存在する可能性がある。
【００６０】
サービス情報生成部２００は、それぞれの周辺機器がクライアントとしてどのようなサービスをサポートしているのかを検出する機能を有する。サービス情報生成部２００は、Ｂｌｕｅｔｏｏｔｈ管理部９００のＳＤＰ処理部９０１が受信した周辺機器からのサービス検索要求の内容を確認する。
【００６１】
例えば、機器Ａから「ＦＴＰとＢＩＰのサービスに対応する情報を取得したい」という内容のサービス検索要求を受信したとすると、サービス情報生成部２００は、機器ＡはクライアントとしてＦＴＰとＢＩＰをサポートしていると判断する。サービス情報生成部２００は、クライアントとして周辺機器がとしてどのようなサービスをサポートしているのかを一定時間検出した結果、クライアントとしてサポートしていないと判断したサービスレコードを削除する。
【００６２】
例えば、サービスレコード作成例３の場合において、プリンタである機器１３からサービス検索要求を受けなかったとすると、機器１３はクライアントとしてＢＰＰをサポートしていないと判断する。サービス情報生成部２００は、不要なサービスレコードを図６に示す手順で削除する。
【００６３】
図６において、まず、各種のフラグＦＴＰＦｌａｇ，ＯＰＰＦｌａｇ，ＢＩＰＦｌａｇ，ＢＰＰＦｌａｇをゼロに初期化する（ステップＳ１１）。次に、サービス検索要求を受信したか否かを判断し（ステップＳ１２）、受信した場合には、サービス検索要求の内容を確認する（ステップＳ１３）。ここでは、ＦＴＰ，ＯＰＰ，ＢＩＰ，ＢＰＰのいずれかのサービス検索要求が含まれている場合には、対応するＦｌａｇを「１」にセットする。
【００６４】
ステップＳ１２で受信しなかった判断された場合、あるいはステップＳ１３の処理が終了した場合には、タイムアウトしたか否かを判断する（ステップＳ１４）。タイムアウトしていない場合はステップＳ１２に戻り、タイムアウトした場合には、ＦＴＰＦｌａｇが「１」か否かを判断し（ステップＳ１５）、「１」の場合には、登録されている全ＦＴＰサービスを削除する（ステップＳ１６）。
【００６５】
ステップＳ１５で「１」でないと判断された場合、あるいはステップＳ１６の処理が終了した場合には、ＯＰＰＦｌａｇが「１」か否かを判断し（ステップＳ１７）、「１」の場合には、登録されている全ＯＰＰサービスを削除する（ステップＳ１８）。
【００６６】
ステップＳ１７で「１」でないと判断された場合、あるいはステップＳ１８の処理が終了した場合には、ＢＩＰＦｌａｇが「１」か否かを判断し（ステップＳ１９）、「１」の場合には、登録されている全ＢＩＰサービスを削除する（ステップＳ２０）。
【００６７】
ステップＳ１９で「１」でないと判断された場合、あるいはステップＳ２０の処理が終了した場合には、ＢＰＰＦｌａｇが「１」か否かを判断し（ステップＳ２１）、「１」の場合には、登録されている全ＢＰＰサービスを削除する（ステップＳ２２）。
【００６８】
このように、不要なサービスレコードを削除することで、サービスレコード作成例３では１６個のサービスレコードが登録されるのに対し、本例では以下の１２個のサービスレコードのみがＢｌｕｅｔｏｏｔｈ管理部９００のＳＤＰデータベース９０２に登録されていることになる。
ＦＴＰ（“ｆｔｐ１”，１）、ＯＰＰ（“ｏｐｐ１”，１）、ＢＩＰ（“ｂｉｐ１”，１）、
ＦＴＰ（“ｆｔｐ２”，２）、ＯＰＰ（“ｏｐｐ２”，２）、ＢＩＰ（“ｂｉｐ２”，２）、
ＦＴＰ（“ｆｔｐ３”，３）、ＯＰＰ（“ｏｐｐ３”，３）、ＢＩＰ（“ｂｉｐ３”，３）、
ＦＴＰ（“ｆｔｐ４”，４）、ＯＰＰ（“ｏｐｐ４”，４）、ＢＩＰ（“ｂｉｐ４”，４）
【００６９】
その結果、他機器からサービス提供装置１に対しサービス発見処理を行い、サービス情報を取得した場合、サービス提供装置１は合計１２個のサービスを所持しているように認識される。
【００７０】
なお、サービスレコード作成例８においては、サービスレコード作成例３の拡張という形で説明したが、サービスレコード作成例４、サービスレコード作成例５についても同様の拡張により不必要なサービスレコードを登録しないようにすることが可能である。
【００７１】
＜サービスレコード作成例９＞
サービスレコード作成例３に示したように、サービス情報テーブルに登録されている一つのサービスに対し、それを自装置がサポートしている全サービスへ変換して登録する場合、非常に多くのサービスレコードが登録されることになる。
【００７２】
サービスレコード作成例９では、サービスレコード作成例３の方式を拡張し、不必要と判断したサービスレコードは登録しないようにする。
【００７３】
サービスレコード作成例６とサービスレコード作成例７で示した方式を組み合わせることで、サービスレコード作成例３では１６個のサービスレコードが登録されるのに対し、本例では以下の７個のサービスレコードのみがＢｌｕｅｔｏｏｔｈ管理部９００のＳＤＰデータベース９０２に登録されていることになる。
ＢＩＰ（“ｂｉｐ１”，１）、
ＢＩＰ（“ｂｉｐ２”，２）、
ＦＴＰ（“ｆｔｐ３”，３）、ＯＰＰ（“ｏｐｐ３”，３）、
ＦＴＰ（“ｆｔｐ４”，４）、ＯＰＰ（“ｏｐｐ４”，４）、ＢＩＰ（“ｂｉｐ４”，４）
【００７４】
その結果、他機器からサービス提供装置１に対しサービス発見処理を行い、サービス情報を取得した場合、サービス提供装置１は合計７個のサービスを所持しているように認識される。
【００７５】
なお、サービスレコード作成例９においては、サービスレコード作成例３の拡張という形で説明したが、サービスレコード作成例４、サービスレコード作成例５についても同様の拡張により不必要なサービスレコードを登録しないようにすることが可能である。
【００７６】
以上に説明したサービスレコード作成例１〜９が、サービス情報生成部２００によるサービスレコードの作成および登録方法の一例である。
【００７７】
サービス情報生成部２００は、サービスレコードの登録または削除を行うたびに、周辺機器管理部１００のサービス情報テーブルを変更する。例えば、サービス情報生成部２００が、サービスレコード作成例３に示したサービスレコードを登録していたとすると、周辺機器管理部１００のサービス情報テーブルは図７のように書き換えられる。また、サービスレコード作成例８の場合であれば、サービス情報テーブルは図８のように書き換えられる。
【００７８】
次に、サービス変換部３００の動作について説明する。サービス情報生成部２００がサービスレコードを登録することで、周辺機器からはサービス提供装置１が種々のサービスを所持しているように見え、それらのサービスを利用するためにサービス提供装置１に対して接続要求を行うことができるようになる。Ｂｌｕｅｔｏｏｔｈ管理部９００は、これらの接続要求を受け入れ、他機器との間でＯＢＥＸのプロトコルに従ったコネクションを設定し、そのＯＢＥＸコネクションによってデータの送受信が可能であるとする。
【００７９】
例えば、サービス提供装置１がサービスレコード作成例８で示したサービス情報を登録していたとすると、機器１１はサービス提供装置１のＦＴＰ（”ｆｔｐ３”，３）サービスを検出し、そのサービスを利用するために接続要求を送信すると、機器１１とサービス提供装置１のＯＢＥＸ処理部９０３の間にＯＢＥＸコネクションが設定される。ＯＢＥＸ処理部９０３は、設定されたコネクションにより受信したデータをサービス変換部３００へ出力する。サービス変換部３００は入力されたデータをファイルとして保存する。Ｂｌｕｅｔｏｏｔｈ管理部９００は機器１１との通信が終了し接続が切断されると、サービス変換部３００に切断されたことを通知する。
【００８０】
サービス変換部３００は切断が通知されると、周辺機器管理部１００のサービス情報テーブルを参照し、ＦＴＰ（”ｆｔｐ３”，３）に対応する機器とサービス（プロファイル）とＳＣＮを確認する。
【００８１】
例えば、図８の場合、対応する機器は機器１２、サービスはＢＩＰ、ＳＣＮは１となる。サービス変換部３００は、これらの相手機器情報をパラメータとしてＢｌｕｅｔｏｏｔｈ管理部９００に機器１２のＢＩＰサービスとの接続要求を行うように指示する。ＯＢＥＸ処理部９０３と機器１２とのＢＩＰサービスのコネクションが設定されると、サービス変換部３００は保存していたファイルをＢＩＰサービスで利用されるフォーマットに変換した後、機器１２へ送信するようにＢｌｕｅｔｏｏｔｈ管理部９００に指示する。
【００８２】
以上に説明したサービス変換部３００の動作例では、機器１１からのデータの受信が完了し、機器１１とのコネクションが切断された後に機器１２や機器１３への接続を開始し、データ転送を行うという動作例を示した。
【００８３】
しかし、サービス提供装置３のＢｌｕｅｔｏｏｔｈ管理部９００が機器１１から接続されている状態において、別の機器である機器１２や機器１３への接続が可能であるなら、機器１１からの切断を待つことなく別機器との接続を行っても良い。
【００８４】
周辺機器ごとに、サポートするサービス（プロファイル）が異なる場合には、各周辺機器間で直接データ交換を行うことが不可能であるが、本実施形態で示したサービス提供装置１を用いることで、直接データ交換を行うことが不可能な機器間でのデータ交換を行うことができる。
【００８５】
図１のサービス提供装置は、周辺機器管理部１００が機器発見処理とサービス発見処理を予め行い、サービス情報テーブルの内容が適切に設定されていることを前提とした。実際には、機器発見処理とサービス発見処理は、さまざまな方法によって起動することができ、これによりサービス情報テーブルを適切な状態に設定することができる。
【００８６】
例えば、図９は図１の構成にアプリケーション部１０００を追加したものであり、サービス情報の収集をユーザの指示によって行えるようにしている。図９のアプリケーション部１０００はユーザからの操作が可能なインタフェースを備えており、ユーザからの周辺機器の探索の指示を受け付け、指示があると周辺機器管理部１００に対して周辺機器の探索及びサービス情報の取得を命令する。
【００８７】
サービス情報の収集は、タイマーにより自動的に行うことが可能である。この場合のサービス提供装置の構成は図１０のようになる。図１０のサービス提供装置は、図１の構成にタイマー部４００を追加したものである。タイマー部４００は予め設定された時間が経過するごとに周辺機器管理部１００に対して周辺機器の探索及びサービス情報の取得を命令する。
【００８８】
サービス発見処理は、他の機器からの要求によっても起動可能である。周囲の  Ｂｌｕｅｔｏｏｔｈ機器からの要求によって収集する場合の構成は図１と同様である。この場合は、周囲の  Ｂｌｕｅｔｏｏｔｈ  機器が  Ｂｌｕｅｔｏｏｔｈ  管理部に接続し、サービス情報更新要求を送信する。
【００８９】
Ｂｌｕｅｔｏｏｔｈ  管理部９００は、受信した更新要求を周辺機器管理部１００に通知する。周辺機器管理部１００は、更新要求を受け取ると、  Ｂｌｕｅｔｏｏｔｈ  管理部９００に周辺機器の探索およびサービス情報の取得を命令する。このとき、サービス情報テーブルに以前と同様の指示を受けた時刻を記憶しておき、その時刻から予め定めた期間が経過していないときは、周辺機器管理部１００は、周辺機器の探索およびサービス情報の取得を行わずに、以前に取得しておいた情報を代わりに用いる。
【００９０】
また、イーサネットなどの他のインタフェースを経由してサービス発見処理の起動要求を受け取ることもできる。この場合の本発明のサービス提供装置の構成は図１１のようになる。
【００９１】
図１１では、図１に新たにネットワーク管理部５００を追加している。ネットワーク管理部５００は、インターネットを介して接続された外部の機器から起動要求を受け取ると、その要求を周辺機器管理部１００に通知する。以後の処理は周囲の  Ｂｌｕｅｔｏｏｔｈ  機器から要求を受けた場合と同様である。
【００９２】
収集要求の受け取り方は、例えばネットワーク管理部５００において  Ｗｅｂ  サーバを動作させておき、ＨＴＴＰ  プロトコルに則ったリクエストとして行うことができる。この場合、収集された情報は、上記リクエストに対するレスポンスとして、たとえば  ｈｔｍｌ  形式のデータでネットワーク管理部を介してリクエストを行った機器へと返送される。
【００９３】
サービス情報の収集は、周辺機器から何らかの要求があったことをきっかけとして行ってもよい。例えば、Ｂｌｕｅｔｏｏｔｈ  管理部９００が、他の機器が機器発見処理を行っていることを  ＩＮＱＵＩＲＹ  メッセージを受信して知った場合には、Ｂｌｕｅｔｏｏｔｈ  管理部９００から周辺機器管理部１００にイベントを発行し、このイベントを受けた周辺機器管理部１００が  Ｂｌｕｅｔｏｏｔｈ  管理部９００に周辺機器の探索およびサービス情報の収集を指示する。
【００９４】
ＩＮＱＵＩＲＹ  メッセージを発行して機器発見処理を行っている機器はこれまで周囲にいなかった新しい機器である可能性が高いので  、ＩＮＱＵＩＲＹ  メッセージを受けたときにサービス情報の収集処理を起動すると、新しく来た機器の発見やサービス情報の取得を速やかに行える可能性が高くなる。
【００９５】
また、ＩＮＱＵＩＲＹ  メッセージではなく、周囲の  Ｂｌｕｅｔｏｏｔｈ  機器から自装置に対してサービス発見手順ＳＤＰ  （Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ  Ｐｒｏｔｏｃｏｌ）のコネクションが張られたときにその機器のみのサービス情報の取得、またはその機器を含めたすべての機器の発見とサービス情報の取得を行うようにしてもよい。
【００９６】
この場合は、サービス発見手順においてどのような種別のサービスに関する情報が要求されたかの情報を  Ｂｌｕｅｔｏｏｔｈ  管理部９００から周辺機器管理部１００に伝えることにより、周辺機器管理部がより適切な指示を  Ｂｌｕｅｔｏｏｔｈ  管理部に出すことが可能となる。
【００９７】
例えば、周辺機器が  ＦＴＰ  のサービスに関する情報を要求してきた場合には、周辺機器管理部１００は、ＦＴＰ  および自装置のサービス変換部３００により  ＦＴＰに変換することが可能なプロファイルに関するサービス情報のみを取得するよう  Ｂｌｕｅｔｏｏｔｈ  管理部９００に指示を出すことができる。特に必要のない、他のプロファイルに関する情報を収集しないので、処理の効率が向上する。
【００９８】
また、どのような種別のサービスに関する情報が要求されたかの情報は、＜サービスレコード作成例７＞において説明したようにＢｌｕｅｔｏｏｔｈ  管理部に登録するサービスレコードを限定するためにも用いることができる。
【００９９】
以上に説明したサービス情報の収集手順は、複数を組み合わせて使うことも可能である。例えば、普段はタイマーによって定期的にサービス情報収集処理が起動され周辺機器管理部の保持するテーブルが自動的に更新されるが、アプリケーション部１０００を介してユーザからの要求があったときにもサービス情報収集処理が起動され、これにより前記テーブルを強制的に更新させるといったことが可能である。
【０１００】
このように、第１の実施形態では、他の機器が提供する各種サービスに関するサービスレコードを生成するため、これらサービスをあたかも自装置が提供するかのように見せかけることができ、本来自装置が提供するサービスよりも広範なサービスを他の機器に対して提供できる。
【０１０１】
また、Ｂｌｕｅｔｏｏｔｈ機器間の通信では、各機器がサポートするサービス（プロファイル）が異なると、各機器間で直接データ交換を行うことが不可能であるが、第１の実施形態で示したサービス提供装置１を用いることで、直接データ交換を行うことが不可能な機器間でのデータ交換が可能になる。
【０１０２】
（第２の実施形態）
第２の実施形態のサービス提供装置は、周囲のＢｌｕｅｔｏｏｔｈ機器が提供するサービスだけでなく、ファイルサーバやＷｅｂサーバが管理するサービスも自己のサービスとして見せかけて提供するものである。
【０１０３】
第１の実施形態では、周囲のＢｌｕｅｔｏｏｔｈ  機器の持つサービスを、サービス変換部３００で変換して得られるサービスを自装置の提供するサービスとしてＢｌｕｅｔｏｏｔｈ管理部９００に登録したが、このように変換されてＢｌｕｅｔｏｏｔｈ管理部に登録されるサービスは必ずしも周囲の  Ｂｌｕｅｔｏｏｔｈ  機器が提供するものに限らない。
【０１０４】
第２の実施形態のサービス情報生成部２００は、Ｂｌｕｅｔｏｏｔｈ  以外の通信インタフェースを介して利用可能なサービスも自装置の提供するサービスとして  Ｂｌｕｅｔｏｏｔｈ  管理部９００に登録することが可能である。
【０１０５】
第２の実施形態のサービス提供装置は図１１と同様に構成されている。周辺機器管理部１００は、ネットワーク管理部５００を介して、Ｂｌｕｅｔｏｏｔｈ  以外の通信インタフェースを介して利用可能なサービスを調べ、サービス情報テーブルに登録する。
【０１０６】
通信インタフェースとして、例えばイーサネットを用いてインターネットに接続する。このとき利用可能なサービスとしては、電子メールの送受信、ファイルサーバを介したファイルの共有、Ｗｅｂ  サーバとの間のデータのダウンロードおよびアップロードなどが挙げられる。周辺機器管理部１００は、これらのサービスをサービス情報テーブルに格納する。
【０１０７】
図１２はサービス提供装置とファイルサーバとがイーサネットに接続されている例を示すネットワーク配置図、図１３は図１２のように配置された場合のサービス情報テーブルの一例を示す図である。図１２では、Ｂｌｕｅｔｏｏｔｈ機器である機器１１および機器１２と、イーサネットに接続されたファイルサーバである機器２１が本発明のサービス提供装置１と通信可能である。
【０１０８】
図１３のサービス情報テーブルは、第１の実施形態において説明に用いた図３のテーブルとほぼ同様であるが、サービスの種別が  Ｂｌｕｅｔｏｏｔｈ  のプロファイルに限らないこと、サービスを利用するためのパラメータがサーバチャネル番号に限らないことなどが異なるため、テーブルの構成を若干変更している。
【０１０９】
図１２の例では、イーサネットを介して  ＬＡＮ  側から利用可能なサービスとして、ファイル共有サービスであるＮＦＳ（Ｎｅｔｗｏｒｋ  Ｆｉｌｅ  Ｓｙｓｔｅｍ）が利用可能であり、そのパラメータとして共有されるフォルダへのパスが記述されている。これらのサービスは、サービス情報生成部において  Ｂｌｕｅｔｏｏｔｈ  のプロファイルへと変換されて、Ｂｌｕｅｔｏｏｔｈ  管理部９００に登録される。
【０１１０】
例えば、ファイルの共有サービスであればＢｌｕｅｔｏｏｔｈ  のプロファイルである  ＦＴＰ  として登録される。変換された後のサービスレコードの作成方法は、第１の実施形態において説明したのと同様である。
【０１１１】
このとき、第１の実施形態においてサービスネームに付加したサービスの変換情報は、ＮＦＳ  から  ＦＴＰ  に変換されたことを示すものであり、例えば、第１の実施形態における＜サービスレコード作成例４＞では“ｆｔｐ→ＮＦＳ”  のようになり、＜サービスレコード作成例５＞では  “機器２１＿ｆｔｐ→ＮＦＳ”  のようになる。
【０１１２】
Ｂｌｕｅｔｏｏｔｈ  のサービスとして登録されるサービスの種別は、必ずしもネットワーク管理部５００を介して利用可能なサービスの種別と直接関連するものでなくてもよい。
【０１１３】
例えば、メール送信サービスを本来はファイルやフォルダを扱うプロファイルである  ＦＴＰ  として登録することも可能である。この場合は、ＦＴＰ  に従って周囲の  Ｂｌｕｅｔｏｏｔｈ機器から  Ｂｌｕｅｔｏｏｔｈ管理部９００へ送信されたファイルがサービス変換部によりネットワーク管理部９００を介してインターネット上の他の機器へメールとして送信される。
【０１１４】
複数のあて先が考えられる場合は、どのあて先に向けてメールが送信されるかは、複数の宛先のそれぞれに対応するＦＴＰ  サービスをそれぞれ登録してもよいし、単一のＦＴＰ  サービスにおいてどのフォルダの中にファイルが格納されたかによって区別してもよい。
【０１１５】
また、Ｗｅｂ  サーバへのアップロードサービスを  Ｂｌｕｅｔｏｏｔｈ  の  Ｉｍａｇｉｎｇ  Ｐｒｏｆｉｌｅ  サービスとして登録することもできる。このときは、周囲の  Ｂｌｕｅｔｏｏｔｈ  機器から  Ｉｍａｇｉｎｇ  Ｐｒｏｆｉｌｅ  に従って送信された画像データがネットワーク管理部を介して  Ｗｅｂ  サーバにアップロードされ、例えば他の機器からブラウザなどのソフトウェアを用いてその画像データを見ることができる。
【０１１６】
このように、第２の実施形態では、周囲のＢｌｕｅｔｏｏｔｈ機器だけでなく、ファイルサーバやＷｅｂサーバが提供する各種サービスも自己のサービスとして見せかけて提供できるため、第１の実施形態よりもさらに広範なサービス提供が行える。
【０１１７】
（第３の実施形態）
第３の実施形態は、周囲の複数の機器が提供する各サービスをまとめて単一のサービスとして周囲の他の機器に提供するものである。
【０１１８】
第３の実施形態のサービス提供装置のブロック構成は図１と同じであるが、周辺機器管理部１００、サービス情報生成部２００及びサービス変換部３００の処理内容が図１の装置と異なっている。
【０１１９】
図１４は、第３の実施形態のサービス提供装置５と周辺機器１１，１２，１３との通信の様子を示す図である。機器１１，１２，１３はそれぞれＢｌｕｅｔｏｏｔｈ機器であり、第１の実施形態と同様に、例えば、機器１１はＦＴＰとＯＰＰをサポートしたＰＣ、機器１２はＢＩＰをサポートしたデジタルカメラ、機器１３はＢＰＰをサポートしたプリンタである。
【０１２０】
周辺機器管理部１００は、定期的に機器発見処理とサービス発見処理を行い、発見した機器情報を内部に記憶する。サービス提供装置５内の周辺機器管理部１００は、第１の実施形態と同様に、図３に示すサービス情報テーブルを作成する。
【０１２１】
なお、本実施形態では、サービス情報やサービスレコードの表記方法を第１の実施形態と同様にする。
【０１２２】
周辺機器管理部１００は、周辺機器情報を取得し、周囲に存在するすべての通信可能な機器からサービス情報を取得し、図３に示したサービス情報テーブルが完成すると、サービス情報生成部２００に対してサービス情報取得完了通知を送る。サービス情報生成部２００は、サービス情報取得完了通知を受け取ると、新たなサービスレコードを作成し、作成したサービスレコードを自装置のＳＤＰデータベース９０２に登録する。
【０１２３】
サービス情報生成部２００は、ＦＴＰサービスのサービスレコードを一つ作成してＳＤＰデータベース９０２に登録する。サービスレコードに登録するＳＣＮは、Ｂｌｕｅｔｏｏｔｈ管理部９００より設定可能かつその値を利用することで他機器と通信可能となるＳＣＮの値を取得し、その値を採用する。ＳＮについてはサービス情報生成部２００が独自に作成する。ＳＣＮ，ＳＮ以外の値はサービス情報生成部２００で設定されているデフォルト値を利用する。例えば、サービス情報生成部２００が作成して登録するサービスレコードは、ＦＴＰ（“サービス提供装置５の複合サービス”，１）となる。
【０１２４】
図１５は第３の実施形態のサービス提供装置５のサービス情報テーブルの一例を示す図である。図示のように、図１５のテーブルは、図３のテーブルに変換サービスの項目を追加したものである。図１５のテーブルでは、変換サービスの項目のそれぞれにＦＴＰ（“サービス提供装置５の複合サービス”，１）が記述されている。これらはすべて同一のものを参照するために複数の項目に記述したものであり、実際にＳＤＰデータベース９０２に登録されているサービスレコードは一つである。
【０１２５】
次に、サービス変換部３００の動作について説明する。サービス情報生成部２００がサービスレコードを登録することで、周辺機器からはサービス提供装置５がＦＴＰ（“サービス提供装置５の複合サービス”，５）という一つのサービスを所持しているように見え、そのＦＴＰサービスを利用するためにサービス提供装置５に対して接続要求を行うことができる。Ｂｌｕｅｔｏｏｔｈ管理部９００は、これらの接続要求を受け入れ、他機器との間でＯＢＥＸのプロトコルに従ったコネクションを設定し、そのＯＢＥＸコネクションによってＦＴＰに従ったデータの送受信が可能となる。
【０１２６】
例えば、機器１１はサービス提供装置５のＦＴＰ（“サービス提供装置５の複合サービス”，５）サービスを検出し、そのサービスを利用するために接続要求を送信すると、機器１１とサービス提供装置５のＯＢＥＸ処理部９０３の間にＦＴＰ用のＯＢＥＸコネクションが設定される。
【０１２７】
ＦＴＰ用のＯＢＥＸコネクションでは、フォルダやファイルの送受信が可能であることから、サービス提供装置１１はサービス提供装置５に対してフォルダやファイルの送信を試みることが可能である。
【０１２８】
このとき、サービス提供装置１１からは、サービス提供装置５がＦＴＰ（“サービス提供装置５の複合サービス”，５）という一つのサービスのみを提供しているように見えるため、たとえばサービス提供装置５を経由してサービス提供装置１２にファイルを送りたい場合と、サービス提供装置５を経由してサービス提供装置１３にファイルを送りたい場合との区別をつけるための工夫が必要となる。これは、送信したいファイルを格納したフォルダの名前に、ファイルの宛先となる機器の名前などの情報を含めることでなされる。これについて以下に説明する。
【０１２９】
ＯＢＥＸ処理部９０３は、設定されたコネクションにより受信したデータをすべてサービス変換部３００へ出力する。サービス変換部３００は入力されたデータの種類、つまり、機器１１が送信したデータ（ファイルやフォルダ）に応じて、以下の処理を行う。
【０１３０】
＜機器１１がフォルダ名に一つの機器名が含まれるフォルダを一つ送信した場合＞
機器名を含めるフォルダ名の書式を“Ｔｏ＿機器名”とする。例えば、フォルダ名が“Ｔｏ＿機器１２”というフォルダを機器１１がサービス提供装置５へ送信したとすると、ＯＢＥＸ処理部９０３は、機器１１からＯＢＥＸプロトコルの命令要求として、ＳｅｔＰａｔｈ要求を受信する。このＳｅｔＰａｔｈ要求には“Ｔｏ＿機器１２”という情報が含まれている。
【０１３１】
サービス変換部３００は、ＯＢＥＸ処理部９０３からＳｅｔＰａｔｈ要求が入力されると、フォルダ名の書式を調べ、“Ｔｏ＿機器名”であった場合は、フォルダ名から機器名情報を検出する。機器名情報を検出すると、周辺機器管理部１００のサービス情報テーブルを確認し、検出した機器名に対応するサービス（プロファイル）を調べる。
【０１３２】
例えば、サービス情報テーブルが図３の場合は、対応する機器１２がＢＩＰをサポートしていることがわかる。対応する機器とプロファイルの情報がサービス情報テーブルに存在することを確認すると、サービス変換部３００は、内部に“Ｔｏ＿機器１２”というフォルダを作成し、以後ＯＢＥＸ処理部９０３が受信しサービス変換部３００へ出力したデータを作成したフォルダの下に記憶する。一方、サービス情報テーブルに機器名が検出できなかった場合、サービス変換部３００は受信拒否をＯＢＥＸ処理部９０３へ通知する。
【０１３３】
また、サービス情報テーブルに機器名が存在したとしても、その機器がサポートしているプロファイルがサービス提供装置５のサポートしているプロファイル（本実施形態ではＦＴＰ，ＯＰＰ，ＢＩＰ，ＢＰＰとする）のいずれでもない場合は、サービス変換部３００は受信拒否をＯＢＥＸ処理部９０３へ通知する。ＯＢＥＸ処理部９０３は受信拒否がサービス変換部３００から通知されると、相手機器に対してエラーを通知する。
【０１３４】
Ｂｌｕｅｔｏｏｔｈ管理部９００は機器１１との通信が終了し接続が切断されるとサービス変換部３００に切断されたことを通知する。
【０１３５】
サービス変換部３００は切断が通知されると、フォルダ（本例においてはＴｏ＿機器１２”）を作成し、フォルダ下に機器１１から受信したデータを記憶していた場合、Ｂｌｕｅｔｏｏｔｈ管理部９００に、フォルダ名に含まれている機器１２のＢＩＰサービスとの接続要求を行うように指示する。
【０１３６】
ここで、サービス変換部３００は、機器１２との接続パラメータは、周辺機器管理部１００のサービス情報テーブルを参照し取得するとする。ＯＢＥＸ処理部９０３と機器１２とのＢＩＰサービスのコネクションが設定されると、サービス変換部３００は記憶していたデータをＢＩＰサービスで利用されるフォーマットに変換した後、機器１２への送信をＢｌｕｅｔｏｏｔｈ管理部９００に指示する。
【０１３７】
＜機器１１がフォルダ名に複数の機器名が含まれるフォルダを一つ送信した場合＞
機器名を含めるフォルダ名の書式を“Ｔｏ＿機器名＿機器名”とする。例えば、フォルダ名が“Ｔｏ＿機器１２＿機器１３”というフォルダを機器１１がサービス提供装置５へ送信したとすると、ＯＢＥＸ処理部９０３は、機器１１からＯＢＥＸプロトコルの命令要求として、ＳｅｔＰａｔｈ要求を受信する。このＳｅｔＰａｔｈ要求には“Ｔｏ＿機器１２＿機器１３”という情報が含まれている。
【０１３８】
サービス変換部３００は、ＯＢＥＸ処理部９０３からＳｅｔＰａｔｈ要求が入力されると、フォルダ名の書式を調べ、“Ｔｏ＿機器名＿機器名”であった場合は、フォルダ名から機器名情報を検出する。機器名情報を検出すると、周辺機器管理部１００のサービス情報テーブルを確認し、検出した機器名に対応するサービス（プロファイル）を調べる。
【０１３９】
例えば、サービス情報テーブルが図３の場合は、対応する機器１２がＢＩＰをサポートしており、また、機器１３がＢＰＰをサポートしていることがわかる。対応する機器とプロファイルの情報がサービス情報テーブルに存在することを確認すると、サービス変換部３００は、内部に“Ｔｏ＿機器１２＿機器１３”というフォルダを作成し以後ＯＢＥＸ処理部９０３が受信しサービス変換部３００へ出力したデータを作成したフォルダの下に記憶する。
【０１４０】
一方、サービス情報テーブルに機器１２と機器１３の両機器とも対応する機器名が検出できなかった場合、サービス変換部３００は受信拒否をＯＢＥＸ処理部９０３へ通知する。
【０１４１】
また、サービス情報テーブルに機器１２、機器１３の機器名が存在したとしても、両機器ともサポートしているプロファイルがサービス提供装置５のサポートしているプロファイル（本実施形態ではＦＴＰ，ＯＰＰ，ＢＩＰ，ＢＰＰとする）のいずれでもない場合は、サービス変換部３００は受信拒否をＯＢＥＸ処理部９０３へ通知する。ＯＢＥＸ処理部９０３は受信拒否がサービス変換部３００から通知されると、相手機器に対してエラーを通知する。
【０１４２】
Ｂｌｕｅｔｏｏｔｈ管理部９００は機器１１との通信が終了し接続が切断されるとサービス変換部３００に切断されたことを通知する。サービス変換部３００は切断が通知されると、フォルダ（本例においてはＴｏ＿機器１２＿機器１３”）を作成し、フォルダ下に機器１１から受信したデータを記憶していた場合、Ｂｌｕｅｔｏｏｔｈ管理部９００に、フォルダ名に含まれている機器１２のＢＩＰサービス、および機器１３のＢＰＰサービスそれぞれに対して接続要求を行うように指示する。
【０１４３】
ここで、サービス変換部３００は、機器１２および機器１３との接続パラメータは、周辺機器管理部１００のサービス情報テーブルを参照して取得するとする。ＯＢＥＸ処理部９０３と機器１２とのＢＩＰサービスのコネクションが設定されると、サービス変換部３００は記憶していたデータをＢＩＰサービスで利用されるフォーマットに変換した後、機器１２への送信をＢｌｕｅｔｏｏｔｈ管理部９００に指示する。ＯＢＥＸ処理部９０３と機器１３とのＢＰＰサービスのコネクションが設定されると、サービス変換部３００は記憶していたデータをＢＰＰサービスで利用されるフォーマットに変換した後、機器１３への送信をＢｌｕｅｔｏｏｔｈ管理部９００に指示する。
【０１４４】
＜機器１１がフォルダ名に異なる機器名が一つ含まれるフォルダを複数送信した場合＞
機器名を含めるフォルダ名の書式を“Ｔｏ＿機器名”とする。例えば、フォルダ名が“Ｔｏ＿機器１２”というフォルダと“Ｔｏ＿機器１３”というフォルダを機器１１がサービス提供装置５へ送信したとする。
【０１４５】
この場合、ＯＢＥＸ処理部９０３は最初に“Ｔｏ＿機器１２”という情報が含まれたＳｅｔＰａｔｈ要求を受信する。サービス変換部３００は、ＯＢＥＸ処理部９０３からＳｅｔＰａｔｈ要求が入力されると、フォルダ名の書式を調べ、フォルダ名から機器名情報“機器１２”を検出する。機器名情報を検出すると、周辺機器管理部１００のサービス情報テーブルを確認し、“機器１２”に対応するサービス（プロファイル）を調べる。
【０１４６】
例えば、サービス情報テーブルが図３の場合は、機器１２がＢＩＰをサポートしていることがわかる。機器１２のプロファイルの情報（この場合はＢＩＰ）がサービス情報テーブルに存在することを確認すると、サービス変換部３００は内部に“Ｔｏ＿機器１２”というフォルダを作成する。以後、ＯＢＥＸ処理部９０３が受信したデータはサービス変換部３００へと出力されるが、機器１１が送信したフォルダ名“Ｔｏ＿機器１２”に含まれる全ファイルは、サービス変換部３００が作成した“Ｔｏ＿機器１２”に保存されるとする。
【０１４７】
機器１１からフォルダ“Ｔｏ＿機器１２”の送信が完了すると、ＯＢＥＸ処理部９０３は次に“Ｔｏ＿機器１３”という情報が含まれたＳｅｔＰａｔｈ要求を受信する。
【０１４８】
サービス変換部３００は、ＯＢＥＸ処理部９０３からＳｅｔＰａｔｈ要求が入力されると、フォルダ名の書式を調べ、フォルダ名から機器名情報“機器１３”を検出する。機器名情報を検出すると、周辺機器管理部１００のサービス情報テーブルを確認し、“機器１３”に対応するサービス（プロファイル）を調べる。
【０１４９】
例えば、サービス情報テーブルが図３の場合は、機器１３がＢＰＰをサポートしていることがわかる。機器１３のプロファイルの情報（この場合はＢＰＰ）がサービス情報テーブルに存在することを確認すると、サービス変換部３００は内部に“Ｔｏ＿機器１３”というフォルダを作成する。以後、ＯＢＥＸ処理部９０３が受信したデータはサービス変換部３００へと出力されるが、機器１１が送信したフォルダ名“Ｔｏ＿機器１３”に含まれる全ファイルは、サービス変換部３００が作成した“Ｔｏ＿機器１３”に保存されるとする。
【０１５０】
なお、サービス情報テーブルに機器名が検出できなかった場合、サービス変換部３００は受信拒否をＯＢＥＸ処理部９０３へ通知する。また、サービス情報テーブルに機器名が存在したとしても、その機器がサポートしているプロファイルがサービス提供装置５のサポートしているプロファイル（本実施形態ではＦＴＰ，ＯＰＰ，ＢＩＰ，ＢＰＰとする）のいずれでもない場合は、サービス変換部３００は受信拒否をＯＢＥＸ処理部９０３へ通知する。
【０１５１】
ＯＢＥＸ処理部９０３は受信拒否がサービス変換部３００から通知されると、相手機器に対してエラーを通知する。例えば、機器１２、機器１３ともにサービス情報テーブルで検出できなかったとすると、フォルダ“Ｔｏ＿機器１２”とフォルダ“Ｔｏ＿機器１３”に含まれるファイルなどのデータは、サービス変換部３００には全く保存されない。また、例えば、機器１２はサービス情報テーブルで検出できなかったが、機器１３は検出できた場合は、フォルダ“Ｔｏ＿機器１３”に含まれるファイルなどのデータは、サービス変換部３００に保存されるが、フォルダ“Ｔｏ＿機器１２”に含まれるファイルなどのデータは、サービス変換部３００には保存されない。
【０１５２】
Ｂｌｕｅｔｏｏｔｈ管理部９００は機器１１との通信が終了し接続が切断されるとサービス変換部３００に切断されたことを通知する。
【０１５３】
サービス変換部３００は切断が通知されると、内部に作成しているフォルダを確認する。“Ｔｏ＿機器１２”というフォルダを作成していた場合、Ｂｌｕｅｔｏｏｔｈ管理部９００を利用して機器１２のＢＩＰサービスに対して接続要求を行う。
【０１５４】
また、“Ｔｏ＿機器１３”というフォルダを作成していた場合、Ｂｌｕｅｔｏｏｔｈ管理部９００を利用して機器１３のＢＰＰサーに対して接続要求を行う。ＯＢＥＸ処理部９０３と機器１２とのＢＩＰサービスのコネクションが設定されると、サービス変換部３００は記憶していたデータをＢＩＰサービスで利用されるフォーマットに変換した後、機器１２へ送信する。ＯＢＥＸ処理部９０３と機器１３とのＢＰＰサービスのコネクションが設定されると、サービス変換部３００は記憶していたデータをＢＰＰサービスで利用されるフォーマットに変換した後、機器１３へ送信する。
【０１５５】
以上のサービス変換部３００の動作例では、機器１１からのデータの受信が完了し、機器１１とのコネクションが切断された後に機器１２や機器１３への接続を開始し、データ転送を行うという動作例を示した。しかし、サービス提供装置４のＢｌｕｅｔｏｏｔｈ管理部９００が機器１１から接続されている状態において、別の機器である機器１２や機器１３への接続が可能であるなら、機器１１からの切断を待つことなく別機器との接続を行っても良い。
【０１５６】
上述した第１の実施形態のサービス提供装置１によれば、サービス種別（プロファイル）の異なる機器間でのデータ交換も可能になるが、サービス提供装置１を介してＮ台の機器へデータを送信する場合には、サービス提供装置１とＮ回コネクションを設定し、データを繰り返し送信する必要がある。
【０１５７】
これに対して、第３の実施形態で示したサービス提供装置５では、サービス提供装置５を介してＮ台の機器へデータを送信する場合にも、サービス提供装置５と一つのコネクションを設定するだけでＮ台に自動的にデータを送信でき、サービス提供装置１を用いる場合よりも効率的なデータ交換が可能となる。
【０１５８】
（第４の実施形態）
第４の実施形態は、複数の機器が提供するそれぞれ種類の異なる複数のサービスを組み合わせることにより、そのいずれとも異なる新たな種別のサービスを提供するものである。
【０１５９】
周辺機器管理部の記憶するサービス情報テーブルに  Ｂａｓｉｃ  Ｉｍａｇｉｎｇ  Ｐｒｏｆｉｌｅ  をサポートし静止画像を映し出すことができる第一のＢｌｕｅｔｏｏｔｈ  機器と、Ｈｅａｄｓｅｔ  Ｐｒｏｆｉｌｅ  をサポートし、音声を出力できる第二の  Ｂｌｕｅｔｏｏｔｈ  機器があった場合、サービス情報生成部はこれらを組み合わせたサービスをＢｌｕｅｔｏｏｔｈ  における  ＡＶ（Ａｕｄｉｏ／Ｖｉｄｅｏ）  Ｐｒｏｆｉｌｅ  として  Ｂｌｕｅｔｏｏｔｈ  管理部に登録する。この場合も、第１の実施形態において説明したのと同様に、サービス情報生成部はサービスネームにサービスの変換情報を付加することができる。たとえば、第１の実施形態における＜サービスレコード作成例４＞ではサービスネームは  “ＢＩＰ＋Ｈｅａｄｓｅｔ  →  ＡＶ”  としてＡＶ（“ＢＩＰ＋Ｈｅａｄｓｅｔ  →  ＡＶ”）  というようなサービスレコードを  Ｂｌｕｅｔｏｏｔｈ  管理部に登録する。
【０１６０】
図１６は、本実施の形態におけるサービス情報テーブルの例である。この例においては、機器１１はＨｅａｄｓｅｔ  Ｐｒｏｆｉｌｅ  のサービスを、機器１２は  Ｂａｓｉｃ  Ｉｍａｇｉｎｇ  Ｐｒｏｆｉｌｅ  のサービスをそれぞれ提供している。本実施の形態においては、これらを組み合わせることにより新たに  ＡＶ  Ｐｒｏｆｉｌｅ  のサービスが生成され他の機器に対して提供される。機器１１の持つサービスもしくは機器１２の持つサービスのいずれかのみではＡＶ  Ｐｒｏｆｉｌｅ  のサービスを生成することができないので、サービスを組み合わせる相手の機器を記憶する必要がある。このために、サービスを組み合わる相手機器を記載するフィールドを新たに設けた点が、図７や図８に示したサービス情報テーブルと異なっている。
【０１６１】
機器１２の持つ  Ｂａｓｉｃ  Ｉｍａｇｉｎｇ  Ｐｒｏｆｉｌｅ  のサービスは、Ｈｅａｄｓｅｔ  Ｐｒｏｆｉｌｅと組み合わせて  ＡＶ  Ｐｒｏｆｉｌｅ  として提供する他にも、これまでの実施の形態において説明してきたのと同様に、他の機器のサービスと組み合わせることなく単独で  ＦＴＰ，  ＯＰＰ  などのサービスに変換して提供することができる。このようなサービスもテーブルに併せて記載する。なお、プロファイルによってはサーバチャネル番号を必要としないものもあるので、そのようなプロファイルに対してはサーバチャネル番号の項目は空白としている。
【０１６２】
ＡＶ  Ｐｒｏｆｉｌｅ  をサポートしビデオ画像の出力を希望する第三のＢｌｕｅｔｏｏｔｈ  機器は、Ｂｌｕｅｔｏｏｔｈ  管理部９００に登録されたＡＶ  Ｐｒｏｆｉｌｅ  サービスに対して画像および音声を送出する。Ｂｌｕｅｔｏｏｔｈ  管理部９００は、これを受信すると画像と音声を分割し、画像は第一の  Ｂｌｕｅｔｏｏｔｈ  機器へ、音声は第二の  Ｂｌｕｅｔｏｏｔｈ  機器へ出力する。このとき、ＡＶ  Ｐｒｏｆｉｌｅ  では動画像がサポートされているが、Ｉｍａｇｉｎｇ  Ｐｒｏｆｉｌｅ  では静止画像のみをサポートしているので、サービス変換部において動画像から静止画像へ、たとえばコマ落としなどによる変換処理を行う。
【０１６３】
サービスを組み合わせる相手は、Ｂｌｕｅｔｏｏｔｈ  機器に限定されるものではない。例えば、周辺機器管理部１００の記憶するサービス情報テーブルに  Ｂｌｕｅｔｏｏｔｈ  ヘッドセット機器と、ＬＡＮ  で接続されたプロジェクタ機器が登録されている場合、サービス変換部はこれらを組み合わせたサービスを  Ｂｌｕｅｔｏｏｔｈ  ＡＶ  Ｐｒｏｆｉｌｅ  として  Ｂｌｕｅｔｏｏｔｈ  管理部９００に登録することができる。これにより、音声の出力、画像の出力というそれぞれ単一の機能しか持たず単独ではビデオ信号の出力ができない２つの機器を組み合わせて、一つの  Ｂｌｕｅｔｏｏｔｈ  ＡＶ  Ｐｒｏｆｉｌｅ  に準拠した機器として見せることができ、Ｂｌｕｅｔｏｏｔｈ  ＡＶ  Ｐｒｏｆｉｌｅ  に準拠した他の機器からビデオ信号の出力が可能となる。
【０１６４】
このように、第４の実施形態では、複数の機器がそれぞれ提供するサービスを組み合わせて、新規なサービスを生成して提供するため、個々のサービスよりも付加価値の高いサービスを提供できる。
【０１６５】
（第５の実施形態）
第５の実施形態は、周辺機器が提供する単一のサービスを、複数のサービスとして周囲の他の機器に提供するものである。単一のサービスを直接利用できない  Ｂｌｕｅｔｏｏｔｈ  機器が、本発明の通信機器の提供する複数のサービスを組み合わせて利用することにより、前記単一のサービスを利用することができるようになる。
【０１６６】
本実施形態における機器の構成は第２の実施形態における図１１と同様である。ネットワーク管理部５００を介してインターネットにメールを送信することが可能である場合、サービス変換部３００はこれを  Ｂｌｕｅｔｏｏｔｈ  におけるＯｂｊｅｃｔ  Ｐｕｓｈ  Ｐｒｏｆｉｌｅ  と  Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｆｉｌｅ  の２つのプロファイルに分割して  Ｂｌｕｅｔｏｏｔｈ  管理部に登録する。周囲の  Ｂｌｕｅｔｏｏｔｈ  機器は、メールのあて先情報を  ｖＣａｒｄ  に記載して  Ｏｂｊｅｃｔ  Ｐｕｓｈ  Ｐｒｏｆｉｌｅ  に従って送り、同時にメールの本文をファイルとして送信すると、メールがインターネットを介して送信される。
【０１６７】
このようにサービスを分割したときは、登録するサービスの名称をＯｂｊｅｃｔ  Ｐｕｓｈ  Ｐｒｏｆｉｌｅ  については  “メール（アドレス）”  、Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｆｉｌｅ  については  “メール（本文）”  とするなど、相互の対応がわかりやすいものにしておくことが望ましい。このとき、サービス情報生成部によって  Ｂｌｕｅｔｏｏｔｈ  管理部に登録されるサービスレコードは、たとえば  ＯＰＰ（“メール送信（アドレス）”，１）  と  ＦＴＰ（“メール送信（本文）”，２）  のようになる。
【０１６８】
メールを送ろうとする  Ｂｌｕｅｔｏｏｔｈ  機器は、サービスレコードに記載のサービスネームから、これらがメールの送信サービスに対応するものであることを知り、これらの２つのサービスのそれぞれに対してコネクションを張り、ＯＰＰ  に対してはメールアドレスを記載した  ｖＣａｒｄ  を、ＦＴＰ  に対してはメールの本文をそれぞれ送信する。これらのデータはＢｌｕｅｔｏｏｔｈ管理部９００によって受信されて、サービス変換部３００に格納される。受信が完了し前記のコネクションが両方とも切断されたことが  Ｂｌｕｅｔｏｏｔｈ  管理部９００によって検出されサービス変換部３００に通知されると、サービス変換部３００は格納したメールアドレスと本文とを組み合わせ、ネットワーク管理部５００を介して宛先へと送信する。
【０１６９】
このように、第５の実施形態では、周辺機器が提供する単一のサービスを複数のサービスとして他の機器に提供できるため、そのままでは単一のサービスを利用できない他の機器が、複数のサービスに分けて提供を受けることにより、結果的に元の単一のサービスを受けられるようになる。これにより、プロファイル等の異なる種々のサービスの提供を受けられるようになる。
【０１７０】
上述した実施形態で説明したサービス提供装置は、ハードウェアで構成してもよいし、ソフトウェアで構成してもよい。ソフトウェアで構成する場合には、サービス提供装置の少なくとも一部の機能を実現するプログラムをフロッピーディスクやＣＤ−ＲＯＭ等の記録媒体に収納し、コンピュータに読み込ませて実行させてもよい。記録媒体は、磁気ディスクや光ディスク等の携帯可能なものに限定されず、ハードディスク装置やメモリなどの固定型の記録媒体でもよい。
【０１７１】
また、サービス提供装置の少なくとも一部の機能を実現するプログラムを、インターネット等の通信回線（無線通信も含む）を介して頒布してもよい。さらに、同プログラムを暗号化したり、変調をかけたり、圧縮した状態で、インターネット等の有線回線や無線回線を介して、あるいは記録媒体に収納して頒布してもよい。
【０１７２】
【発明の効果】
以上詳細に説明したように、本発明によれば、周辺機器が提供するサービスも、自己のサービスと同様に提供できるため、サービス種別が異なる各種サービスを提供でき、サービスの利用価値が高まる。
【０１７３】
また、他の通信装置がサポートするサービス（プロファイル）が異なると、各通信装置間で直接データ交換を行うことが不可能であるが、本発明によれば、直接データ交換を行うことが不可能な通信装置間でのデータ交換が可能になる。
【図面の簡単な説明】
【図１】本発明に係るサービス提供装置の第１の実施形態の概略構成を示すブロック図。
【図２】図１のサービス提供装置１と周辺機器１１，１２，１３との通信の様子を示す図。
【図３】サービス情報テーブルの一例を示す図。
【図４】サービス情報の一例を示す図。
【図５】サービスレコードの登録手順の一例を示すフローチャート。
【図６】サービスレコードの削除手順の一例を示すフローチャート。
【図７】サービス情報テーブルの一例を示す図。
【図８】サービス情報テーブルの一例を示す図。
【図９】図１の構成にアプリケーション部を追加したサービス提供装置のブロック図。
【図１０】図１の構成にタイマーを追加したサービス提供装置のブロック図。
【図１１】図１の構成にネットワーク管理部を追加したサービス提供装置のブロック図。
【図１２】サービス提供装置とファイルサーバとがイーサネットに接続されている例を示すネットワーク配置図。
【図１３】図１２のように配置された場合のサービス情報テーブルの一例を示す図。
【図１４】第３の実施形態のサービス提供装置５と周辺機器１１，１２，１３との通信の様子を示す図。
【図１５】第３の実施形態のサービス提供装置５のサービス情報テーブルの一例を示す図。
【図１６】本実施の形態におけるサービス情報テーブルの例を示す図。
【符号の説明】
１００  周辺機器管理部
２００  サービス情報生成部
３００  サービス変換部
４００  タイマー部
５００  ネットワーク管理部
９００  Ｂｌｕｅｔｏｏｔｈ管理部
９０１  ＳＤＰ処理部
９０２  ＳＤＰデータベース
９０３  ＯＢＥＸ処理部
１０００  アプリケーション部
【図１】
2004272376.tif 000003
【図２】
2004272376.tif 000004
【図３】
2004272376.tif 000005
【図４】
2004272376.tif 000006
【図５】
2004272376.tif 000007
【図６】
2004272376.tif 000008
【図７】
2004272376.tif 000009
【図８】
2004272376.tif 000010
【図９】
2004272376.tif 000011
【図１０】
2004272376.tif 000012
【図１１】
2004272376.tif 000013
【図１２】
2004272376.tif 000014
【図１３】
2004272376.tif 000015
【図１４】
2004272376.tif 000016
【図１５】
2004272376.tif 000017
【図１６】
2004272376.tif 000018