JP2016212596A - 端末と周辺機器との間でピアツーピア通信を確立する方法及びシステム - Google Patents
端末と周辺機器との間でピアツーピア通信を確立する方法及びシステム Download PDFInfo
- Publication number
- JP2016212596A JP2016212596A JP2015095163A JP2015095163A JP2016212596A JP 2016212596 A JP2016212596 A JP 2016212596A JP 2015095163 A JP2015095163 A JP 2015095163A JP 2015095163 A JP2015095163 A JP 2015095163A JP 2016212596 A JP2016212596 A JP 2016212596A
- Authority
- JP
- Japan
- Prior art keywords
- terminal
- transfer protocol
- peer
- peripheral device
- management server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Computer And Data Communications (AREA)
- Stored Programmes (AREA)
- Telephonic Communication Services (AREA)
Abstract
【課題】ユーザ操作の負担無しに、端末と周辺機器との間におけるピアツーピア通信を確立することができる方法及びシステムを提供する。【解決手段】システムは、ユーザによって所持される端末及び周辺機器と、ネットワークを介して通信可能なアプリケーション配信サーバ及び機器管理サーバとを有する。端末が、アプリケーション配信サーバとの間でHTTPを介して、周辺機器の機器情報に対応したアプリケーションを取得する。次に、端末が、アプリケーションを実行し、周辺機器に対応するセッション情報を生成する。次に、端末が、WebSocketを介して機器管理サーバへセッション情報を送信し、機器管理サーバが、WebSocketを介して周辺機器へセッション情報を転送する。そして、端末と周辺機器との間で直接的に、WebSocketを介したピアツーピア通信を確立する。【選択図】図2
Description
本発明は、端末間でピアツーピア(Peer-to-Peer)通信を確立する技術に関する。
近年、スマートフォンやタブレットのような、ユーザの操作対象となるインターネットに接続する端末とは別に、IoT(Internet of Things)と称される「モノのインターネット」が普及してきている。ユーザの操作対象とならない「モノ」が自発的に、インターネットに接続し、データを送受信する技術をいう。この技術によって、インターネットに接続する周辺機器が急速に増加し、その数は2020年には500億個に達すると考えられている。周辺機器としては、ウェアブルデバイスや環境センサ等、様々「モノ」が通信対象となる。
周辺機器は、一般的に、ローカルネットワーク(例えば無線LAN)や近距離無線通信(例えばBluetooth(登録商標))を介して、ユーザの操作対象の端末や、外部のインターネットに接続することができる。例えばスマートフォンやタブレットのような端末は、IoT用の周辺機器から情報を取得したり、リモコンのように制御したりすることができる。
従来、一方の装置が、1つの統合プログラムをダウンロードすることによって、他方の装置との間で連携して通信する技術がある(例えば特許文献1参照)。この技術によれば、一方の装置は、統合プログラム内のアプリケーションをインストールして起動し、他方の装置の検索要求を送信する。これに対し、他方の装置が応答することによって、一方の装置は、他方の装置に対して、一方の装置のアプリケーションの記憶場所を表すURL(Uniform Resource Locator)を送信する。他方の装置は、受信したURLへ向けてアクセスし、一方の装置のアプリケーションを取得する。他方の装置は、取得したアプリケーションをインストールして起動することによって、一方の装置との間で通信することができる。
スマートフォンのような端末には、一般的にWebブラウザがインストールされている。Webブラウザは、一般的にクライアントソフトウェアであって、ネットワークを介したサーバとの通信によって取得したコンテンツ(テキスト、音声、画像、映像等)を、ユーザに再生することができる。そのために、Webブラウザを用いて、端末間で、ピアツーピア型で通信することはない。端末間でピアツーピア通信を確立する場合、一般に、Webブラウザとは別に、専用通信アプリケーションをインストールする必要がある。
また、別の問題として、同一機種の周辺機器であっても、内蔵される通信インタフェースチップのバージョンによっては、端末にインストールすべきアプリケーションが異なる場合もある。その場合、端末自体が、周辺機器毎にバージョンを管理すると共に、バージョン毎に異なるアプリケーションを予めインストールしておかなければならない。IoT用の周辺機器に内蔵された膨大な種類の通信インタフェースチップ毎に、専用のアプリケーションをインストールしておくことは、ユーザ操作に更なる負担となる。
そこで、本発明は、ユーザ操作の負担無しに、端末と周辺機器との間におけるピアツーピア通信を確立することができる方法及びシステムを提供することを目的とする。
本発明によれば、ユーザによって所持される端末及び周辺機器と、ネットワークを介して通信可能なアプリケーション配信サーバ及び機器管理サーバとを有するシステムについて、端末−周辺機器間のピアツーピア(Peer-to-Peer)通信確立方法であって、
端末及び機器管理サーバは、要求応答型の第1の転送プロトコルと、ソケット型の第2の転送プロトコルを実装しており、
端末が、アプリケーション配信サーバとの間で第1の転送プロトコルを介して、周辺機器の機器情報に対応したアプリケーションを取得する第1のステップと、
端末が、アプリケーションを実行し、周辺機器に対応するセッション情報を生成する第2のステップと、
端末が、第2の転送プロトコルを介して機器管理サーバへセッション情報を送信し、機器管理サーバが、第2の転送プロトコルを介して周辺機器へセッション情報を転送する第3のステップと、
端末と周辺機器との間で直接的に、第2の転送プロトコルを介したピアツーピア通信を確立する第4のステップと
を有することを特徴とする。
端末及び機器管理サーバは、要求応答型の第1の転送プロトコルと、ソケット型の第2の転送プロトコルを実装しており、
端末が、アプリケーション配信サーバとの間で第1の転送プロトコルを介して、周辺機器の機器情報に対応したアプリケーションを取得する第1のステップと、
端末が、アプリケーションを実行し、周辺機器に対応するセッション情報を生成する第2のステップと、
端末が、第2の転送プロトコルを介して機器管理サーバへセッション情報を送信し、機器管理サーバが、第2の転送プロトコルを介して周辺機器へセッション情報を転送する第3のステップと、
端末と周辺機器との間で直接的に、第2の転送プロトコルを介したピアツーピア通信を確立する第4のステップと
を有することを特徴とする。
本発明のピアツーピア通信確立方法における他の実施形態によれば、
第1のステップの前段で、端末が、機器管理サーバとの間で第1の転送プロトコルを介して、周辺機器の識別情報に対応した機器情報を取得することも好ましい。
第1のステップの前段で、端末が、機器管理サーバとの間で第1の転送プロトコルを介して、周辺機器の識別情報に対応した機器情報を取得することも好ましい。
本発明のピアツーピア通信確立方法における他の実施形態によれば、
端末は、周辺機器から識別情報を読み取ることができ、
周辺機器は、端末によって識別情報が読み取られた際に、機器管理サーバに対して第2の転送プロトコルを確立し、
第3のステップについて、機器管理サーバは、端末から受信したセッション情報が、既に第2の転送プロトコルを確立している周辺機器と一致するか否かを判定し、一致した場合にのみ、セッション情報を周辺機器へ転送する
ことも好ましい。
端末は、周辺機器から識別情報を読み取ることができ、
周辺機器は、端末によって識別情報が読み取られた際に、機器管理サーバに対して第2の転送プロトコルを確立し、
第3のステップについて、機器管理サーバは、端末から受信したセッション情報が、既に第2の転送プロトコルを確立している周辺機器と一致するか否かを判定し、一致した場合にのみ、セッション情報を周辺機器へ転送する
ことも好ましい。
本発明のピアツーピア通信確立方法における他の実施形態によれば、
端末は、周辺機器から近距離無線通信を介して、識別情報を読み取り、
周辺機器は、端末から近距離無線通信を介して、識別情報が読み取られたことを認識することも好ましい。
端末は、周辺機器から近距離無線通信を介して、識別情報を読み取り、
周辺機器は、端末から近距離無線通信を介して、識別情報が読み取られたことを認識することも好ましい。
本発明のピアツーピア通信確立方法における他の実施形態によれば、
端末は、Webブラウザを実装しており、
第1の転送プロトコルは、HTTP(HyperText Transfer Protocol)であり、
第2の転送プロトコルは、WebSocketであり、
ピアツーピア通信は、WebRTC(Web Real-Time Communication)である
ことも好ましい。
端末は、Webブラウザを実装しており、
第1の転送プロトコルは、HTTP(HyperText Transfer Protocol)であり、
第2の転送プロトコルは、WebSocketであり、
ピアツーピア通信は、WebRTC(Web Real-Time Communication)である
ことも好ましい。
本発明のピアツーピア通信確立方法における他の実施形態によれば、
第4のステップについて、
端末は、機器管理サーバへ向けて確立していた第2の転送プロトコルを周辺機器へ向けて切り換え、
周辺機器は、機器管理サーバへ向けて確立していた第2の転送プロトコルを周辺機器へ向けて切り換え、
ピアツーピア通信は、ローカルネットワークを介して第2の転送プロトコルによって直接的に確立されることも好ましい。
第4のステップについて、
端末は、機器管理サーバへ向けて確立していた第2の転送プロトコルを周辺機器へ向けて切り換え、
周辺機器は、機器管理サーバへ向けて確立していた第2の転送プロトコルを周辺機器へ向けて切り換え、
ピアツーピア通信は、ローカルネットワークを介して第2の転送プロトコルによって直接的に確立されることも好ましい。
本発明によれば、ユーザによって所持される端末及び周辺機器と、ネットワークを介して通信可能なアプリケーション配信サーバ及び機器管理サーバとを有し、端末−周辺機器間のピアツーピア通信を確立するシステムであって、
端末は、
機器管理サーバ及びアプリケーション配信サーバとの間で、第1の転送プロトコルを確立する第1の転送プロトコル確立手段と、
機器管理サーバとの間で、第2の転送プロトコルを確立する第2の転送プロトコル確立手段と、
第1の転送プロトコルを介して、周辺機器の機器情報に対応したアプリケーションを取得するアプリケーション取得手段と、
アプリケーションを実行し、周辺機器に対応するセッション情報を生成するアプリケーション実行手段と、
第2の転送プロトコルを介して、機器管理サーバへセッション情報を送信するセッション確立要求手段と、
周辺機器との間で直接的に、第2の転送プロトコルを介したピアツーピア通信を確立するピアツーピア通信確立手段と
を有し、
機器管理サーバは、
端末との間で、第1の転送プロトコルを確立する第1の転送プロトコル確立手段と、
端末との間で、及び、周辺機器との間で、第2の転送プロトコルを確立する第2の転送プロトコル確立手段と、
第2の転送プロトコルを介して端末から受信したセッション情報を、第2の転送プロトコルを介して周辺機器へ転送するセッション情報転送手段と
を有し、
周辺機器は、
機器管理サーバとの間で、第2の転送プロトコルを確立する第2の転送プロトコル確立手段と、
第2の転送プロトコルを介して端末から受信したセッション情報に基づいて、周辺機器との間で直接的に、第2の転送プロトコルを介したピアツーピア通信を確立するピアツーピア通信確立手段と
を有することを特徴とする。
端末は、
機器管理サーバ及びアプリケーション配信サーバとの間で、第1の転送プロトコルを確立する第1の転送プロトコル確立手段と、
機器管理サーバとの間で、第2の転送プロトコルを確立する第2の転送プロトコル確立手段と、
第1の転送プロトコルを介して、周辺機器の機器情報に対応したアプリケーションを取得するアプリケーション取得手段と、
アプリケーションを実行し、周辺機器に対応するセッション情報を生成するアプリケーション実行手段と、
第2の転送プロトコルを介して、機器管理サーバへセッション情報を送信するセッション確立要求手段と、
周辺機器との間で直接的に、第2の転送プロトコルを介したピアツーピア通信を確立するピアツーピア通信確立手段と
を有し、
機器管理サーバは、
端末との間で、第1の転送プロトコルを確立する第1の転送プロトコル確立手段と、
端末との間で、及び、周辺機器との間で、第2の転送プロトコルを確立する第2の転送プロトコル確立手段と、
第2の転送プロトコルを介して端末から受信したセッション情報を、第2の転送プロトコルを介して周辺機器へ転送するセッション情報転送手段と
を有し、
周辺機器は、
機器管理サーバとの間で、第2の転送プロトコルを確立する第2の転送プロトコル確立手段と、
第2の転送プロトコルを介して端末から受信したセッション情報に基づいて、周辺機器との間で直接的に、第2の転送プロトコルを介したピアツーピア通信を確立するピアツーピア通信確立手段と
を有することを特徴とする。
本発明のピアツーピア通信確立方法及びシステムによれば、ユーザ操作の負担無しに、端末と周辺機器との間におけるピアツーピア通信を確立することができる。
以下では、本発明の実施の形態について、図面を用いて詳細に説明する。
図1は、本発明におけるシステム構成図である。
図1によれば、端末1は、スマートフォンやタブレットのようなクライアントであって、Webブラウザを予めインストールしたものである。Webブラウザとしては、例えばInternet Explorer(登録商標)やChrome(登録商標)、Firefox(登録商標)のような一般的なものである。また、周辺機器2は、IoT用の機器であって、例えば環境センサやウェアブルデバイスのようなものである。端末1及び周辺機器2は、無線LAN(Local Area Network)や近距離無線に限られず、有線LANや、広域ネットワークに直接的に接続するものであってもよい。
本発明によれば、端末1と周辺機器2との間で、ピアツーピア(Peer-to-Peer)通信を確立しようとする。ここで、ピアツーピア通信を確立するために、周辺機器の専用プログラムをインストールすることなく、Webブラウザ間でコンテンツを送受信する技術がある。
この技術は、「WebRTC(Web Real-Time Communication)」として規格化されている。WebRTCは、W3C(World Wide Web Consortium)によって規格化されたリアルタイムコミュニケーション用のAPI(Application Programming Interface)である。これは、Webブラウザにプラグイン無しで、端末や周辺機器が、Webブラウザを用いてチャットルーム用のURLにアクセスするだけで、Webブラウザ間でピアツーピア通信を確立することできる。
端末1及び周辺機器2は、LANや近距離無線のアクセスポイント又はルータに接続することによって、アクセスネットワークを介してインターネットに接続することができる。図1によれば、端末1及び周辺機器2は、インターネットに接続されたアプリケーション配信サーバ3及び機器管理サーバ4と通信することができる。尚、端末1と周辺機器2とは、同一のアクセスネットワークに接続する必要はなく、異なるアクセスネットワークに接続するものであってもよい。端末1は、携帯電話網を介してインターネットに接続し、周辺機器2は、無線LANを介してインターネットに接続するものであってもよい。
アプリケーション配信サーバ3は、周辺機器2の識別情報又は機器情報に対応付けて、アプリケーションを予め蓄積している。このアプリケーションは、周辺機器2に対してピアツーピア通信を確立するためのセッション情報を生成するものである。アプリケーションは、Webブラウザで実行可能なプログラムコードであって、例えばHTMLファイル、CSSファイル、JaveScript(登録商標)ファイルの形式のものである。アプリケーション配信サーバ3は、端末1から識別情報又は機器情報を受信し、これに対し、当該識別情報又は機器情報に対応するアプリケーションを端末1へ返信する。
機器管理サーバ4は、端末1と周辺機器2との間でピアツーピア通信のセッションを確立する機能を有する。ここで、機器管理サーバ4は、SIP(Session Initiation Protocol)サーバとして機能するものであってもよい。また、機器管理サーバ4は、周辺機器2の識別情報に対応付けて、機器情報を予め蓄積する機能も有する。機器管理サーバ4は、端末1から識別情報を受信し、これに対し、当該識別情報に対応する機器情報を端末1へ返信する。
図2は、本発明におけるシーケンス図である。
(ステップS01)最初に、端末1は、周辺機器2から近距離無線通信を介して、識別情報を読み取る。このとき、周辺機器2も、端末1から近距離無線通信を介して、識別情報が読み取られたことを認識する。「識別情報」としては、周辺機器の固有の識別子であって、例えば当該周辺機器に対応する機器管理サーバ4のURLであってもよい。図1によれば、周辺機器2には、例えば以下の識別情報が付与されているとする。
http://example.org/deviceA/#0001
http://example.org/deviceA/#0001
近距離無線通信とは、例えばNFC(Near Field Communication)や、Felica、Bluetoothのような規格に対応したものであってもよい。ユーザが、端末1を、周辺機器2にかざすことによって、識別情報を受信することができる。この場合、端末1は、リーダとして機能し、周辺機器2はカードエミュレーションとして機能する。勿論、識別情報がQRコード(登録商標)であってもよいが、周辺機器2は、端末1から識別情報が読み取られたことを認識する必要がある。また、ユーザ自ら、端末1に周辺機器2の識別情報を入力すると共に、周辺機器2に対して識別情報を読み取った旨の操作をするものであってもよい。
また、周辺機器2が、Bluetoothの近距離無線通信機能を搭載している場合、識別情報を含むアドバタイズ信号を、定期的に報知しているものであってもよい。この場合、端末1は、周辺機器2のアドバタイズ信号を受信することによって、その識別情報を知ることができる。端末1が、アドバタイズ信号に応答することによって、周辺機器2も、端末1から識別情報が読み取られたと認識することができる。
(ステップS02)周辺機器2は、端末1によって識別情報が読み取られた際に、アクセスネットワーク及びインターネットを介して機器管理サーバ4に対して、ソケット型の第2の転送プロトコルのセッションを確立する。このプロトコルとしては、例えば「WebSocket」がある。
このとき、機器管理サーバ4は、周辺機器2との間でWebSocketが確立した場合に、その周辺機器2が「active状態」であることを記録する。即ち、機器管理サーバ4は、「active状態」にある周辺機器2に対してのみ、端末1から要求されたセッションを確立する。
「WebSocket」とは、WebブラウザからWebサーバに対してソケット型のコネクションを確立し、全てのデータをコネクション上の専用のプロトコルで通信する。HTTPのように新たなTCPコネクションを張る必要がない軽量プロトコルであって、同一サーバに接続する他のアプリケーションへの影響が少ない。また、WebSocektは、HTTPのように、サーバからクライアントに対してデータをプッシュ配信することができないという、プロトコル上の制約もない。
(ステップS03)端末1は、周辺機器2から識別情報を読み取った際に、アクセスネットワーク及びインターネットを介して機器管理サーバ4に対して、要求−応答型の第1の転送プロトコルのセッションを確立する。このプロトコルとしては、例えばHTTP(HyperText Transfer Protocol)がある。
「HTTP」とは、WebブラウザからWebサーバへアクセスし、HTML(Hyper Text Markup Language)によって記述されたページを送受信するためのプロトコルをいう。これは、要求−応答型のプロトコルであって、ステートレス(前回の状態を保持しない)によってシンプルなプログラムを実現することができる。
端末1は、HTTPを介して機器管理サーバ4のURLへ向けて、「識別情報」を含むGETリクエストを送信する。これに対し、機器管理サーバ4は、識別情報に対応する周辺機器の「機器情報」を、端末1へ返信する。機器情報は、図1のように例えばJSON(JavaScript Object Notation)形式で表現されたものであってもよい。機器情報には、例えば以下のような要素情報が含まれる。
"id":識別子
"name":名称
"maker":製造者情報
"version":バージョン情報
"interface":インタフェース情報
"id":識別子
"name":名称
"maker":製造者情報
"version":バージョン情報
"interface":インタフェース情報
また、機器管理サーバ4は、周辺機器2との間でWebSocketが確立した場合に、その周辺機器2が「active状態」であることを記録しているとする。これによって、機器管理サーバ4は、端末1から受信した識別情報に基づいて、その機器情報を検索した際に、検索された機器情報の周辺機器2が「active状態」(WebSocketが確立している)の場合にのみ、その機器情報を端末1へ返信する。逆に、機器管理サーバ4は、WebSocketを確立していない周辺機器2の機器情報を、端末1へ返信しない。これによって、端末1は、機器管理サーバ4から機器情報が返信された場合、その周辺機器2は「active状態」であると認識することができる。
(ステップS1)
端末1は、アプリケーション配信サーバ3との間でHTTP(第1の転送プロトコル)を介して、機器情報に対応したアプリケーションを取得する。端末1は、HTTPを介してアプリケーション配信サーバ3のURLへ向けて、識別情報又は機器情報を含むGETリクエストを送信する。これに対し、アプリケーション配信サーバ3は、識別情報又は機器情報に対応する周辺機器の「アプリケーション」を、端末1へ返信する。
端末1は、アプリケーション配信サーバ3との間でHTTP(第1の転送プロトコル)を介して、機器情報に対応したアプリケーションを取得する。端末1は、HTTPを介してアプリケーション配信サーバ3のURLへ向けて、識別情報又は機器情報を含むGETリクエストを送信する。これに対し、アプリケーション配信サーバ3は、識別情報又は機器情報に対応する周辺機器の「アプリケーション」を、端末1へ返信する。
ここで、アプリケーション配信サーバ3は、識別情報又は機器情報に対応する1つのアプリケーションのみでなく、複数のアプリケーション識別子のリストを、端末1へ返信するものであってもよい。その場合、端末1は、ユーザ操作に応じて又は所定条件で自動的に、いずれか1つのアプリケーション識別子を選択する。端末1は、選択されたアプリケーション識別子を、改めて、アプリケーション配信サーバ3へ送信する。これに対して、アプリケーション配信サーバ3は、要求されたアプリケーション識別子に対応するアプリケーションを、端末1へ送信する。
(ステップS2)
端末1は、アプリケーションを実行し、周辺機器2に対応するセッション情報を生成する。この「セッション情報」は、端末1が、周辺機器2との間でピアツーピア通信(WebRTC)の確立に必要な情報である。セッション情報は、具体的にはSDP(Session Description Protocol)やICECandidateの形式のものである。尚、セッション情報には少なくとも、端末1自らのIPアドレスを含む。
端末1は、アプリケーションを実行し、周辺機器2に対応するセッション情報を生成する。この「セッション情報」は、端末1が、周辺機器2との間でピアツーピア通信(WebRTC)の確立に必要な情報である。セッション情報は、具体的にはSDP(Session Description Protocol)やICECandidateの形式のものである。尚、セッション情報には少なくとも、端末1自らのIPアドレスを含む。
(ステップS3)
端末1は、WebSocket(第2の転送プロトコル)を介して機器管理サーバ4へ、セッション情報を含むセッション確立要求を送信する。
端末1は、WebSocket(第2の転送プロトコル)を介して機器管理サーバ4へ、セッション情報を含むセッション確立要求を送信する。
次に、機器管理サーバ4は、セッション確立先となる周辺機器2との間でWebSocketを確立した「active状態」であるか否かを判定する。即ち、端末1から受信したセッション情報のセッション確立先が、既にWebSocketを確立している周辺機器2と一致するか否かを判定する。
周辺機器2との間でWebSocketが確立していない場合、機器管理サーバ4は、否定応答(NG)を端末1へ返信して終了する。
一方で、周辺機器2との間でWebSocketが確立している場合、機器管理サーバ4は、WebSocketを介して周辺機器2へ、受信したセッション確立要求を転送する。
周辺機器2との間でWebSocketが確立していない場合、機器管理サーバ4は、否定応答(NG)を端末1へ返信して終了する。
一方で、周辺機器2との間でWebSocketが確立している場合、機器管理サーバ4は、WebSocketを介して周辺機器2へ、受信したセッション確立要求を転送する。
次に、周辺機器2は、セッション確立要求を受信した際に、セッション確立を許可する場合、セッション情報を生成する。セッション情報には少なくとも、周辺機器2自らのIPアドレスを含む。そのセッション情報を含むセッション確立応答(OK)は、機器管理サーバ4へ返信される。
そして、機器管理サーバ4は、受信したセッション確立応答を、端末1へ転送する。
このように、端末1と周辺機器2との間でセッション情報を交換することによって、ピアツーピア通信のセッションの確立先を互いに認識することができる。
このように、端末1と周辺機器2との間でセッション情報を交換することによって、ピアツーピア通信のセッションの確立先を互いに認識することができる。
(ステップS4)
これによって、端末1と周辺機器2との間で直接的に、WebSocket(第2の転送プロトコル)を介したピアツーピア通信を確立する。端末1は、機器管理サーバ4へ向けて確立していたWebSocketを周辺機器2へ向けて切り換える。また、周辺機器2は、機器管理サーバ4へ向けて確立していたWebSocketを端末1へ向けて切り換える。これによって、新たにコネクションを確立することなく、端末1と周辺機器2との間で、WebRTCのピアツーピア通信を確立する。
これによって、端末1と周辺機器2との間で直接的に、WebSocket(第2の転送プロトコル)を介したピアツーピア通信を確立する。端末1は、機器管理サーバ4へ向けて確立していたWebSocketを周辺機器2へ向けて切り換える。また、周辺機器2は、機器管理サーバ4へ向けて確立していたWebSocketを端末1へ向けて切り換える。これによって、新たにコネクションを確立することなく、端末1と周辺機器2との間で、WebRTCのピアツーピア通信を確立する。
図3は、本発明における端末及び機器管理サーバの機能構成図である。
図3によれば、端末1は、識別情報読取部101と、第1の転送プロトコル確立部102と、第2の転送プロトコル確立部103と、機器情報取得部10と、アプリケーション取得部11と、アプリケーション実行部12と、セッション確立要求部13と、ピアツーピア通信確立部14とを有する。識別情報読取部101を除くこれら機能構成部は、端末に搭載されたコンピュータを機能させるプログラムを実行することによって実現される。
識別情報読取部101は、例えばNFCのリーダ機能であって、周辺機器2から識別情報を読み取る(前述したステップS01と同様)。識別情報の認識を、第1の転送プロトコル確立部102へ通知すると共に、識別情報を、機器情報取得部10へ通知する。
第1の転送プロトコル確立部102は、機器管理サーバ4及びアプリケーション配信サーバ3との間で、例えばHTTPを確立する(前述したステップS02と同様)。
第2の転送プロトコル確立部103は、機器管理サーバ4との間で、例えばWebSocketを確立する(前述したステップS13と同様)。
機器情報取得部10は、機器管理サーバ4との間で例えばHTTPを介して、周辺機器の識別情報に対応した機器情報を取得する(前述したステップS03と同様)。
アプリケーション取得部11は、例えばHTTPを介して、周辺機器の機器情報に対応したアプリケーションを取得する(前述したステップS11と同様)。
アプリケーション実行部12は、アプリケーションを実行し、周辺機器に対応するセッション情報を生成する(前述したステップS12と同様)。
セッション確立要求部13は、例えばWebSocketを介して、機器管理サーバ4へセッション情報を送信する(前述したS13と同様)。
ピアツーピア通信確立部14は、周辺機器との間で直接的に、WebSocketを介したピアツーピア通信を確立する(前述したステップS14と同様)。
第1の転送プロトコル確立部102は、機器管理サーバ4及びアプリケーション配信サーバ3との間で、例えばHTTPを確立する(前述したステップS02と同様)。
第2の転送プロトコル確立部103は、機器管理サーバ4との間で、例えばWebSocketを確立する(前述したステップS13と同様)。
機器情報取得部10は、機器管理サーバ4との間で例えばHTTPを介して、周辺機器の識別情報に対応した機器情報を取得する(前述したステップS03と同様)。
アプリケーション取得部11は、例えばHTTPを介して、周辺機器の機器情報に対応したアプリケーションを取得する(前述したステップS11と同様)。
アプリケーション実行部12は、アプリケーションを実行し、周辺機器に対応するセッション情報を生成する(前述したステップS12と同様)。
セッション確立要求部13は、例えばWebSocketを介して、機器管理サーバ4へセッション情報を送信する(前述したS13と同様)。
ピアツーピア通信確立部14は、周辺機器との間で直接的に、WebSocketを介したピアツーピア通信を確立する(前述したステップS14と同様)。
また、図3によれば、機器管理サーバ4は、第1の転送プロトコル確立部402と、第2の転送プロトコル確立部403と、機器情報送信部40と、セッション情報転送部43とを有する。これら機能構成部は、サーバに搭載されたコンピュータを機能させるプログラムを実行することによって実現される。
第1の転送プロトコル確立部402は、端末1との間で、例えばHTTPを確立する(前述したS02と同様)。
第2の転送プロトコル確立部403は、端末1との間で、及び、周辺機器2との間で、例えばWebSocketを確立する(前述したS43と同様)。
セッション情報転送部43は、例えばWebSocketを介して端末から受信したセッション情報を、WebSocketを介して周辺機器へ転送する(前述したS43と同様)。
第2の転送プロトコル確立部403は、端末1との間で、及び、周辺機器2との間で、例えばWebSocketを確立する(前述したS43と同様)。
セッション情報転送部43は、例えばWebSocketを介して端末から受信したセッション情報を、WebSocketを介して周辺機器へ転送する(前述したS43と同様)。
図4は、本発明における周辺機器の機能構成図である。
図4によれば、周辺機器2は、識別情報発信部201と、第2のプロトコル確立部202と、セッション確立部23と、ピアツーピア通信確立部24とを有する。識別情報発信部201を除くこれら機能構成部は、周辺機器に搭載されたコンピュータを機能させるプログラムを実行することによって実現される。
識別情報発信部201は、NFCであればカードエミュレーション機能であり、Bluetoothであればアドバタイズ発信機能である(前述したステップS01と同様)。これによって、端末1へ識別情報を通知する。
第2のプロトコル確立部202は、機器管理サーバ4との間で、例えばWebSocketを確立する(前述したステップS02と同様)。
セッション確立部23は、機器管理サーバ4を介して端末1との間で、セッションを確立する(前述したステップS3と同様)。
ピアツーピア通信確立部24は、例えばWebSocketを介して端末1から受信したセッション情報に基づいて、端末1との間で直接的に、WebSocketを介したピアツーピア通信を確立する(前述したステップS4と同様)。
第2のプロトコル確立部202は、機器管理サーバ4との間で、例えばWebSocketを確立する(前述したステップS02と同様)。
セッション確立部23は、機器管理サーバ4を介して端末1との間で、セッションを確立する(前述したステップS3と同様)。
ピアツーピア通信確立部24は、例えばWebSocketを介して端末1から受信したセッション情報に基づいて、端末1との間で直接的に、WebSocketを介したピアツーピア通信を確立する(前述したステップS4と同様)。
最後に、端末がスマートフォンである場合、周辺機器との間でセッションを確立する具体的な実施形態について説明する。
周辺機器がネットワークカメラである場合、スマートフォンが、ネットワークカメラの識別情報を取得することによって、スマートフォンとネットワークカメラとの間でWebRTCを確立する。ネットワークカメラによって取得された映像が、スマートフォンへピアツーピア通信で伝送され、ユーザは、その映像を視認することができる。
周辺機器が車載機器である場合、スマートフォンが、NFCによってかざして、車載機器の識別情報を取得することによって、スマートフォンと車載機器との間でWebRTCを確立する。車載機器の環境情報や運行情報が、スマートフォンへピアツーピア通信で伝送され、スマートフォンをカーナビゲーションとして実行することができる。
周辺機器がエレベータである場合、スマートフォンが、Bluetoothのアドバタイズ信号でエレベータの識別情報を取得することによって、スマートフォンとエレベータとの間でWebRTCを確立する。ユーザは、スマートフォンから、エレベータの階数指定や呼び出しをすることができる。
1台のスマートフォンは、複数の周辺機器との間でWebRTCを、ユーザ操作の負担無く、簡易に確立することができる。例えば1台のスマートフォンで、複数の周辺機器に対して各周辺機器に対応したアプリケーションを自動的にインストールしてセッションを確立することできる。即ち、1台のスマートフォンで、テレビのリモコンや、照明のリモコンのように操作することができる。
以上、詳細に説明したように、本発明の方法及びシステムによれば、ユーザ操作の負担無しに、端末と周辺機器との間におけるピアツーピア通信を確立することができる。
前述した本発明の種々の実施形態について、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。
1 端末
101 識別情報読取部
102 第1の転送プロトコル確立部
103 第2の転送プロトコル確立部
10 機器情報取得部
11 アプリケーション取得部
12 アプリケーション実行部
13 セッション確立要求部
14 ピアツーピア通信確立部
2 周辺機器
201 識別情報発信部
202 第2のプロトコル確立部
23 セッション確立部
24 ピアツーピア通信確立部
3 アプリケーション配信サーバ
4 機器管理サーバ
402 第1の転送プロトコル確立部
403 第2の転送プロトコル確立部
40 機器情報送信部
43 セッション情報転送部
101 識別情報読取部
102 第1の転送プロトコル確立部
103 第2の転送プロトコル確立部
10 機器情報取得部
11 アプリケーション取得部
12 アプリケーション実行部
13 セッション確立要求部
14 ピアツーピア通信確立部
2 周辺機器
201 識別情報発信部
202 第2のプロトコル確立部
23 セッション確立部
24 ピアツーピア通信確立部
3 アプリケーション配信サーバ
4 機器管理サーバ
402 第1の転送プロトコル確立部
403 第2の転送プロトコル確立部
40 機器情報送信部
43 セッション情報転送部
Claims (7)
- ユーザによって所持される端末及び周辺機器と、ネットワークを介して通信可能なアプリケーション配信サーバ及び機器管理サーバとを有するシステムについて、端末−周辺機器間のピアツーピア(Peer-to-Peer)通信確立方法であって、
前記端末及び前記機器管理サーバは、要求応答型の第1の転送プロトコルと、ソケット型の第2の転送プロトコルを実装しており、
前記端末が、前記アプリケーション配信サーバとの間で第1の転送プロトコルを介して、前記周辺機器の機器情報に対応したアプリケーションを取得する第1のステップと、
前記端末が、前記アプリケーションを実行し、前記周辺機器に対応するセッション情報を生成する第2のステップと、
前記端末が、第2の転送プロトコルを介して前記機器管理サーバへ前記セッション情報を送信し、前記機器管理サーバが、第2の転送プロトコルを介して前記周辺機器へ前記セッション情報を転送する第3のステップと、
前記端末と前記周辺機器との間で直接的に、第2の転送プロトコルを介したピアツーピア通信を確立する第4のステップと
を有することを特徴とするピアツーピア通信確立方法。 - 第1のステップの前段で、前記端末が、前記機器管理サーバとの間で第1の転送プロトコルを介して、前記周辺機器の識別情報に対応した機器情報を取得する
ことを特徴とする請求項1に記載のピアツーピア通信確立方法。 - 前記端末は、前記周辺機器から識別情報を読み取ることができ、
前記周辺機器は、前記端末によって前記識別情報が読み取られた際に、前記機器管理サーバに対して第2の転送プロトコルを確立し、
第3のステップについて、前記機器管理サーバは、前記端末から受信した前記セッション情報が、既に第2の転送プロトコルを確立している前記周辺機器と一致するか否かを判定し、一致した場合にのみ、前記セッション情報を前記周辺機器へ転送する
ことを特徴とする請求項2に記載のピアツーピア通信方法。 - 前記端末は、前記周辺機器から近距離無線通信を介して、前記識別情報を読み取り、
前記周辺機器は、前記端末から近距離無線通信を介して、前記識別情報が読み取られたことを認識する
ことを特徴とする請求項3に記載のピアツーピア通信方法。 - 前記端末は、Webブラウザを実装しており、
第1の転送プロトコルは、HTTP(HyperText Transfer Protocol)であり、
第2の転送プロトコルは、WebSocketであり、
ピアツーピア通信は、WebRTC(Web Real-Time Communication)である
ことを特徴とする請求項1から4のいずれか1項に記載のピアツーピア通信確立方法。 - 第4のステップについて、
前記端末は、前記機器管理サーバへ向けて確立していた第2の転送プロトコルを前記周辺機器へ向けて切り換え、
前記周辺機器は、前記機器管理サーバへ向けて確立していた第2の転送プロトコルを前記端末へ向けて切り換え、
前記ピアツーピア通信は、ローカルネットワークを介して第2の転送プロトコルによって直接的に確立される
ことを特徴とする請求項1から5のいずれか1項に記載のピアツーピア通信方法。 - ユーザによって所持される端末及び周辺機器と、ネットワークを介して通信可能なアプリケーション配信サーバ及び機器管理サーバとを有し、端末−周辺機器間のピアツーピア通信を確立するシステムであって、
前記端末は、
前記機器管理サーバ及び前記アプリケーション配信サーバとの間で、第1の転送プロトコルを確立する第1の転送プロトコル確立手段と、
前記機器管理サーバとの間で、第2の転送プロトコルを確立する第2の転送プロトコル確立手段と、
第1の転送プロトコルを介して、前記周辺機器の機器情報に対応したアプリケーションを取得するアプリケーション取得手段と、
前記アプリケーションを実行し、前記周辺機器に対応するセッション情報を生成するアプリケーション実行手段と、
第2の転送プロトコルを介して、前記機器管理サーバへ前記セッション情報を送信するセッション確立要求手段と、
前記周辺機器との間で直接的に、第2の転送プロトコルを介したピアツーピア通信を確立するピアツーピア通信確立手段と
を有し、
前記機器管理サーバは、
前記端末との間で、第1の転送プロトコルを確立する第1の転送プロトコル確立手段と、
前記端末との間で、及び、前記周辺機器との間で、第2の転送プロトコルを確立する第2の転送プロトコル確立手段と、
第2の転送プロトコルを介して前記端末から受信した前記セッション情報を、第2の転送プロトコルを介して前記周辺機器へ転送するセッション情報転送手段と
を有し、
前記周辺機器は、
前記機器管理サーバとの間で、第2の転送プロトコルを確立する第2の転送プロトコル確立手段と、
第2の転送プロトコルを介して前記端末から受信した前記セッション情報に基づいて、前記周辺機器との間で直接的に、第2の転送プロトコルを介したピアツーピア通信を確立するピアツーピア通信確立手段と
を有することを特徴とするシステム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015095163A JP2016212596A (ja) | 2015-05-07 | 2015-05-07 | 端末と周辺機器との間でピアツーピア通信を確立する方法及びシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015095163A JP2016212596A (ja) | 2015-05-07 | 2015-05-07 | 端末と周辺機器との間でピアツーピア通信を確立する方法及びシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2016212596A true JP2016212596A (ja) | 2016-12-15 |
Family
ID=57551143
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015095163A Pending JP2016212596A (ja) | 2015-05-07 | 2015-05-07 | 端末と周辺機器との間でピアツーピア通信を確立する方法及びシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2016212596A (ja) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018160879A (ja) * | 2017-03-23 | 2018-10-11 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | メッセージバスエージェント装置、シグナリングサーバ、メッセージバス管理サーバ、コネクション形成方法、及びプログラム |
JP2019003611A (ja) * | 2017-06-09 | 2019-01-10 | 株式会社コンテンツパーク | 役務提供支援システム |
JP2019012364A (ja) * | 2017-06-29 | 2019-01-24 | キヤノン株式会社 | サーバ装置、情報処理装置、および制御方法 |
US11190569B2 (en) * | 2019-09-10 | 2021-11-30 | Citrix Systems, Inc. | Peripheral device sharing over peer-to-peer connection |
CN115086383A (zh) * | 2021-03-10 | 2022-09-20 | 精工爱普生株式会社 | 系统、服务器装置以及终端装置 |
US11470141B1 (en) * | 2022-02-01 | 2022-10-11 | Browserstack Limited | Remote device infrastructure |
US11860771B1 (en) | 2022-09-26 | 2024-01-02 | Browserstack Limited | Multisession mode in remote device infrastructure |
-
2015
- 2015-05-07 JP JP2015095163A patent/JP2016212596A/ja active Pending
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018160879A (ja) * | 2017-03-23 | 2018-10-11 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | メッセージバスエージェント装置、シグナリングサーバ、メッセージバス管理サーバ、コネクション形成方法、及びプログラム |
US11146643B2 (en) | 2017-03-23 | 2021-10-12 | Ntt Communications Corporation | Message bus agent apparatus, signaling server, message bus management server, connection establishment method, and program |
JP2019003611A (ja) * | 2017-06-09 | 2019-01-10 | 株式会社コンテンツパーク | 役務提供支援システム |
JP2019012364A (ja) * | 2017-06-29 | 2019-01-24 | キヤノン株式会社 | サーバ装置、情報処理装置、および制御方法 |
US11190569B2 (en) * | 2019-09-10 | 2021-11-30 | Citrix Systems, Inc. | Peripheral device sharing over peer-to-peer connection |
US20220038519A1 (en) * | 2019-09-10 | 2022-02-03 | Citrix Systems, Inc. | Perhipheral device sharing over peer-to-peer connection |
US11533349B2 (en) * | 2019-09-10 | 2022-12-20 | Citrix Systems, Inc. | Perhipheral device sharing over peer-to-peer connection |
CN115086383A (zh) * | 2021-03-10 | 2022-09-20 | 精工爱普生株式会社 | 系统、服务器装置以及终端装置 |
CN115086383B (zh) * | 2021-03-10 | 2024-04-19 | 精工爱普生株式会社 | 系统、服务器装置以及终端装置 |
US11470141B1 (en) * | 2022-02-01 | 2022-10-11 | Browserstack Limited | Remote device infrastructure |
US11843653B2 (en) * | 2022-02-01 | 2023-12-12 | Browserstack Limited | Remote device infrastructure |
US11860771B1 (en) | 2022-09-26 | 2024-01-02 | Browserstack Limited | Multisession mode in remote device infrastructure |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2016212596A (ja) | 端末と周辺機器との間でピアツーピア通信を確立する方法及びシステム | |
US10009410B2 (en) | Description files and web service protocols for tasking capability on internet of things | |
US20140047322A1 (en) | Method and system for browsing things of internet of things on ip using web platform | |
WO2017159005A1 (ja) | データフロー制御装置およびデータフロー制御方法 | |
JP6476672B2 (ja) | 通信端末、情報処理方法およびプログラム | |
JP7359234B2 (ja) | 情報処理装置、情報処理システム、情報処理方法及びプログラム | |
KR101332813B1 (ko) | 무선 통신 장치 및 무선 통신 장치의 무선 접속 채널의 형성 방법 | |
US9326115B2 (en) | Information processing system, information processing method, mobile phone, server, and control method and control program thereof | |
CN102891891A (zh) | 跨设备文件传输方法和系统 | |
EP2461523A1 (en) | Systems and methods for operating an appliance control device for an appliance | |
US9571954B2 (en) | Information processing system, information processing method, mobile phone, server, and control methods and control programs thereof | |
US9661102B2 (en) | System and method for sharing data | |
US20140173121A1 (en) | Method, device and computer-readable storage medium for client interaction of a network application executed by computer | |
CN108306953A (zh) | 一种用于物联网应用数据呈现的强兼容性实时推送方法 | |
JP2012173801A (ja) | 通信装置、その制御方法及びプログラム | |
JP5637115B2 (ja) | ネットワークストレージシステム、ネットワークストレージシステムにおけるデータ操作方法、記憶装置 | |
US10643039B2 (en) | Location based situation awareness system and method thereof | |
US20150222712A1 (en) | Information processing terminal and control method | |
CN102638623A (zh) | 基于二维图像在电子设备之间传递数据的方法及系统 | |
JP5773894B2 (ja) | 端末間で権限情報を中継する方法及びシステム | |
CN114745412A (zh) | 双向远程过程调用方法、装置、设备及存储介质 | |
JP2014135040A (ja) | システム | |
US10516719B1 (en) | Wearable device registration system and method | |
JP6376159B2 (ja) | データフロー制御装置およびデータフロー制御方法 | |
KR102442628B1 (ko) | 대화 서비스를 제공하기 위한 전자 장치 및 그 작동 방법 |