JP6877727B1 - シグナリングサーバのルームサイトを介した端末間の接続方法、クラウドサーバ及びプログラム - Google Patents

シグナリングサーバのルームサイトを介した端末間の接続方法、クラウドサーバ及びプログラム Download PDF

Info

Publication number
JP6877727B1
JP6877727B1 JP2021000659A JP2021000659A JP6877727B1 JP 6877727 B1 JP6877727 B1 JP 6877727B1 JP 2021000659 A JP2021000659 A JP 2021000659A JP 2021000659 A JP2021000659 A JP 2021000659A JP 6877727 B1 JP6877727 B1 JP 6877727B1
Authority
JP
Japan
Prior art keywords
terminal
signaling
server
connection information
cloud 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.)
Active
Application number
JP2021000659A
Other languages
English (en)
Other versions
JP2022106014A (ja
Inventor
レイエス樹 白久
レイエス樹 白久
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to JP2021000659A priority Critical patent/JP6877727B1/ja
Application granted granted Critical
Publication of JP6877727B1 publication Critical patent/JP6877727B1/ja
Publication of JP2022106014A publication Critical patent/JP2022106014A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephonic Communication Services (AREA)

Abstract

【課題】複数の端末に対して識別子に基づくルームサイトを提供するシグナリングサーバを用いた接続方法、クラウドサーバ及びプログラムを提供する。【解決手段】最初に、第1の端末が、クラウドサーバへ、ページ要求を送信する。次に、クラウドサーバが、シグナリング接続要求を、シグナリングサーバへ送信する。次に、シグナリングサーバが、ランダムな識別子を発行し、当該識別子に基づくルームサイトを作成すると共に、当該識別子に基づくシグナリング接続情報をクラウドサーバへ応答する。次に、クラウドサーバが、シグナリング接続情報を、第1の端末へ応答する。そして、クラウドサーバが、シグナリング接続情報を、第1の端末と通信すべき第2の端末へ通知する。これによって、第1の端末及び第2の端末をそれぞれ、シグナリング接続情報を用いて、シグナリングサーバのルームサイトを介して通信させることができる。【選択図】図3

Description

本発明は、WebRTC(Web Real-Time Communication)(登録商標)のようなシグナリングサーバのルームサイトを介して、端末間を接続する技術に関する。
近年、建設業界では技術労働者の不足が懸念され、建設現場のテレワーク化のために、建機をリアルタイムに遠隔操作する技術が期待されてきている。このような技術は、建設現場に限られず、災害によって人が立ち入ることが困難な地域に対しても需要がある。
遠隔操作システムとしては、現場に配置された無人の「建機」と、オペレータが操作する「端末」とが、ネットワークを介して接続される。建機は、施工現場を撮影するカメラを搭載しており、その映像をリアルタイムに端末へ送信する。オペレータは、端末のディスプレイに表示される映像を視認しながら、端末を操作する。操作信号は、端末から建機へリアルタイムに送信され、その操作信号に応じて建機が駆動制御される。
一般的に、既存の遠隔操作システムによれば、建機及び端末のそれぞれが専用アプリケーションを起動し、専用サイトにログインする操作を必要とする。
映像のようなメディアデータを、端末間でインターネットを介してリアルタイムに送受信するために、ビデオチャットの技術がある。代表的にはWebRTCがあり、端末にインストールされたブラウザを用いて、API(Application Programming Interface)を呼び出すことによってコネクションを確立することができる。コネクションは、メディアデータに応じたQoS(Quality of Service)を保証するべく確立される。WebRTCの場合、例えば端末とシグナリングサーバとの間をWebソケットで接続し、シグナリングサーバを介して端末間で、メディアデータを送受信することができる。
図1は、従来技術におけるビデオ会議のシステム構成図である。
図1によれば、ユーザAは、端末2Aからシグナリングサーバ3へ、会議室のルームサイト(roomARAV)の作成を要求する。これに対し、シグナリングサーバ3は、ルームサイトの接続情報(シグナリングURL(Uniform Resource Locator)及びルームID(IDentifier))(例えばhttps://www.webrtc.com/roomARAV)を、端末2Aへ応答する。
次に、ユーザAは、作成されたルームサイトの接続情報を、例えばメールやメッセージを用いて、通話相手となるユーザBの端末2Bへ送信する。
そして、ユーザAは、端末2Aのブラウザから、その接続情報を用いて、シグナリングサーバ3のルームサイトへ入室する。ユーザBも、端末2Bのブラウザから、同一の接続情報を用いて、シグナリングサーバ3のルームサイトへ入室する。
これによって、端末2Aと端末2Bとは、シグナリングサーバ3のルームサイトを介して、WebRTCのビデオ会議をすることができる。
従来、ユーザにとってできる限り簡易な操作で、端末同士のブラウザ間で、チャットのコネクションを確立する技術がある(例えば特許文献1参照)。この技術によれば、制御サーバは、宛先ユーザの宛先アドレスと、宛先ユーザを識別可能な識別URLとを予め記憶する。
送信元ユーザの送信元端末は、宛先ユーザの識別URLに向けて、制御サーバへページ要求を送信する。これに対し、制御サーバは、任意の接続URLを設定し、送信元端末へ、接続URLへアクセスすべきリダイレクト応答を返信すると共に、接続URLを含むメッセージを、識別URLで識別された宛先ユーザの宛先アドレスへ送信する。
これによって、送信元端末がシグナリングサーバの接続URLへアクセスすると共に、宛先ユーザの宛先端末もシグナリングサーバの接続URLへアクセスすることによって、コネクションが確立される。
特許第6277458号公報
ImageFlux Live Streaming、さくらインターネット株式会社、[online]、[令和2年12月23日検索]、インターネット<URL:https://www.sakura.ad.jp/services/imageflux/livestreaming/> WebRTC SFU Sora、株式会社時雨堂、[online]、[令和2年12月23日検索]、インターネット<URL:https://sora.shiguredo.jp/> WebRTC Native Client Momo、株式会社時雨堂、[online]、[令和2年12月23日検索]、インターネット<URL:https://momo.shiguredo.jp/> AWS IoT Core、アマゾンジャパン合同会社、[online]、[令和2年12月23日検索]、インターネット<URL: https://docs.aws.amazon.com/ja_jp/iot/latest/developerguide/mqtt.html> AWS Cognito、アマゾンジャパン合同会社、[online]、[令和2年12月23日検索]、インターネット<URL:https://aws.amazon.com/jp/cognito/>
建機の遠隔操作システムにおける事例によれば、建機と端末との間を、WebRTCのようなシグナリングサーバによって接続することも想定できる。建機は、カメラによって撮影された映像をオペレータの端末へ送信し、端末に入力されたオペレータの操作信号を受信し、建機自体を駆動制御することができる。しかしながら、以下のような課題を生じる。
第1の課題として、端末から建機へ、シグナリングサーバにおけるルームの接続情報(シグナリングURL及びルームID)を予め送信しても、建機側は無人である。既存のビデオ会議であれば、主催者から受信したメールやメッセージによって、参加者自ら接続情報を認識することができる。勿論、無人の建機に対して、接続情報を予め固定的に設定しておき、常に同一の接続情報で接続することもできる。
しかしながら、悪意の第三者の侵入が絶対に許されない建機の場合、固定的な接続情報を使い回しすることは、セキュリティの観点から許されない。
前述した特許文献1によれば、ユーザにとってできる限り簡易な操作で、端末同士のブラウザ間で、チャットのコネクションを確立することができる。そのために、送信元ユーザがアクセスすべきメッセージ通知サーバのURLが宛先ユーザと予め対応付けられている。そのために、WebRTCサーバへの接続情報をランダムに設定したとしても、メッセージ通知サーバのURLを知り得る第三者は誰でも、宛先ユーザの宛先端末とコネクションを確立することができる。結局、第1の課題を解決するものではない。
第2の課題として、無人の建機が、端末を操作するオペレータを、直接的に認証することも問題となる。認証情報が端末側で漏洩した場合、結果的に、建機に対して悪意の第三者の端末からの侵入を許すこととなってしまう。
第3の課題として、端末から建機へ送信される操作信号の遅延時間の問題もある。建機の遠隔操作の場合、映像の遅延時間と比較して、操作信号の遅延時間は極めて小さくなければならない。オペレータにとって、ネットワークを介した操作信号の遅延は、端末の操作に大きな影響を与える。特に、WebRTCのコネクションにおけるメディアデータの遅延時間では、操作信号の遅延時間を保証できない場合もある。
これに対し、本願の発明者は、第1の課題に対して、端末から建機へのコネクションが確立される毎に、異なる接続情報によって確立されるべきではないか、と考えた。
また、第2の課題に対して、建機と端末との間で直接的な認証シーケンスを実行すべきでないと考えた。また、シグナリングサーバのルームサイトの接続情報や、端末から建機への操作信号は、認証に基づくものでなければならない、と考えた。
更に、第3の課題に対して、端末から建機へ送信される操作信号については、極めて軽量なプロトコルに基づく送信が必要となる、とも考えた。
本願の発明者は、勿論、端末を操作するオペレータにとって、できる限り簡易に、建機との通信が開始されるべき、とも考えた。
また、これら課題を解決することは、建機の遠隔操作システムに限ることなく、ビデオ会議システムにも当然に有効ある、とも考えた。
そこで、本発明は、シグナリングサーバのルームサイトを介した端末間で、できる限り悪意の第三者が侵入しないような接続方法、クラウドサーバ及びプログラムを提供することを目的とする。
本発明によれば、第1の端末及び第2の端末に対してルームサイトを提供するシグナリングサーバを用いた接続方法であって、
第1の端末、第2の端末及びシグナリングサーバと通信可能なクラウドサーバを更に有し、
第1の端末が、クラウドサーバへページ要求を送信し、クラウドサーバとの間で認証シーケンスを実行した後、ユーザに第2の端末を選択させる第1のステップと、
クラウドサーバが、シグナリング接続要求を、シグナリングサーバへ送信する第2のステップと、
シグナリングサーバが、ランダムな識別子を発行し、当該識別子に基づくルームサイトを作成すると共に、当該識別子に基づくシグナリング接続情報をクラウドサーバへ応答する第3のステップと、
クラウドサーバが、シグナリング接続情報を、第1の端末へ応答する第4のステップと、
クラウドサーバが、シグナリング接続情報を、他の装置を介して第2の端末へ通知する第5のステップと
を有し、第1の端末及び第2の端末をそれぞれ、シグナリング接続情報を用いて、シグナリングサーバのルームサイトを介して通信させることを特徴とする。
本発明の接続方法における他の実施形態によれば、
シグナリングサーバは、WebRTC(Web Real-Time Communication)に基づいて機能し、
第1の端末は、Webサーバとして機能するクラウドサーバに対してブラウザによって通信し、
識別子は、ルームサイト固有のルームID(IDentifier)であり、
シグナリング接続情報は、シグナリングURL(Uniform Resource Locator)及びルームIDを含む
ことも好ましい。
本発明の接続方法における他の実施形態によれば、
トピックに基づくメッセージを交換するブローカを更に有し、
第2の端末は、ブローカに対して、デバイス接続情報を予め送信しており、
第1のステップについて、クラウドサーバは、第1の端末と通信すべき第2の端末を特定した後、ブローカに対して、第2の端末のデバイス接続情報を送信し、
第4のステップについて、クラウドサーバは、シグナリング接続情報と共に、デバイス接続情報を、第1の端末へ応答し、
第1の端末及び第2の端末をそれぞれ、更にデバイス接続情報を用いて、ブローカを介して通信させることも好ましい。
本発明の接続方法における他の実施形態によれば、
ブローカは、MQTT(Message Queue Telemetry Transport)に基づいて機能し、
デバイス接続情報は、ブローカURL及びトピックを含む
ことも好ましい。
本発明の接続方法における他の実施形態によれば、
第1のステップにおける認証機能について、
クラウドサーバは、第1の端末からページ要求を受信した際に、認証フォームを第1の端末へ送信し、ユーザに認証情報を入力させ、当該認証情報を第1の端末から受信し、認証成否を判定する第11のステップと、
クラウドサーバは、認証成功後、接続可能な複数の第2の端末のリストを第1の端末へ送信し、ユーザに第2の端末を選択させ、選択された第2の端末の端末識別子を第1の端末から受信し、第1の端末と通信すべき第2の端末を特定する第12のステップと
を有することも好ましい。
本発明によれば、前述した接続方法を用いたビデオ会議接続方法であって、
第1の端末及び第2の端末は、ユーザ操作可能な端末であり、
ビデオ会議が開始される毎に、ランダムな識別子に基づくルームサイトが提供される
ことを特徴とする。
本発明によれば、前述した接続方法を用いた建機の遠隔操作方法について、
第1の端末は、ユーザインタフェースとして、ユーザ操作可能なタッチパネルディスプレイ、又は、ディスプレイとユーザ操作デバイスとのセット、を有する端末であり、
第2の端末は、操作インタフェースとして、建機の操作部に取り付けられた操作制御装置を有し、視界インタフェースとして、建機の操縦席から見た映像を撮影するカメラを有する建機であり、
第1の端末から第2の端末から建機に対する遠隔操作が開始される毎に、ランダムな識別子に基づくルームサイトが提供される
ことを特徴とする。
本発明の建機の遠隔操作方法における他の実施形態によれば、
第1の端末は、操作情報を、ブローカを介して第2の端末へ送信し、
第2の端末は、状態情報を、ブローカを介して第1の端末へ送信すると共に、カメラによって撮影された映像を、シグナリングサーバを介して第1の端末へ送信する
ことも好ましい。
本発明によれば、第1の端末及び第2の端末、ルームサイトを提供するシグナリングサーバと通信可能なクラウドサーバであって、
第1の端末から、ページ要求を受信して認証シーケンスを実行した後、ユーザに第2の端末を選択させるページ要求受信手段と、
第2の端末が選択された後、シグナリング接続要求をシグナリングサーバへ送信し、シグナリングサーバから、ランダムな識別子に基づいて作成されたルームサイトにおけるシグナリング接続情報を受信するシグナリング接続要求手段と、
シグナリング接続情報を、第1の端末へ応答する応答手段と、
シグナリング接続情報を、他の装置を介して第2の端末へ通知する接続情報通知手段と
を有し、第1の端末及び第2の端末をそれぞれ、シグナリング接続情報を用いて、シグナリングサーバのルームサイトを介して通信させることを特徴とする。
本発明によれば、第1の端末及び第2の端末、ルームサイトを提供するシグナリングサーバと通信可能なクラウドサーバに搭載されたコンピュータを機能させるプログラムであって、
第1の端末から、ページ要求を受信して認証シーケンスを実行した後、ユーザに第2の端末を選択させるページ要求受信手段と、
第2の端末が選択された後、シグナリング接続要求をシグナリングサーバへ送信し、シグナリングサーバから、ランダムな識別子に基づいて作成されたルームサイトにおけるシグナリング接続情報を受信するシグナリング接続要求手段と、
シグナリング接続情報を、第1の端末へ応答する応答手段と、
シグナリング接続情報を、他の装置を介して第2の端末へ通知する接続情報通知手段と
してコンピュータを機能させ、第1の端末及び第2の端末をそれぞれ、シグナリング接続情報を用いて、シグナリングサーバのルームサイトを介して通信させることを特徴とする。
本発明の接続方法、クラウドサーバ及びプログラムによれば、シグナリングサーバのルームサイトを介した端末間で、できる限り悪意の第三者が侵入しないようにすることができる。
従来技術におけるビデオ会議システムの構成図である。 ネットワークを介して通信する端末及び建機を表す説明図である。 本発明における建機の遠隔操作システムの構成図である。 本発明におけるシーケンス図である。 本発明におけるクラウドサーバの機能構成図である。 オペレータが操作する端末の認証シーケンスを表すシーケンス図である。 本発明におけるビデオ会議システムの構成図である。
以下、本発明の実施の形態について、図面を用いて詳細に説明する。
図2は、ネットワークを介して通信する端末及び建機を表す説明図である。
図2によれば、端末2Aは、オペレータとしてのユーザAによって操作される。オペレータ側端末2Aは、以下のいずれかのユーザインタフェースを有する。
(a)ユーザ操作可能なタッチパネルディスプレイ
(b)ディスプレイとユーザ操作デバイスとのセット
タッチパネルディスプレイを搭載する端末としては、例えばスマートフォンやタブレットであってもよい。タッチパネルディスプレイには、建機の操縦席から見た「映像」と「操作インタフェース」とが表示される。操作インタフェースとしては、建機における例えばレバーやスイッチなどのアイコンが表示される。それらアイコンを指先で操作することによって、その操作に対応した操作信号が、オペレータ側端末2Aから建機側端末2Bへ送信される。
ディスプレイとユーザ操作デバイスとに接続された端末としては、例えばパーソナルコンピュータであってもよい。ディスプレイには、建機の操縦席から見た「映像」が表示される。ユーザ操作デバイスとしては、例えばゲーム機についてユーザが把持するコントローラのようなものであってもよいし、パーソナルコンピュータに接続されたキーボードやスティック又はマウスのようなものであってもよい。ユーザ操作デバイスに対するオペレータの物理的な操作に対応した操作信号が、オペレータ側端末2Aから建機側端末2Bへ送信される。
また、図2によれば、端末2Bは、無人の建機に搭載されたエッジコンピュータである。建機側端末2Bは、以下のようなインタフェースを有する。
(操作インタフェース)建機の操作部に取り付けられた操作制御装置
(視界インタフェース)建機の操縦席から見た映像を撮影するカメラ
操作制御装置は、建機の操縦席におけるレバーやスイッチなどに物理的に取り付けられ、端末2Aから受信した操作信号に応じて、それらレバー等を駆動制御する。
カメラは、建機の操縦席に搭載されており、操縦席から俯瞰的な映像を撮影する。その映像は、オペレータ側端末2Aへ送信される。
図2によれば、端末2Aを操作するオペレータは、建機の操縦席から見える映像をディスプレイで視認しながら、端末2Aの操作インタフェースを操作することができる。
尚、以下では、遠隔地に配置された無人の端末2Bは、「建機」であるとして説明するが、これに限られない。遠隔地で駆動制御される「ロボット」であってもよいし、空中で駆動制御される「ドローン」であってもよいし、水中で駆動制御される「水中ロボット」であってもよい。
図3は、本発明における建機の遠隔操作システムの構成図である。
図3によれば、遠隔操作システムとして、本発明の特徴となるクラウドサーバ1と、シグナリングサーバ3と、ブローカ4とが、インターネットを介して接続されている。オペレータ側端末2A及び建機側端末2Bはそれぞれ、クラウドサーバ1、シグナリングサーバ3及びブローカ4と通信可能なものである。
尚、勿論、クラウドサーバ1、シグナリングサーバ3及びブローカ4の機能を一体的に構成した1つのサーバによって実装されるものであってもよい。
[シグナリングサーバ3]
シグナリングサーバ3は、WebRTCに基づいて機能する既存のサーバである。
シグナリングサーバ3としては、具体的にはImageFlux Live Streaming(登録商標)を用いることができる(例えば非特許文献1参照)。これは、APIを呼び出すことによって高品質なライブ配信環境を提供するWebサービスである。ImageFluxのシグナリングサーバ3は、建機側端末2Bから受信した映像を、オペレータ側端末2Aへ転送することができ、遅延時間としては0.2秒〜0.3秒に収まる。
尚、ImageFluxのシグナリングサーバ3は、WebRTCで1対多の通信を実現するSFU(Selective Forwarding Unit)として、具体的にはSoraを用いたものであってもよい(例えば非特許文献2参照)。遠隔地に配置された1台の建機側端末2Bを、複数台のオペレータ側端末2Aそれぞれから、現場の映像を確認し且つ遠隔操作をすることもできる。
[ブローカ4]
ブローカ4は、MQTT(Message Queue Telemetry Transport)に基づいて機能する既存のサーバであり、トピック(topic)に応じてメッセージを交換する。
ブローカ4としては、具体的にはAWS IoT Core(登録商標)を用いることができる(例えば非特許文献4参照)。この技術によれば、デバイスや端末の間を簡単かつ安全に通信させるマネージド型クラウドサービスであって、膨大な数のデバイス及びメッセージをサポートしている。アプリケーションがインターネットに接続されていない場合でも、全てのデバイスや端末を常に追跡して通信することができる。断続的な接続を許容し、必要なネットワーク帯域幅を削減するべく、MQTTのような軽量の通信プロトコルをサポートする。
MQTT(Message Queuing Telemetry Transport)とは、メッセージ指向ミドルウェアのアプリケーション層で使用される、TCP/IPによるPublish/Subscribe型データ配信モデルに基づく。CPUリソースが低いデバイスやネットワークが不安定な場所でも動作しやすいように、メッセージ通信電文が軽量に設計されている。
各端末は、受信したいメッセージのトピックを、ブローカ4へSubscribe(デバイス接続要求)しておく。これによって、ブローカ4は、受信したPublishメッセージをそのトピックに応じて、各端末へ配信する。
[クラウドサーバ1]
クラウドサーバ1は、シグナリングサーバ3及びブローカ4それぞれと通信することによって、オペレータ側端末2Aから建機側端末2Bに対する遠隔操作が開始される毎に、ランダムな識別子に基づくルームサイトを提供するように機能する。
ランダムな識別子としては、例えば英数字列が乱数によって生成されたものであってもよい。このようなルームサイトを作成することによって、できる限り、接続情報(シグナリングURL及びルームID)を特定できないようにする。
クラウドサーバ1は、具体的にはAWS Lambda(登録商標)と、Amazon S3(登録商標)と、AWS Cognito(登録商標)との機能を併せ持ったものであってもよい。特にブローカとしてAWS IoT Coreを用いる場合、インフラストラクチャの管理をすることなく、AWS上で相互に連携させることができる。
尚、例えば、本発明の特徴はAWS Lambdaによって実装され、オペレータ側端末2Aに対する認証シーケンスはAWS Cognitoによって実装されたものであってもよい。
[オペレータ側端末2A]
オペレータ側端末2Aには、既存のブラウザが予めインストールされている。ブラウザとしては、具体的にはChrome(登録商標)、Firefox(登録商標)、Edge(登録商標)、Safari(登録商標)などがある。
[建機側端末2B]
建機側端末2Bには、具体的にはWebRTC Native Client Momoがインストールされたものであってもよい(例えば非特許文献3参照)。この技術によれば、カメラによって撮影された映像を、WebRTCによってImageFluxのシグナリングサーバ3へ送信することができる。
WebRTC Native Client Momoは、建機側端末2Bのように、ブラウザをインストールできない機器であっても、WebRTCによって映像や音声を配信できるネイティブクライアントである。これは、シグナリング機能、エンコーダ/デコーダ機能、デバイス認識機能を搭載しており、カメラからの映像を読み込み、変換し、配信することができる。例えばH.264のようなハードウェアエンコーダ(4K/30FPS)に対応するために、CPUリソースを使うことなく高画質な映像を配信することができる。更に、複数の画質を同時に配信可能にするサイマルキャストに対応しているために、オペレータ側端末2Aは、建機側端末2Bに対して映像の画質を指定することもできる。
前述したように、図3によれば、クラウドサーバ1は、シグナリングサーバ3と、ブローカ4とそれぞれ通信するものとして説明した。
但し、少なくとも第1の課題を解決するためであれば、最小構成としてはシグナリングサーバ3のみと通信可能であればよい。第2の課題及び第3の課題も合わせて解決するためには、クラウドサーバ1は、シグナリングサーバ3及びブローカ4とそれぞれ通信することを要する。
図4は、本発明におけるシーケンス図である。
図4によれば、オペレータ側端末2A(第1の端末)及び建機側端末2B(第2の端末)は、クラウドサーバ1と、シグナリングサーバ3と、ブローカ4と通信可能であって、相互に「映像」と「制御信号」とを送受信することができる。
建機側端末2Bは、例えば起動時に、ブローカ4へ「デバイス接続要求」を送信する。具体的には、MQTTに基づく接続シーケンスが実行され、デバイス接続情報(ブローカURL及びトピック)を指定する。建機側端末2Bは、ブローカ4を介して、そのデバイス接続情報に基づくメッセージを受信することができるようになる。
(S1)端末2Aを操作するオペレータが、建機側端末2Bとの接続を開始しようとしたとする。 クラウドサーバ1は、オペレータ側端末2Aに対してWebサイトとして機能する。クラウドサーバ1は、オペレータ側端末2AからアクセスされるWebサイトのURLを公開する。
最初に、オペレータ側端末2Aは、オペレータ操作に応じてブラウザを起動し、クラウドサーバ1の公開サイトに基づくURLへ「ページ要求」を送信する。
クラウドサーバ1が公開するWebページは、例えばAWS Cognitoに接続されたページであってもよい。オペレータ側端末2Aは、そのWebページにアクセスすることによって、AWS Cognitoとの間で認証シーケンスを実行する。具体的な認証シーケンスについては、図6で後述する。
クラウドサーバ1は、オペレータ側端末2Aの認証成功後、接続先となる建機側端末2Bを特定する(後述する図6を参照)。
そして、クラウドサーバ1は、ブローカ4へ「デバイス接続要求」を送信する。建機側端末2Bと同様に、具体的にはMQTTに基づく接続シーケンスが実行され、デバイス接続情報(ブローカURL及びトピック)を指定する。オペレータ側端末2Aも、ブローカ4を介して、そのデバイス接続情報に基づくメッセージを受信することができるようになる。ここで、オペレータ側端末2Aが指定するデバイス接続情報は、接続先となる建機側端末2Bのデバイス接続要求と一致するように指定する。
(S2)クラウドサーバ1は、会議室の作成を指示する「シグナリング接続要求」を、シグナリングサーバ3へ送信する。
(S3)シグナリングサーバ3は、ランダムな識別子を発行する。識別子は、ルームサイト固有のルームID(IDentifier)であって、乱数によって発生させる。そして、当該識別子に基づくルームサイトを作成する。
例)ルームID:j68mHO6to32N
その後、シグナリングサーバ3は、「シグナリング接続応答」を、クラウドサーバ1へ応答する。シグナリング接続応答には、当該識別子に基づく「シグナリング接続情報(シグナリングURL及びルームID)」が含まれる。
(S4)この時点で、クラウドサーバ1は、オペレータ側端末2Aと建機側端末2Bとを通信させるために、以下の2つの接続情報を持つ。
シグナリング接続情報「シグナリングURL+ルームID」
デバイス接続情報 「ブローカURL+トピック」
そして、クラウドサーバ1は、(例えばS1のWebサイトのJavaScript(登録商標)による)APIの呼び出しに対するレスポンスとして、2つの接続情報を、オペレータ側端末2Aへ応答する。
これによって、オペレータ側端末2Aは、建機側端末2Bに対して、シグナリングサーバ3を介した通信経路と、ブローカ4を介した通信経路との両方を得る。
(S5)最後に、クラウドサーバ1は、ブローカ4を介して、シグナリング接続情報を含む「接続情報通知」を、建機側端末2Bへ通知する。
接続情報通知は、具体的にはMQTTのPublishメッセージとして、クラウドサーバ1からブローカ4へ送信される。ブローカ4は、そのPublishメッセージを、そのメッセージに含まれるトピックに応じて、建機側端末2Bへ配信する。
これによって、建機側端末2Bも、シグナリングサーバ3に作成された会議室へのシグナリング接続情報(シグナリングURL及びルームID)を認識することができる。
(S6)シグナリングサーバ3は、オペレータ側端末2Aと建機側端末2Bとの両方から、同一のシグナリングURL及びルームIDによって、会議室(ルームサイト)へのアクセスを受け付ける。これによって、シグナリングサーバ3は、オペレータ側端末2Aと建機側端末2Bとの間に、メディアデータのコネクションを確立する。
建機側端末2Bは、シグナリング接続情報を用いて、シグナリングサーバ3のルームサイトを介してオペレータ側端末2Aへ、カメラで撮影された「映像」を送信する。オペレータ側端末2Aは、受信した映像をディスプレイに表示し、オペレータに視認させる。
また、オペレータ側端末2Aは、デバイス接続情報を用いて、ブローカ4を介して、「操作情報」を建機側端末2Bへ送信する。建機側端末2Bは、その操作情報に応じて操作制御機器を制御し、建機を駆動制御する。操作情報は、例えば建機のレバーやスイッチ等の個々の操作と、オペレータが操作する疑似のアイコン等の操作とが、1対1に対応付くように規定される。
一方で、建機側端末2Bは、デバイス接続情報を用いて、ブローカ4を介して、建機の「状態情報」を建機側端末2Bへ送信する。オペレータ側端末2Aは、その状態情報をディスプレイに表示し、オペレータに視認させる。
更に、クラウドサーバ1は、デバイス接続情報を用いて、ブローカ4を介して、「管理情報」を建機側端末2Bへ送信し、「メトリック情報」を建機側端末2Bから受信する。
図5は、本発明におけるクラウドサーバの機能構成図である。
図5によれば、クラウドサーバ1は、ページ要求受信部11と、デバイス接続要求部12と、シグナリング接続要求部13と、API応答部14と、接続情報通知部15とを有する。これら機能構成部は、クラウドサーバ1に搭載されたコンピュータを機能させるプログラムを実行することによって実現される。また、これら機能構成部の処理の流れは、システムの接続方法としても理解できる。
ページ要求受信部11は、Webサイトを公開し、オペレータ側端末2Aから「ページ要求」を受信する。また、内部又は外部の認証機能を用いて、オペレータ側端末2Aに対して認証シーケンスを実行する。
デバイス接続要求部12は、ブローカ4に対してデバイス接続情報を指定し、建機側端末2B(オペレータ側端末2Aも可能)からのメッセージを受信できるようにする。設定したデバイス接続情報は、API応答部14へ出力する。
シグナリング接続要求部13は、ページ要求を受信した後、「シグナリング接続要求」をシグナリングサーバ3へ送信し、シグナリングサーバ3から、ランダムな識別子に基づいて作成されたルームサイトにおける「シグナリング接続情報」を受信する。受信したシグナリング接続情報は、API応答部14へ出力する。
API応答部14は、シグナリング接続情報(及びデバイス接続情報)を、オペレータ側端末2Aへ応答する。
接続情報通知部15は、シグナリング接続情報を、オペレータ側端末2Aと通信すべき建機側端末2Bへ通知する。このシグナリング接続情報は、デバイス接続情報に基づくメッセージによって、ブローカ4を介して建機側端末2Bへ通知される。
クラウドサーバ1の制御によって、建機側端末2Bの「映像」がシグナリングサーバ3のルームサイトを介してオペレータ側端末2Aへ転送されるようになる。また、オペレータ側端末2A及び建機側端末2Bそれぞれ相互に、制御信号を交換できるようになる。
図6は、オペレータが操作する端末の認証シーケンスを表すシーケンス図である。
前述したように、S1では、クラウドサーバ1は、オペレータ側端末2Aに対する認証機能を有する。認証機能は、内部又は外部のいずれにあってもよく、オペレータ側端末2Aに対して認証シーケンスを実行する。
図6によれば、S1の認証機能について、以下のステップが実行される。
(S11)クラウドサーバ1は、オペレータ側端末2Aからページ要求を受信した際に、「認証フォーム」をオペレータ側端末2Aへ送信する。認証フォームには、例えばオペレータ側端末2Aを操作するユーザに、認証情報(ユーザID及びパスワード)を入力させるものであってもよい。クラウドサーバ1は、オペレータ側端末2Aから、ユーザに入力された認証情報を受信し、認証成否を判定する。
(S12)クラウドサーバ1は、認証成功後、接続可能な「複数の建機側端末のリスト」をオペレータ側端末2Aへ送信する。オペレータ側端末2Aのディスプレイに、ブラウザによって、複数の建機側端末が表示され、いずれの建機側端末に接続するかを、ユーザに選択させる。図6によれば、ユーザによって、例えば建機側端末2Bが選択されている。これによって、オペレータ側端末2Aは、建機側端末2Bの識別子をクラウドサーバ1へ送信し、クラウドサーバ1は、建機側端末2Bが接続先として特定されたと認識する。
図7は、本発明におけるビデオ会議システムの構成図である。
図7によれば、図3と比較して、本発明をビデオ会議に適用したシステムであって、端末2Bも、ユーザ操作可能な端末となっている。これは、ビデオ会議が開始される毎に、ランダムな識別子に基づくルームサイトが提供される。
図1のように、従来技術としてのビデオ会議システムの場合、主催者は、会議室の接続情報をシグナリングサーバから予め取得し、その会議室の接続情報を参加者全員へメールやメッセージによって送信していた。本発明に基づく図7によれば、主催者のそのような操作を要することなく、会議室を作成する毎にランダムな接続情報が自動的に生成され、別途のメッセージ等を送信することなく、主催者及び参加者全員が、同一の会議室へ自動的に入室することができるようになる。
以上、詳細に説明したように、本発明の接続方法、クラウドサーバ及びプログラムによれば、シグナリングサーバのルームサイトを介した端末間で、できる限り悪意の第三者が侵入しないようにすることができる。

第1の課題に対しては、端末から建機へのコネクションが確立される毎に、異なる接続情報によって確立される。
また、第2の課題に対して、建機と端末との間で直接的な認証シーケンスを実行することなく、クラウドサーバによって端末を認証することができ、建機側で認証シーケンスを実行する必要がない。
更に、第3の課題に対して、端末から建機へ送信される操作信号については、極めて軽量なプロトコルに基づく送信を実現することができる。
前述した本発明の種々の実施形態について、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。
1 クラウドサーバ
11 ページ要求受信部
12 デバイス接続要求部
13 シグナリング接続要求部
14 API応答部
15 接続情報通知部
2A オペレータ側端末、第1の端末
2B 建機側端末、第2の端末
3 シグナリングサーバ
4 ブローカ

Claims (10)

  1. 第1の端末及び第2の端末に対してルームサイトを提供するシグナリングサーバを用いた接続方法であって、
    第1の端末、第2の端末及び前記シグナリングサーバと通信可能なクラウドサーバを更に有し、
    第1の端末が、前記クラウドサーバへページ要求を送信し、前記クラウドサーバとの間で認証シーケンスを実行した後、ユーザに第2の端末を選択させる第1のステップと、
    前記クラウドサーバが、シグナリング接続要求を、前記シグナリングサーバへ送信する第2のステップと、
    前記シグナリングサーバが、ランダムな識別子を発行し、当該識別子に基づくルームサイトを作成すると共に、当該識別子に基づくシグナリング接続情報を前記クラウドサーバへ応答する第3のステップと、
    前記クラウドサーバが、前記シグナリング接続情報を、第1の端末へ応答する第4のステップと、
    前記クラウドサーバが、前記シグナリング接続情報を、他の装置を介して第2の端末へ通知する第5のステップと
    を有し、第1の端末及び第2の端末をそれぞれ、前記シグナリング接続情報を用いて、前記シグナリングサーバのルームサイトを介して通信させることを特徴とする接続方法。
  2. 前記シグナリングサーバは、WebRTC(Web Real-Time Communication)に基づいて機能し、
    第1の端末は、Webサーバとして機能する前記クラウドサーバに対してブラウザによって通信し、
    前記識別子は、ルームサイト固有のルームID(IDentifier)であり、
    前記シグナリング接続情報は、シグナリングURL(Uniform Resource Locator)及びルームIDを含む
    ことを特徴とする請求項1に記載の接続方法。
  3. トピックに基づくメッセージを交換するブローカを更に有し、
    第2の端末は、前記ブローカに対して、デバイス接続情報を予め送信しており、
    第1のステップについて、前記クラウドサーバは、第1の端末と通信すべき第2の端末を特定した後、前記ブローカに対して、第2の端末の前記デバイス接続情報を送信し、
    第4のステップについて、前記クラウドサーバは、前記シグナリング接続情報と共に、前記デバイス接続情報を、第1の端末へ応答し、
    第1の端末及び第2の端末をそれぞれ、更に前記デバイス接続情報を用いて、前記ブローカを介して通信させることを特徴とする請求項1又は2に記載の接続方法。
  4. 前記ブローカは、MQTT(Message Queue Telemetry Transport)に基づいて機能し、
    前記デバイス接続情報は、ブローカURL及びトピックを含む
    ことを特徴とする請求項3に記載の接続方法。
  5. 第1のステップにおける認証機能について、
    前記クラウドサーバは、第1の端末からページ要求を受信した際に、認証フォームを第1の端末へ送信し、ユーザに認証情報を入力させ、当該認証情報を第1の端末から受信し、認証成否を判定する第11のステップと、
    前記クラウドサーバは、認証成功後、接続可能な複数の第2の端末のリストを第1の端末へ送信し、ユーザに第2の端末を選択させ、選択された第2の端末の端末識別子を第1の端末から受信し、第1の端末と通信すべき第2の端末を特定する第12のステップと
    を有することを特徴とする請求項1から4のいずれか1項に記載の接続方法。
  6. 請求項1からのいずれか1項に記載の接続方法について、
    第1の端末及び第2の端末は、ユーザ操作可能な端末であり、
    ビデオ会議が開始される毎に、ランダムな識別子に基づくルームサイトが提供される
    ことを特徴とするビデオ会議接続方法。
  7. 請求項1からのいずれか1項に記載の接続方法について、
    第1の端末は、ユーザインタフェースとして、ユーザ操作可能なタッチパネルディスプレイ、又は、ディスプレイとユーザ操作デバイスとのセット、を有する端末であり、
    第2の端末は、操作インタフェースとして、建機の操作部に取り付けられた操作制御装置を有し、視界インタフェースとして、建機の操縦席から見た映像を撮影するカメラを有する建機であり、
    第1の端末から第2の端末に対する遠隔操作が開始される毎に、ランダムな識別子に基づくルームサイトが提供される
    ことを特徴とする建機の遠隔操作方法。
  8. 第1の端末は、操作情報を、前記ブローカを介して第2の端末へ送信し、
    第2の端末は、状態情報を、前記ブローカを介して第1の端末へ送信すると共に、カメラによって撮影された映像を、前記シグナリングサーバを介して第1の端末へ送信する
    ことを特徴とする請求項に記載の建機の遠隔操作方法。
  9. 第1の端末及び第2の端末、ルームサイトを提供するシグナリングサーバと通信可能なクラウドサーバであって、
    第1の端末から、ページ要求を受信して認証シーケンスを実行した後、ユーザに第2の端末を選択させるページ要求受信手段と、
    第2の端末が選択された後、シグナリング接続要求を前記シグナリングサーバへ送信し、前記シグナリングサーバから、ランダムな識別子に基づいて作成されたルームサイトにおけるシグナリング接続情報を受信するシグナリング接続要求手段と、
    前記シグナリング接続情報を、第1の端末へ応答する応答手段と、
    前記シグナリング接続情報を、他の装置を介して第2の端末へ通知する接続情報通知手段と
    を有し、第1の端末及び第2の端末をそれぞれ、前記シグナリング接続情報を用いて、前記シグナリングサーバのルームサイトを介して通信させることを特徴とするクラウドサーバ。
  10. 第1の端末及び第2の端末、ルームサイトを提供するシグナリングサーバと通信可能なクラウドサーバに搭載されたコンピュータを機能させるプログラムであって、
    第1の端末から、ページ要求を受信して認証シーケンスを実行した後、ユーザに第2の端末を選択させるページ要求受信手段と、
    第2の端末が選択された後、シグナリング接続要求を前記シグナリングサーバへ送信し、前記シグナリングサーバから、ランダムな識別子に基づいて作成されたルームサイトにおけるシグナリング接続情報を受信するシグナリング接続要求手段と、
    前記シグナリング接続情報を、第1の端末へ応答する応答手段と、
    前記シグナリング接続情報を、他の装置を介して第2の端末へ通知する接続情報通知手段と
    してコンピュータを機能させ、第1の端末及び第2の端末をそれぞれ、前記シグナリング接続情報を用いて、前記シグナリングサーバのルームサイトを介して通信させることを特徴とするクラウドサーバのプログラム。
JP2021000659A 2021-01-06 2021-01-06 シグナリングサーバのルームサイトを介した端末間の接続方法、クラウドサーバ及びプログラム Active JP6877727B1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021000659A JP6877727B1 (ja) 2021-01-06 2021-01-06 シグナリングサーバのルームサイトを介した端末間の接続方法、クラウドサーバ及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021000659A JP6877727B1 (ja) 2021-01-06 2021-01-06 シグナリングサーバのルームサイトを介した端末間の接続方法、クラウドサーバ及びプログラム

Publications (2)

Publication Number Publication Date
JP6877727B1 true JP6877727B1 (ja) 2021-05-26
JP2022106014A JP2022106014A (ja) 2022-07-19

Family

ID=75961542

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021000659A Active JP6877727B1 (ja) 2021-01-06 2021-01-06 シグナリングサーバのルームサイトを介した端末間の接続方法、クラウドサーバ及びプログラム

Country Status (1)

Country Link
JP (1) JP6877727B1 (ja)

Also Published As

Publication number Publication date
JP2022106014A (ja) 2022-07-19

Similar Documents

Publication Publication Date Title
US11153393B2 (en) System capable of interacting with devices on a network
US11064163B2 (en) Networked monitor remote
US10447795B2 (en) System and method for collaborative telepresence amongst non-homogeneous endpoints
EP2122922B1 (en) Remote control using instant messaging
US9253129B2 (en) Instant messaging with browser collaboration
US11736611B2 (en) Visual engagement using automatically dynamically selected visualization mediums
US10878678B2 (en) Method and system for controlling cameras
EP3217596B1 (en) Communication terminal, communication system, and data transmission method
US10693924B2 (en) Method and system for connecting electronic devices
US20200014733A1 (en) User-centric connections to a location comprising digital collaboration tools
US11824942B2 (en) Communication system, information processing apparatus, and information processing method
JP6088632B1 (ja) 音声映像通信システム、サーバ、仮想クライアント、音声映像通信方法、および音声映像通信プログラム
US20030037102A1 (en) Message broker
US10277698B1 (en) Remote display using a proxy
KR101153059B1 (ko) 웹 브라우징 공유 시스템 및 방법
JP6877727B1 (ja) シグナリングサーバのルームサイトを介した端末間の接続方法、クラウドサーバ及びプログラム
JP2020087178A (ja) 情報処理装置、情報処理システム、情報処理方法及びプログラム
CN116600076B (zh) 视频会议的实现方法、装置、电子设备和存储介质
CN114422545B (zh) 一种远程协助处理方法和装置
CN114338633B (zh) 一种远程连接Linux服务器的方法及系统
KR20180108165A (ko) 웹객체를 이용한 화상회의 방법
JP6266502B2 (ja) 遠隔デスクトップ連携処理システム及びクライアント状態管理サーバ
JP2022122399A (ja) ネットワークシステム、情報処理方法、およびプログラム
CN118413633A (zh) 一种视频实时监控的方法、装置、介质及产品
JP4810066B2 (ja) Ctiシステム及びホスティング方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210106

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20210106

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20210202

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210212

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210223

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210420

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210420

R150 Certificate of patent or registration of utility model

Ref document number: 6877727

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250