JP6493236B2 - 通信方法、通信プログラム、及び、サーバ - Google Patents

通信方法、通信プログラム、及び、サーバ Download PDF

Info

Publication number
JP6493236B2
JP6493236B2 JP2016011634A JP2016011634A JP6493236B2 JP 6493236 B2 JP6493236 B2 JP 6493236B2 JP 2016011634 A JP2016011634 A JP 2016011634A JP 2016011634 A JP2016011634 A JP 2016011634A JP 6493236 B2 JP6493236 B2 JP 6493236B2
Authority
JP
Japan
Prior art keywords
conference
client
conference client
virtual
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.)
Expired - Fee Related
Application number
JP2016011634A
Other languages
English (en)
Other versions
JP2017135460A (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.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
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 Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2016011634A priority Critical patent/JP6493236B2/ja
Priority to US15/415,211 priority patent/US20170214724A1/en
Publication of JP2017135460A publication Critical patent/JP2017135460A/ja
Application granted granted Critical
Publication of JP6493236B2 publication Critical patent/JP6493236B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/765Media network packet handling intermediate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols

Description

本発明は、ネットワークを介して通信を行うことによって遠隔会議を実現するための通信方法、通信プログラム、及び、サーバに関する。
ネットワークに接続された複数の通信装置間で遠隔会議を行うためのシステムが知られている。特許文献1は、ユニバーサルブリッジ(UB)、複数のメディア中継エンドポイント(MRE)、及び、複数のレガシーエンドポイント(LEP)を備えたシステムを開示する。UBは、MREから送信された複数のストリームを受信してデコードし、結合する。以下、結合された複数のストリームを、「結合ストリーム」という。UBは、LEPにて使用されている圧縮規格に従って、結合ストリームをエンコードする。UBは、エンコードされた結合ストリームをLEPに対して送信する。
特開2014−68339号公報
通信方式の異なる通信装置間で通信を行うことによって遠隔会議を実現したいという要求がある。これに対し、特許文献1に記載された技術が適用される場合、デコード、結合、及び、エンコードを行うUBが必要となる。このため、UBを要せず、MREとLEPとの間の通信が既存の会議サーバ等を利用して実現されることが望ましい。
本発明の目的は、既存のシステム構成を利用しつつ、通信方式の異なる通信装置間で通信を行うことによって遠隔会議を実現可能な通信方法、通信プログラム、及び、サーバを提供することである。
本発明の第1態様に係る通信方法は、会議サーバを介して第1方式の通信によって遠隔会議を実行可能な複数の第1会議クライアントと、前記第1方式と異なる第2方式の通信によって遠隔会議を実行可能な第2会議クライアントとの間で遠隔会議を実行する場合の通信方法であって、前記会議サーバから第1通知を受信し、前記第1通知が受信されたことに応じて仮想会議クライアントを起動し、前記仮想会議クライアントと前記第2会議クライアントとを接続し、前記仮想会議クライアントと前記第2会議クライアントとが接続されたことに応じて、前記仮想会議クライアントと前記会議サーバとを接続し、前記会議サーバから前記第1方式で受信したデータを前記第2方式で前記第2会議クライアントに送信し、前記第2会議クライアントから前記第2方式で受信したデータを前記第1方式で前記会議サーバに送信し、前記仮想会議クライアントと前記第2会議クライアントとの間の接続を切断し、前記仮想会議クライアントと前記第2会議クライアントとの間の接続を切断した後、前記仮想会議クライアントと前記会議サーバとの接続の切断を要求する第1切断要求データを前記会議サーバに送信し、前記第1切断要求データを前記会議サーバに送信したことに応じて、前記仮想会議クライアントを終了することを特徴とする。
本発明の第2態様に係る通信プログラムは、会議サーバを介して第1方式の通信によって遠隔会議を実行可能な複数の第1会議クライアントと、前記第1方式と異なる第2方式の通信によって遠隔会議を実行可能な第2会議クライアントとの間で遠隔会議を実行するための通信プログラムであって、前記会議サーバから第1通知を受信する第1受信処理と、前記第1通知が受信されたことに応じて仮想会議クライアントを起動する起動処理と、起動された前記仮想会議クライアントと前記第2会議クライアントとを接続する第1接続処理と、前記仮想会議クライアントと前記第2会議クライアントとが接続されたことに応じて、前記仮想会議クライアントと前記会議サーバとを接続する第2接続処理と、前記仮想会議クライアントと前記第2会議クライアントとの間の接続を切断する切断処理と、前記仮想会議クライアントと前記第2会議クライアントとの間の接続を切断した後、前記仮想会議クライアントと前記会議サーバとの接続の切断を要求する第1切断要求データを前記会議サーバに送信する第2送信処理と、前記第1切断要求データを前記会議サーバに送信したことに応じて、前記仮想会議クライアントを終了させる第1終了処理とを、コンピュータに実行させる。
本発明の第3態様に係る通信プログラムは、会議サーバを介して第1方式の通信によって遠隔会議を実行可能な複数の第1会議クライアントと、前記第1方式と異なる第2方式の通信によって遠隔会議を実行可能な第2会議クライアントとの間で遠隔会議を実行するための通信プログラムであって、前記会議サーバから、第1通知を受信する第1受信処理と、前記第1通知が受信されたことに応じて仮想会議クライアントを起動する起動処理と、起動された前記仮想会議クライアントと前記第2会議クライアントとを接続する第1接続処理と、前記仮想会議クライアントと前記第2会議クライアントとが接続されたことに応じて、前記仮想会議クライアントと前記会議サーバとを接続する第2接続処理とを、コンピュータに実行させ、前記第1通知は、前記仮想会議クライアントの起動を要求する起動要求データであり、前記第1接続処理は、前記第2会議クライアントから前記仮想会議クライアントに対して送信された第3接続要求データを受信することによって、前記仮想会議クライアントと前記第2会議クライアントとを接続し、前記第3接続要求データは、前記会議サーバによって実行される仮想会議室を識別する識別情報を含み、前記仮想会議クライアントとの接続を要求するデータであり、前記第2接続処理は、前記第2会議クライアントから送信された前記第3接続要求データを受信したことに応じて、前記仮想会議クライアントと前記会議サーバとを接続し、起動する前記仮想会議クライアントのアドレス情報を前記会議サーバに送信する第1送信処理と、前記会議サーバに送信した前記アドレス情報を記憶部に記憶する記憶処理と、前記アドレス情報の削除を要求する削除要求データを、前記会議サーバから受信する第2受信処理と、前記削除要求データを受信したことに応じて、前記仮想会議クライアントを終了させる第2終了処理とを、前記コンピュータに更に実行させる。
本発明の第態様に係るサーバは、第1方式の通信によって遠隔会議を実行可能な複数の第1会議クライアントと、前記第1方式と異なる第2方式の通信によって遠隔会議を実行可能な第2会議クライアントとの通信が可能なサーバであって、第1通知を受信し、前記第1通知が受信されたことに応じて仮想会議クライアントを起動し、前記仮想会議クライアントと前記第2会議クライアントとを接続し、前記仮想会議クライアントと前記第2会議クライアントとが接続されたことに応じて、前記仮想会議クライアントと会議サーバとを接続し、前記会議サーバから前記第1方式で受信したデータを前記第2方式で前記第2会議クライアントに送信し、前記第2会議クライアントから前記第2方式で受信したデータを前記第1方式で前記会議サーバに送信し、前記仮想会議クライアントと前記第2会議クライアントとの間の接続を切断し、前記仮想会議クライアントと前記第2会議クライアントとの間の接続を切断した後、前記仮想会議クライアントと前記会議サーバとの接続の切断を要求する第1切断要求データを前記会議サーバに送信し、前記第1切断要求データを前記会議サーバに送信したことに応じて、前記仮想会議クライアントを終了させることを特徴とする。
第1〜第態様によれば、会議サーバは、第1通知を受信したことに応じて、仮想会議クライアントを起動する。仮想会議クライアントは、第2会議クライアントと接続し、更に、会議サーバと接続する。この場合、会議サーバは、実在する会議クライアントと通信を行う場合と同様の方法で仮想会議クライアントと通信を行うことによって、複数の第1会議クライアント及び第2会議クライアントとの間で遠隔会値を実現できる。なお、上記の通信方法において、仮想会議クライアントは実在しない。このため、上記の通信方法によれば、既存のシステム(例えば会議サーバ)を利用しつつ、異なるシステム間で遠隔会議を実行させることができる。更に、上記の通信方法は、第2会議クライアントの数が増加した場合の拡張性において優れている。即ち、第2会議クライアントの数が増加した場合でも、会議サーバをそのまま維持しつつ、それぞれの第2会議クライアントと複数の第1会議クライアントとの間の通信を仲介する仮想会議クライアントを追加することで対応できる。このため、第2会議クライアントの増加に伴って会議サーバを増加する必要がない。
通信システム1の概要、及び、サーバ25の電気的構成を示す図である。 会議クライアント20の電気的構成を示すブロック図である。 会議クライアント20の機能ブロック図である。 仮想会議クライアント28の機能ブロック図である。 第1開始シーケンスを示す図である。 第2開始シーケンスを示す図である。 第1終了シーケンスを示す図である。 第2終了シーケンスを示す図である。 第3終了シーケンスを示す図である。 再接続シーケンスを示す図である。 通信システム1Aの概要を示す図である。
<通信システム1の概要>
図1を参照し、通信システム1について説明する。通信システム1には、互いに異なる複数の会議システム10が含まれる。又、各会議システム10には会議クライアント20が少なくとも含まれる。共通する会議システム10に含まれる会議クライアント20のそれぞれのユーザは、仮想会議室に参加することによって互いにWeb会議を実行可能である。各会議クライアント20は、周知のPersonal Computer(PC)に対してWeb会議アプリケーションのプログラムをインストールすることで構成される。以下、会議クライアント20のそれぞれのユーザ間でWeb会議が実行されることを、「会議クライアント20間でWeb会議が実行される。」と言い換える。
本実施形態では、3つの会議システム10(第1会議システム11、第2会議システム12、及び、第3会議システム13)が通信システム1に含まれる場合を例示する。第1会議システム11には、サーバ25、及び、第1会議クライアント211、212が含まれる。サーバ25は、第1会議クライアント211、212間でWeb会議を実行させる。サーバ25は、Multi-point Control Unit(MCU)又は公知のサーバに対して専用アプリケーションのプログラムをインストールすることで構成される。第2会議システム12には、第2会議クライアント22、及び、非図示の他の第2会議クライアントが含まれる。第3会議システム13には、第3会議クライアント23、及び、非図示の他の第3会議クライアントが含まれる。会議システム10間、及び、各会議システム10に含まれるサーバ25及び会議クライアント20は、非図示のネットワークを介してそれぞれ相互に接続される。
それぞれの会議システム10は、Web会議のためにシステム内で実行される通信の方式が、他の会議システム10と異なる。ここでの通信方式とは、アプリケーション層で動作する通信プロトコルのことを意味する。通信方式の具体例として、H323、SIP、H245、独自プロトコル等がある。具体的には次の通りである。第1会議システム11において、第1会議クライアント211、212(以下、総称して「第1会議クライアント21」ともいう。)は、サーバ25との間で第1方式の通信を行う。これによって第1会議クライアント21間でWeb会議が実行される。第2会議システム12において、第2会議クライアント22は、直接又はサーバを介して、他の第2会議クライアントとの間で第2方式の通信を行う。これによって、第2会議クライアント22及び他の第2会議クライアント間でWeb会議が実行される。第3会議システム13において、第3会議クライアント23は、直接又はサーバを介して、他の第3会議クライアントとの間で第3方式の通信を行う。これによって、第3会議クライアント23及び他の第3会議クライアント間でWeb会議が実行される。第1方式〜第3方式は、それぞれ異なる通信方式である。
通信方式の異なる会議クライアント20間でWeb会議を実行するために、サーバ25は、次の(1)から(3)の処理を実行する。なお以下、サーバ25にインストールされるプログラムのうち、次の各処理に対応するプログラムの実行単位を、「プロセス」という。
(1)第1会議クライアント21との間で第1方式の通信を行うことによって、第1会議クライアント21間でWeb会議を実行させる処理
(2)第2会議クライアント22と第2方式の通信を行うことによって、第1会議クライアント21と第2会議クライアント22との間でWeb会議を実行させる処理、又は、第3会議クライアント23と第3方式で通信を行うことによって、第1会議クライアント21と第3会議クライアント23との間でWeb会議を実行させる処理
(3)(2)に対応するプロセスを起動する処理
(1)に対応するプロセスは、第1会議システム11内において、第1会議クライアント21と第1方式の通信を行い、それぞれの間でWeb会議を実行させる。以下、このプロセスを「会議サーバ26」という。会議サーバ26は、Web会議における会議サーバの機能、即ち、複数の第1会議クライアント21がWeb会議を実行する場合に、複数の第1会議クライアント21間で送受信されるメディアデータを転送する機能を実現する。
(2)の処理を実行するためのプロセスとして、サーバ25では、仮想会議クライアント282、283が実行される。仮想会議クライアント282は、第2会議クライアント22と第2方式の通信を行うことによって、第1会議クライアント21と第2会議クライアント22との間で会議サーバ26を介したWeb会議を実行させる。仮想会議クライアント282は、第2会議クライアント22と同等の処理を実行する。このため、第2会議クライアント22は、第2会議システム12に含まれる他の第2会議クライアントと通信を行う場合と同じ通信方式で、仮想会議クライアント282と通信を行うことができる。仮想会議クライアント282が第2会議クライアント22と異なる点は、会議サーバ26と第1方式の通信を行うこともできるという点である。つまり、仮想会議クライアント282は、会議サーバ26と第1方式の通信ができると同時に、第2会議クライアント22と第2方式の通信ができる。その結果、第2会議クライアント22と会議サーバ26との間で、仮想会議クライアント282を介して通信が行われることになる。
仮想会議クライアント283は、第3会議クライアント23と第3方式の通信を行うことによって、第1会議クライアント21と第3会議クライアント23との間で会議サーバ26を介したWeb会議を実行させる。仮想会議クライアント283は、第3会議クライアント23と同等の処理を実行する。このため、第3会議クライアント23は、第3会議システム13に含まれる他の第3会議クライアントと通信を行う場合と同じ通信方式で、仮想会議クライアント283と通信を行うことができる。仮想会議クライアント283が第3会議クライアント23と異なる点は、会議サーバ26と第1方式の通信を行うこともできるという点である。つまり、仮想会議クライアント283は、会議サーバ26と第1方式の通信ができると同時に、第3会議クライアント23と第3方式の通信ができる。その結果、第3会議クライアント23と会議サーバ26との間で、仮想会議クライアント283を介して通信が行われることになる。
なお、会議サーバ26と仮想会議クライアント282、283との間のデータの通信は、プロセス間のデータの交換に対応し、ネットワークを介した実際の通信と異なる。以下、サーバ25の各プロセス間でデータが交換されることを、「データが送受信される。」という。仮想会議クライアント282、283を総称して「仮想会議クライアント28」という。なお、会議サーバ26と仮想会議クライアント28との間の通信に、ネットワークを介して行う通信と同じプロトコルが用いられてもよい。又、仮想会議クライアント28は、後述するハードウェアデバイス(キーボード/マウス32、モニタ33、カメラ34、スピーカ35、マイク36、図2参照)を有さないという点においても、会議クライアント20と異なる。
(3)の処理を実行するためのプロセスとして、サーバ25では、仮想会議クライアントマネージャ27が実行される。仮想会議クライアントマネージャ27は、会議サーバ26からの指示に応じて仮想会議クライアント28を起動する。
以上のように、サーバ25は、第1会議クライアント21、第2会議クライアント22、及び、第3会議クライアント23間の相互の通信を、上記の各プロセス(会議サーバ26、仮想会議クライアントマネージャ27、及び、仮想会議クライアント28)によって実行させることが可能となる。これによって、サーバ25は、第1会議クライアント21、第2会議クライアント22、及び、第3会議クライアント23間でWeb会議を実行させることが可能となる。
<会議クライアント20の電気的構成>
図2を参照し、会議クライアント20の電気的構成について説明する。会議クライアント20は制御部31を備える。制御部31は、会議クライアント20による制御全体を司る。制御部31は、非図示のCPU、ROM、RAMを含む。又、制御部31は、後述する各機能の一部(ビデオデコーダ314、ビデオエンコーダ315、オーディオデコーダ317、及び、オーディオエンコーダ318、図3参照)がハードウェアによって達成される場合、その機能を実現するための電子回路(ASIC等)を含んでもよい。制御部31は、キーボード/マウス32、モニタ33、カメラ34、スピーカ35、マイク36、インタフェース37、及び、記憶部38と電気的に接続する。
キーボード/マウス32は、操作内容に応じた操作信号を制御部31に出力する。カメラ34は、映像を撮影し、撮影された映像のデータ(「映像データ」という。)を制御部31に出力する。モニタ33は、制御部31から出力された映像データに応じた映像を表示させる。マイク36は、音を集音し、集音された音のデータ(「音データ」という。)を制御部31に出力する。スピーカ35は、制御部31から出力された音データに応じた音を出力させる。インタフェース37は、会議クライアント20がネットワークと接続するためのインタフェース素子(例えば、LANカードなど)である。制御部31は、インタフェース37を介して、サーバ25及び他の会議クライアント20とデータの送受信を行う。
記憶部38は、コンピュータが読み取り可能な非一時的な記憶媒体、たとえは、ハードディスク等で構成される。記憶部38には、プログラム、及びOSが記憶される。但し、記憶部38は、例えば、フラッシュメモリ及び/又はROM等、他の非一時的な記憶媒体で構成されてもよい。非一時的な記憶媒体は、情報を記憶する期間に関わらず、情報を記憶可能な記憶媒体であればよい。非一時的な記憶媒体は、一時的な記憶媒体(例えば、伝送される信号)を含まなくてもよい。
図3は、制御部31によるソフトウェア処理によって実現される各機能、及び、データの流れを示す。制御部31は、コマンド制御部311、レイアウトマネージャ313、ビデオデコーダ314、ビデオエンコーダ315、オーディオミキサ316、オーディオデコーダ317、及び、オーディオエンコーダ318のそれぞれに対応する機能を実現可能である。なお、上記のように、ビデオデコーダ314、ビデオエンコーダ315、オーディオデコーダ317、及び、オーディオエンコーダ318は、制御部31に含まれる電子回路によるハードウェア処理によって実現されてもよい。
ビデオデコーダ314は、インタフェース37(図2参照)を介して受信された映像データをデコードする。ビデオエンコーダ315は、カメラ34(図2参照)から出力された映像データをエンコードする。オーディオデコーダ317は、インタフェース37(図2参照)を介して受信された音データをデコードする。オーディオエンコーダ318は、マイク36(図2参照)から出力された音データをエンコードする。
第1会議クライアント21の場合、映像データ及び音データは第1コーデックによってエンコード又はデコードされる。第2会議クライアント22の場合、映像データ及び音データは第2コーデックによってエンコード又はデコードされる。第3会議クライアント23の場合、映像データ及び音データは第3コーデックによってエンコード又はデコードされる。第1コーデック、第2コーデック、第3コーデックは、エンコード及びデコードを双方向に行うためのアルゴリズムを示す。第1コーデック、第2コーデック、第3コーデックはそれぞれ相違する。
レイアウトマネージャ313は、映像データに基づく映像をモニタ33(図2参照)に表示可能なように配列する。レイアウトマネージャ313によって配列された映像を含む映像データは、モニタ33に出力される。コマンド制御部311は、キーボード/マウス32(図2参照)から出力される操作信号に基づき、映像が配列されるときの規則をレイアウトマネージャ313に設定する。オーディオミキサ316は、音データに基づく音を混ぜ合わせて1つの音にまとめる。オーディオミキサ316によってまとめられた音の音データは、スピーカ35(図2参照)に出力される。
<サーバ25の電気的構成>
図1を参照し、サーバ25の電気的構成について説明する。サーバ25は制御部51を備える。制御部51は、サーバ25による制御全体を司る。制御部51は、非図示のCPU、ROM、RAMを含む。又、制御部51は、後述する各機能の一部(ビデオデコーダ514、522、ビデオエンコーダ515、521、オーディオデコーダ517、524、及び、オーディオエンコーダ518、523、図4参照)がハードウェアによって達成される場合、その機能を実現するための電子回路(ASIC等)を含んでもよい。制御部51は、インタフェース57、58、及び、記憶部59と電気的に接続する。
インタフェース57、58は、サーバ25がネットワークと接続するためのインタフェース素子(例えば、LANカードなど)である。制御部51は、インタフェース57、58を介して複数の会議クライアント20とデータの送受信を行う。図4では、第1会議クライアント21とネットワークを介して接続するためのインタフェース57と、第2会議クライアント22及び第3会議クライアント23とネットワークを介して接続するためのインタフェース58とが区別されている。なお、インタフェース57、58は共通であってもよい。
記憶部59は、コンピュータが読み取り可能な非一時的な記憶媒体、たとえは、ハードディスク等で構成される。記憶部59には、プログラム、及びOSが記憶される。なお、前述の各プロセス(会議サーバ26、仮想会議クライアントマネージャ27、仮想会議クライアント28)は、それぞれ、記憶部59に記憶されたプログラムの一部であって制御部51によって実行されるプログラムの一部に対応する。但し、記憶部59は、例えば、フラッシュメモリ及び/又はROM等、他の非一時的な記憶媒体で構成されてもよい。非一時的な記憶媒体は、情報を記憶する期間に関わらず、情報を記憶可能な記憶媒体であればよい。非一時的な記憶媒体は、一時的な記憶媒体(例えば、伝送される信号)を含まなくてもよい。
図4は、制御部51によって仮想会議クライアント28が実行された場合にソフトウェア処理によって実現される各機能、及び、データの流れを示す。制御部51は、コマンド制御部511、ビデオミキサ512、レイアウトマネージャ513、ビデオデコーダ514、522、ビデオエンコーダ515、521、オーディオミキサ516、オーディオデコーダ517、524、及び、オーディオエンコーダ518、523のそれぞれに対応する機能を実現可能である。なお、上記のように、ビデオデコーダ514、522、ビデオエンコーダ515、521、オーディオデコーダ517、524、及び、オーディオエンコーダ518、523は、制御部51に含まれる電子回路によるハードウェア処理によって実現されてもよい。
コマンド制御部511、レイアウトマネージャ513、ビデオデコーダ514、ビデオエンコーダ515、オーディオミキサ516、オーディオデコーダ517、及び、オーディオエンコーダ518は、それぞれ、会議クライアント20の制御部31によって実現される複数の機能(図3参照)のうち、コマンド制御部311、レイアウトマネージャ313、ビデオデコーダ314、ビデオエンコーダ315、オーディオミキサ316、オーディオデコーダ317、及び、オーディオエンコーダ318に対応する。コーデックとして、第1コーデック、第2コーデック、第3コーデックの何れかが使用される。
制御部51によって実現される仮想会議クライアント28の各機能が、会議クライアント20の制御部31によって実現される各機能(図3参照)と異なる点は、ビデオエンコーダ521、ビデオミキサ512、ビデオデコーダ522、オーディオエンコーダ523、及び、オーディオデコーダ524が更に実現される点である。なお、ビデオエンコーダ521及びビデオミキサ512は、会議クライアント20におけるモニタ33の機能を仮想的に実現する。ビデオデコーダ522は、会議クライアント20におけるカメラ34の機能を仮想的に実現する。オーディオエンコーダ523は、会議クライアント20におけるスピーカ35の機能を仮想的に実現する。オーディオデコーダ524は、会議クライアント20におけるマイク36の機能を仮想的に実現する。つまり、仮想会議クライアント28において、会議クライアント20におけるハードウェアデバイス(キーボード/マウス32、モニタ33、カメラ34、スピーカ35、マイク36、図2参照)の機能は、ビデオエンコーダ521、ビデオミキサ512、ビデオデコーダ522、オーディオエンコーダ523、及び、オーディオデコーダ524によって実現される。
<Web会議時の通信/第1会議クライアント21間>
第1会議クライアント21間でWeb会議が実行される場合における通信の概要について説明する。第1会議クライアント211の制御部31は、カメラ34から出力された映像データを取得する。図3に示すように、制御部31は、取得された映像データをビデオエンコーダ315によってエンコードする。映像データは、第1コーデックによってエンコードされる。制御部31は、エンコードされた映像データを、インタフェース37を介して、サーバ25の制御部51によって実行される会議サーバ26(以下、単に「会議サーバ26」という。)に第1方式で送信する。
図1に示すように、会議サーバ26は、第1会議クライアント211から送信された映像データを、インタフェース57を介して受信する(S11)。会議サーバ26は、受信された映像データを、インタフェース57を介して第1会議クライアント212に第1方式で送信する(S35)。
図3に示すように、第1会議クライアント212の制御部31は、会議サーバ26から送信された映像データを、インタフェース37を介して受信する。制御部31は、受信された映像データをビデオデコーダ314によってデコードする。映像データは、第1コーデックによってデコードされる。制御部31は、デコードされた映像データに基づく映像と、カメラ34から出力された映像データに基づく映像とを、レイアウトマネージャ313によって配列する。具体的には、例えば、第1会議クライアント211のカメラ34によって撮影された映像と、第1会議クライアント212のカメラ34によって撮影された映像とが並んで配置される。制御部31は、配列された映像の映像データをモニタ33に出力する。モニタ33は、制御部31から出力された映像データに基づき、配列された映像を表示させる。
第1会議クライアント211の制御部31によって、マイク36から出力された音データが取得される。図3に示すように、制御部31は、取得された音データをオーディオエンコーダ318によってエンコードする。音データは、第1コーデックによってエンコードされる。制御部31は、エンコードされた音データを、インタフェース37を介して会議サーバ26に第1方式で送信する。図1に示すように、会議サーバ26は、第1会議クライアント211から送信された音データを、インタフェース57を介して受信する(S11)。会議サーバ26は、受信された音データを、インタフェース57を介して第1会議クライアント212に第1方式で送信する(S35)。
第1会議クライアント212の制御部31は、会議サーバ26から送信された音データを、インタフェース37を介して受信する。図3に示すように、制御部31は、受信された音データをオーディオデコーダ317によってデコードする。音データは、第1コーデックによってデコードされる。制御部31は、デコードされた音データに基づく音と、マイク36から出力された音データに基づく音とを、オーディオミキサ316によってミキシングする。この場合、第1会議クライアント211のマイク36によって集音された音と、第1会議クライアント212のマイク36によって集音された音とを両方含む音の音データが生成される。制御部31は、生成された音データをスピーカ35に出力する。スピーカ35は、制御部31から出力された音データに基づき、音を出力する。
なお、詳細な説明は省略するが、第1会議クライアント212から映像データ及び音データが送信されて第1会議クライアント211によって受信され、第1会議クライアント211において映像及び音が出力される場合についても、上記と同様の処理が実行される(S25、S31)。
<Web会議時の通信/第1会議クライアント21−第2会議クライアント22間>
第1会議クライアント21と第2会議クライアント22との間でWeb会議が実行される場合における通信の概要について説明する。第1会議クライアント21間でWeb会議が実行される場合における通信と同一の内容については、説明を省略又は簡略化する。
図1に示すように、会議サーバ26は、第1会議クライアント211から送信された映像データを、インタフェース57を介して第1方式で受信する(S11)。会議サーバ26は、受信された映像データを、インタフェース57を介して第1会議クライアント212に第1方式で送信する(S35)。同様に、会議サーバ26は、第1会議クライアント212から送信された映像データを、インタフェース57を介して第1方式で受信する(S31)。会議サーバ26は、受信された映像データを、インタフェース57を介して第1会議クライアント211に第1方式で送信する(S25)。
会議サーバ26は、第1会議クライアント211、212からそれぞれ受信された映像データを、制御部51によって実行される仮想会議クライアント282(以下、単に「仮想会議クライアント282」という。)に第1方式で送信する(S13)。このように、会議サーバ26は、映像データの送信先が第1会議クライアント21であるか仮想会議クライアント282であるかに関わらず、共通の通信方式(第1方式)で映像データを送信できる。仮想会議クライアント282は、映像データを第1方式で受信する(S15)。
図4に示すように、仮想会議クライアント282は、第1会議クライアント211から送信された映像データと、第1会議クライアント212から送信された映像データとをそれぞれ、ビデオデコーダ514によってデコードする。映像データは、第1コーデックによってデコードされる。仮想会議クライアント282は、デコードされた2つの映像データに基づく映像を、レイアウトマネージャ513によって配列する。仮想会議クライアント282は、配列された2つの映像を、ビデオミキサ512によってミキシングし、映像ミキシングデータを生成する。仮想会議クライアント282は、生成された映像ミキシングデータを、ビデオエンコーダ521によってエンコードする。映像ミキシングデータは、第2コーデックによってエンコードされる。図1に示すように、仮想会議クライアント282は、エンコードされた映像ミキシングデータを、インタフェース58を介して第2会議クライアント22に第2方式で送信する(S17)。
上記において、仮想会議クライアント282は、会議クライアント20におけるモニタ33の機能を、ビデオエンコーダ521及びビデオミキサ512によって仮想的に実現する。つまり、仮想会議クライアント282は、モニタ33に映像データを出力する場合と同じ方法で、ビデオエンコーダ521及びビデオミキサ512のモジュールに映像データを出力する。これによって、ビデオミキサ512によって映像ミキシングデータが生成され、且つ、ビデオエンコーダ521によって映像ミキシングデータがエンコードされる。
第2会議クライアント22の制御部31は、仮想会議クライアント282から送信された映像ミキシングデータを、インタフェース37を介して第2方式で受信する。このように、制御部31は、他の第2会議クライアントから映像データが受信される場合と同じ通信方式(第2方式)で、仮想会議クライアント282から映像ミキシングデータを受信できる。
図3に示すように、制御部31は、受信された映像ミキシングデータを、ビデオデコーダ314によってデコードする。映像ミキシングデータは、第2コーデックによってデコードされる。なお、映像ミキシングデータは、仮想会議クライアント282において第2コーデックによってエンコードされている。このため、制御部31は、第2コーデックによって映像ミキシングデータのデコードを適切に実行できる。
制御部31は、デコードされた映像ミキシングデータに基づく映像と、カメラ34から出力された映像データに基づく映像とを、レイアウトマネージャ313によって配列する。例えば、第1会議クライアント211、212のそれぞれのカメラ34によって撮影された2つの映像と、第2会議クライアント22のカメラ34によって撮影された映像とが並んで配置される。制御部31は、配列された映像の映像データを、モニタ33に出力する。モニタ33は、制御部31から出力された映像データに基づき、配列された映像を表示させる。
第2会議クライアント22の制御部31は、カメラ34から出力された映像データを取得する。制御部31は、取得された映像データを、ビデオエンコーダ315によってエンコードする。映像データは、第2コーデックによってエンコードされる。制御部31は、エンコードされた映像データを、インタフェース37を介して仮想会議クライアント282に第2方式で送信する。図1に示すように、仮想会議クライアント282は、第2会議クライアント22から送信された映像データを、インタフェース58を介して受信する(S19)。
図4に示すように、仮想会議クライアント282は、受信された映像データをビデオデコーダ522によってデコードする。映像データは、第2コーデックによってデコードされる。なお、仮想会議クライアント282は、会議クライアント20におけるカメラ34の機能を、ビデオデコーダ522によって仮想的に実現する。つまり、仮想会議クライアント282は、カメラ34から出力される映像データを取得する場合と同じ方法で、ビデオデコーダ522によってデコードされた映像データを取得する。
仮想会議クライアント282は、デコードされた映像データをビデオエンコーダ515によってエンコードする。映像データは、第1コーデックによってエンコードされる。図1に示すように、仮想会議クライアント282は、エンコードされた映像データを会議サーバ26に第1方式で送信する(S21)。
会議サーバ26は、仮想会議クライアント282から送信された映像データを第1方式で受信する(S23)。このように、会議サーバ26は、第1会議クライアント21から映像データが受信される場合と同じ通信方式(第1方式)で、仮想会議クライアント282から映像ミキシングデータを受信できる。会議サーバ26は、受信された映像データを、インタフェース57を介して第1会議クライアント211、212に第1方式で送信する(S25、S35)。
第1会議クライアント211の制御部31は、会議サーバ26及び第1会議クライアント212からそれぞれ送信された映像データを、インタフェース37を介して受信する。制御部31は、受信された映像データを、ビデオデコーダ314によってデコードする。映像データは、第1コーデックによってデコードされる。なお、映像データは、仮想会議クライアント282において第1コーデックによってエンコードされている。このため、制御部31は、第1コーデックによって映像データのデコードを適切に実行できる。
図3に示すように、制御部31は、デコードされた映像データに基づく映像と、カメラ34から出力された映像データに基づく映像とを、レイアウトマネージャ313によって配列する。例えば、第1会議クライアント211、212のそれぞれのカメラ34によって撮影された2つの映像と、第2会議クライアント22のカメラ34によって撮影された映像とが並んで配置される。制御部31は、配列された映像の映像データを、モニタ33に出力する。モニタ33は、制御部31から出力された映像データに基づき、配列された映像を表示させる。
なお、詳細な説明は省略するが、第1会議クライアント212において会議サーバ26から送信された映像データが受信された場合についても、上記と同様の処理が実行され、モニタ33に映像が表示される。
図4において、音データに対する処理を実行するオーディオミキサ516、オーディオデコーダ517、524、及び、オーディオエンコーダ518、523は、それぞれ、映像データに対する処理を実行するビデオミキサ512、ビデオデコーダ514、522、ビデオエンコーダ515、521に対応する。音データに対応する通信の処理の詳細な説明は省略する。以下、映像データ及び音データを総称して、「メディアデータ」という。映像ミキシングデータ、及び、オーディオミキサ516によってミキシングされた音データを総称し、「ミキシングデータ」という。
又、第1会議クライアント21と第3会議クライアント23との間でWeb会議が実行される場合、上記の仮想会議クライアント282による処理と略同一処理が、仮想会議クライアント283によって実行される。仮想会議クライアント283の処理が仮想会議クライアント282の処理と異なる点は、メディアデータをエンコード又はデコードする場合において、第2コーデックの代わりに第3コーデックが使用される点である。
<Web会議開始時の通信シーケンス>
図5、図6を参照し、第1会議クライアント211と第2会議クライアント22との間でWeb会議が開始される場合の通信手順(第1開始シーケンス(図5参照)、及び、第2開始シーケンス(図6参照))について説明する。第1会議システム11の第1会議クライアント21間でWeb会議が開始されていることを前提とする。又、サーバ25の制御部51において、会議サーバ26及び仮想会議クライアントマネージャ27が起動され、仮想会議クライアント28は起動されていない状態であることを前提とする。
第1会議クライアント21間でWeb会議が開始される場合の通信手順の概要は、次の通りである。第1会議クライアント211、212のそれぞれのユーザは、仮想会議室(以下、単に「会議室」という。)を利用するための所定の操作を行う。所定の操作は、周知のWeb会議システムにおいて会議室が利用される場合にユーザによって行われる操作と同一である。例えば、所定の操作は、サーバ25から第1会議クライアント21に対して予め通知されたURLを選択する操作である。このURLには、例えば、参加する会議室を識別する会議IDが含まれる。この場合、第1会議クライアント21とサーバ25との間でネットワークを介した通信が行われ、周知の会議接続の処理が実行される。会議接続の処理によって、第1会議クライアント21とサーバ25との間でセッションが確立され、会議室を利用したWeb会議が可能になる。以下、サーバ25と会議クライアント20との間でWeb会議の実行を可能とするための会議接続を、「第1会議接続」という。第1会議接続が完了した後、第1会議クライアント21間で、会議IDに対応する会議室を用いたWeb会議の実行が可能となる。
<第1開始シーケンス>
図5を参照し、第1開始シーケンスについて説明する。第1会議クライアント211のユーザは、第2会議システム12内の第2会議クライアント22と第1会議クライアント211との間の会議接続を要求する指示を、キーボード/マウス32を介して入力する。同時にユーザは、第2会議クライアント22のアドレス情報を、キーボード/マウス32を介して入力する。アドレス情報の具体例として、第2会議クライアント22のIPアドレスが挙げられる。
第1会議クライアント211の制御部31は、第1会議システム11外の会議クライアント20と第1会議クライアント211の会議接続を要求するデータ(「第1接続要求データ」という。)を、会議サーバ26に送信する(P11a)。第1接続要求データには、第2会議クライアント22のアドレス情報が含められる。会議サーバ26は、第1会議クライアント211から送信された第1接続要求データを第1方式で受信する(P11b)。
会議サーバ26は、受信された第1接続要求データを、制御部51によって実行される仮想会議クライアントマネージャ27(以下、単に「仮想会議クライアントマネージャ27」という。)に送信する(P13a)。仮想会議クライアントマネージャ27は、会議サーバ26から送信された第1接続要求データを第1方式で受信する(P13b)。仮想会議クライアントマネージャ27は、仮想会議クライアント282を起動する(P15)。
第1接続要求データが受信されたことに応じて仮想会議クライアント282が起動された場合、仮想会議クライアント282は、起動が完了したことを通知するデータ(「起動完了通知データ」という。)を仮想会議クライアントマネージャ27に送信する(P17a)。仮想会議クライアントマネージャ27は、仮想会議クライアント282から送信された起動完了通知データを第1方式で受信する(P17b)。
仮想会議クライアントマネージャ27は、会議サーバ26から受信された第1接続要求データを仮想会議クライアント282に送信する(P19a)。仮想会議クライアント282は、仮想会議クライアントマネージャ27から送信された第1接続要求データを第1方式で受信する(P19b)。
仮想会議クライアント282は、受信された第1接続要求データに含まれるアドレス情報を取得する。仮想会議クライアント282は、取得されたアドレス情報によって特定される第2会議クライアント22に対し、仮想会議クライアント282との会議接続を要求するデータ(以下、「第2接続要求データ」という。)を送信する(P21a)。第2会議クライアント22は、第2接続要求データを第2方式で受信する(P21b)。
なお、仮想会議クライアント282及び第2会議クライアント22が、複数の通信方式に対応している場合、第2方式は、第1会議クライアント211によって指定されてよい。例えば、P11aにおいて第1会議クライアント211が送信する第1接続要求データに、第2方式を特定する情報が含まれてよい。あるいは、仮想会議クライアント282は、複数の通信方式から、第2方式を自動的に選択してもよい。例えば、P21aにおいて、仮想会議クライアント282は、複数の通信方式のそれぞれを用いて、順次、第2接続要求データを第2会議クライアント22に送信する。第2会議クライアント22が対応している通信方式が用いられた場合、第2会議クライアント22は、第2接続要求データを受信し、第1接続完了データを仮想会議クライアント282に対して送信することができる(P23a)。仮想会議クライアント282は、P23bにおいて第1接続完了データを受信した際に用いた通信方式を、第2方式として決定してよい。
仮想会議クライアント282と第2会議クライアント22との間で、ネットワークを介した通信が行われ、周知の会議接続の処理が実行される。以下、仮想会議クライアント28と会議クライアント20との間でWeb会議の実行を可能とするための会議接続を、「第2会議接続」という。第2会議クライアント22は、第2会議接続の完了を通知するデータ(「第1接続完了データ」という。)を仮想会議クライアント282に送信する(P23a)。仮想会議クライアント282は、第2会議クライアント22から送信された第1接続完了データを第2方式で受信する(P23b)。以上によって、仮想会議クライアント282と第2会議クライアント22との間でセッションが確立され、会議室を利用したWeb会議が可能になる。実行可能となる会議室は、第1会議クライアント21間で実行中の会議室である。
会議サーバ26と仮想会議クライアント282との間で、会議接続の処理が実行される(P24)。以下、会議サーバ26と仮想会議クライアント28との間でWeb会議の実行を可能とするための会議接続を、「第3会議接続」という。なお、会議サーバ26及び仮想会議クライアント28は、何れも、サーバ25の制御部51によって実行されるプロセスである。このため、第3会議接続の処理は、ネットワークを介して実行される第1会議接続及び第2会議接続の処理と異なり、2つのプロセス(会議サーバ26及び仮想会議クライアント28)間で実行される。
第3会議接続が完了した後、仮想会議クライアント282は、第3会議接続の完了を通知するデータ(「第2接続完了データ」という。)を会議サーバ26に送信する(P25a)。会議サーバ26は、仮想会議クライアント282から送信された第2接続完了データを第1方式で受信する(P25b)。以上によって、会議サーバ26と仮想会議クライアント282との間でセッションが確立され、会議室を利用したWeb会議が可能となる。実行可能となる会議室は、第1会議クライアント21間で実行中の会議室である。
会議サーバ26と仮想会議クライアント282との間の第3会議接続が完了した後、第1会議クライアント21及び第2会議クライアント22は、会議サーバ26、及び、仮想会議クライアント282を介して、メディアデータの通信が可能となる(P27)。これによって、第1会議クライアント21と第2会議クライアント22との間で、共通の会議室を利用したWeb会議が実行される。
<第2開始シーケンス>
図6を参照し、第2開始シーケンスについて説明する。第2開始シーケンスは、第1会議クライアント211と第2会議クライアント22との間の会議接続が第2会議クライアント22側から要求されるという点で、第1開始シーケンスと異なる。第1会議クライアント21間のWeb会議が開始された場合、会議サーバ26は、仮想会議クライアント28の起動を要求するデータ(「起動要求データ」という。)を仮想会議クライアントマネージャ27に送信する(P33a)。仮想会議クライアントマネージャ27は、会議サーバ26から送信された起動要求データを第1方式で受信する(P33b)。
仮想会議クライアントマネージャ27は、仮想会議クライアント282を起動する(P35)。起動要求データが受信されたことに応じて仮想会議クライアント282が起動された場合、仮想会議クライアント282は、仮想会議クライアント282のアドレス情報を決定する。アドレス情報には、仮想会議クライアント282を識別可能なポート番号が含まれる。仮想会議クライアント282は、第1会議クライアント21間で実行中の会議室に対応して起動されるため、ポート番号は、会議室を識別する情報とも見なせる。なお、仮想会議クライアント282及び第2会議クライアント22が、複数の通信方式に対応している場合、仮想会議クライアント282は、複数の通信方式に対応して、複数起動されてもよい。この場合、複数起動された仮想会議クライアント282のそれぞれのポート番号は、互いに異なる。仮想会議クライアント282は、起動完了通知データを仮想会議クライアントマネージャ27に送信する(P37a)。起動完了通知データには、仮想会議クライアント282のアドレス情報が含められる。なお、仮想会議クライアント282が複数起動された場合、複数のアドレス情報が通知されてよい。仮想会議クライアントマネージャ27は、仮想会議クライアント282から送信された起動完了通知データを第1方式で受信する(P37b)。
仮想会議クライアントマネージャ27は、受信された起動完了通知データに含まれるアドレス情報を取得する。仮想会議クライアントマネージャ27は、取得されたアドレス情報を記憶部59に記憶する(P38)。なお、記憶部59に記憶されたアドレス情報は、後述する再接続シーケンス(図10参照)において、第1会議クライアント21と第2会議クライアント22との間で会議接続が再開される場合に使用される。詳細は後述する。仮想会議クライアントマネージャ27は、取得されたアドレス情報を通知するデータ(「アドレス通知データ」という。)を会議サーバ26に送信する(P39a)。会議サーバ26は、仮想会議クライアントマネージャ27から送信されたアドレス通知データを第1方式で受信する(P39b)。
第2会議クライアント22のユーザは、仮想会議クライアント282のアドレス情報を、所定の方法で取得する。所定の方法は特に限定されないが、例えば、会議サーバ26が、e‐mailや所定のWebを介して、仮想会議クライアント282のアドレス情報を第2会議クライアント22に通知してもよい。第2会議クライアント22のユーザは、第1会議システム11において実行されている会議室への参加を要求する指示を、キーボード/マウス32を介して入力する。同時にユーザは、会議サーバ26によって受信されたアドレス通知データ(P39b)に含まれるアドレス情報を、キーボード/マウス32を介して入力する。
第2会議クライアント22は、入力されたアドレス情報を有する仮想会議クライアント282との第2会議接続を要求するデータ(「第3接続要求データ」という。)を、会議サーバ26に送信する(P41a)。仮想会議クライアント282は、第2会議クライアント22によって送信された第3接続要求データを第2方式で受信する(P41b)。なお、複数の通信方式に対応して複数の仮想会議クライアント282が起動されている場合、第3接続要求データを受信したポート番号に対応する仮想会議クライアント282が、以降の処理で用いられる。換言すれば、第3接続要求データを受信したポート番号に対応する通信方式が、第2会議クライアント22と通信を行う場合の通信方式(第2方式)として選択される。
仮想会議クライアント282と第2会議クライアント22との間で、第2会議接続の処理が実行される。仮想会議クライアント282は、第2会議接続の完了を通知するデータ(「第3接続完了データ」という。)を第2会議クライアント22に送信する(P43a)。第2会議クライアント22は、仮想会議クライアント282から送信された第3接続完了データを第2方式で受信する(P43b)。以上によって、仮想会議クライアント282と第2会議クライアント22との間でセッションが確立され、会議室を利用したWeb会議が可能になる。実行可能となる会議室は、仮想会議クライアント282のアドレス情報に含まれるポート番号によって識別される会議室、言い換えれば、第1会議クライアント21間で実行中の会議室である。
会議サーバ26と仮想会議クライアント282との間で、第3会議接続の処理が実行される(P44)。第3会議接続が完了した後、仮想会議クライアント282は、第3会議接続の完了を通知するデータ(「第4接続完了データ」という。)を会議サーバ26に送信する(P45a)。会議サーバ26は、仮想会議クライアント282から送信された第4会議完了データを第1方式で受信する(P45b)。以上によって、会議サーバ26と仮想会議クライアント282との間でセッションが確立され、会議室を利用したWeb会議可能となる。実行可能となる会議室は、仮想会議クライアント282のアドレス情報に含まれるポート番号によって識別される会議室、言い換えれば、第1会議クライアント21間で実行中の会議室である。
会議サーバ26と仮想会議クライアント282との間の第3会議接続が完了した後、第1会議クライアント21及び第2会議クライアント22は、会議サーバ26、及び、仮想会議クライアント282を介して、メディアデータの通信が可能となる(P47)。これによって、第1会議クライアント21と第2会議クライアント22との間で、共通の会議室を利用したWeb会議が実行される。
<Web会議終了時の通信シーケンス>
図7から図9を参照し、終了シーケンス(第1終了シーケンス(図7参照)、第2終了シーケンス(図8参照)、第3終了シーケンス(図9参照))について説明する。終了シーケンスは、第1会議クライアント21と第2会議クライアント22との間でWeb会議が実行されている場合において、第2会議クライアント22によるWeb会議が終了される場合の通信手順である。
<第1終了シーケンス>
図7を参照し、第1終了シーケンスについて説明する。第1終了シーケンスは、第1開始シーケンス(図5参照)によって第1会議クライアント21と第2会議クライアント22との間でWeb会議が開始された後、第2会議クライアント22によるWeb会議が終了される場合に対応する。
第1会議クライアント211のユーザは、第1会議クライアント211と第2会議クライアント22との間の会議接続の切断を要求する指示を、キーボード/マウス32を介して入力する。第1会議クライアント211は、第2会議クライアント22との会議接続の切断を要求するデータ(「第1切断要求データ」という。)を会議サーバ26に送信する(P51a)。第1切断要求データには、第2会議クライアント22のアドレス情報が含められる。会議サーバ26は、第1会議クライアント211から送信された第1切断要求データを第1方式で受信する(P51b)。
会議サーバ26は、受信された第1切断要求データを仮想会議クライアントマネージャ27に送信する(P53a)。仮想会議クライアントマネージャ27は、会議サーバ26から送信された第1切断要求データを第1方式で受信する(P53b)。仮想会議クライアントマネージャ27は、受信された第1切断要求データを仮想会議クライアント282に送信する(P55a)。仮想会議クライアント282は、仮想会議クライアントマネージャ27から送信された第1切断要求データを第1方式で受信する(P55b)。
仮想会議クライアント282は、仮想会議クライアント282と第2会議クライアント22との間の第2会議接続の切断を要求するデータ(以下、「第2切断要求データ」という。)を第2会議クライアント22に送信する(P57a)。第2会議クライアント22は、仮想会議クライアント282から送信された第2切断要求データを第2方式で受信する(P57b)。
仮想会議クライアント282と第2会議クライアント22との間で、第2会議接続を切断するための周知の処理が実行される。第2会議クライアント22は、第2会議接続の切断の完了を通知するデータ(「第1切断完了データ」という。)を仮想会議クライアント282に送信する(P59a)。仮想会議クライアント282は、第2会議クライアント22から送信された第1切断完了データを第2方式で受信する(P59b)。以上によって、仮想会議クライアント282と第2会議クライアント22との間でセッションが終了され、第2会議接続が切断される。これによって、第2会議クライアント22は会議室から退室し、第1会議クライアント211とのWeb会議は終了される。
仮想会議クライアント282と第2会議クライアント22との間の第2会議接続が切断された後、仮想会議クライアント282は、第2会議接続の切断の完了を通知するデータ(「第2切断完了データ」という。)を仮想会議クライアントマネージャ27に送信する(P61a)。仮想会議クライアントマネージャ27は、仮想会議クライアント282から送信された第2切断完了データを第1方式で受信する(P61b)。
又、仮想会議クライアント282と第2会議クライアント22との間の第2会議接続が切断された後、仮想会議クライアント282は、会議サーバ26との間の第3会議接続の切断を要求するデータ(「第4接続要求データ」という。)を会議サーバ26に送信する(P63a)。会議サーバ26は、仮想会議クライアント282から送信された第4切断要求データを第1方式で受信する(P63b)。会議サーバ26と仮想会議クライアント282との間で、第3会議接続を切断するための周知の処理が実行される。これによって、会議サーバ26と仮想会議クライアント282との間のセッションが終了され、第3会議接続が切断される。
なお、仮想会議クライアントマネージャ27は、仮想会議クライアント282から送信された第2切断完了データが受信された場合(P61b)、仮想会議クライアント282を終了させる(P65)。
<第2終了シーケンス>
図8を参照し、第2終了シーケンスについて説明する。第2終了シーケンスは、第1開始シーケンス(図5参照)によってWeb会議が開始された後、第2会議クライアント22によるWeb会議が終了される場合に対応する。第2終了シーケンスは、第1会議クライアント211と第2会議クライアント22との間の会議接続の切断が第2会議クライアント22側から要求されるという点で、第1終了シーケンスと異なる。第1終了シーケンスと同一の通信手順については、同一符号を付し、説明を省略する。
第2会議クライアント22のユーザは、第1会議クライアント21と第2会議クライアント22との間の会議接続の切断を要求する指示を、キーボード/マウス32を介して入力する。第2会議クライアント22は、第1会議クライアント211との会議接続の切断を要求するデータ(「第3切断要求データ」という。)を仮想会議クライアント282に送信する(P73a)。サーバ25は、第2会議クライアント22から送信された第3切断要求データを第2方式で受信する(P73b)。
仮想会議クライアント282と第2会議クライアント22との間で、第2会議接続を切断するための周知の処理が実行される。仮想会議クライアント282は、第2会議接続の切断の完了を通知するデータ(「第3切断完了データ」という。)を第2会議クライアント22に送信する(P75a)。第2会議クライアント22は、仮想会議クライアント282から送信された第3切断完了データを第2方式で受信する(P75b)。以上によって、仮想会議クライアント282と第2会議クライアント22との間でセッションが終了され、第2会議接続が切断される。これによって、第2会議クライアント22は会議室から退室し、第1会議クライアント211とのWeb会議は終了される。以降の処理は、第1終了シーケンスと同一である。
<第3終了シーケンス>
図9を参照し、第3終了シーケンスについて説明する。第3終了シーケンスは、第2開始シーケンス(図6参照)によってWeb会議が開始された後、第2会議クライアント22によるWeb会議が終了される場合に対応する。第1終了シーケンス(図7参照)と同一の通信手順については、同一符号を付し、説明を省略する。
第1会議クライアント211は、第1切断要求データをサーバ25に送信した(P51a)後、サーバ25の記憶部59に記憶されたアドレス情報の削除を要求するデータ(「削除要求データ」という。)を会議サーバ26に対して送信する(P105a)。会議サーバ26は、第1会議クライアント211から送信された削除要求データを第1方式で受信する(P105b)。
会議サーバ26は、受信された削除要求データを仮想会議クライアントマネージャ27に送信する(P107a)。仮想会議クライアントマネージャ27は、会議サーバ26から送信された第1削除要求データを第1方式で受信する(P107b)。仮想会議クライアントマネージャ27は、記憶部59に記憶されたアドレス情報(P38、図6参照)を削除する(P108)。仮想会議クライアントマネージャ27は、削除要求データが受信されたことに応じてアドレス情報が削除された後、仮想会議クライアント282を終了させる(P65)。
<再接続時の通信シーケンス>
図10を参照し、第1会議クライアント21と第2会議クライアント22との間で会議接続が一旦切断された後、会議接続が再開される場合の通信手順(再接続シーケンス)にについて説明する。再接続シーケンスでは、第2開始シーケンス(図6参照)に基づいてWeb会議が開始された後の通信手順に対応する。このため、仮想会議クライアント282の起動時に決定されたアドレス情報が、記憶部59に記憶されている(P38、図6参照)。再接続シーケンスでは、第1終了シーケンス(図7参照)の一部の手順に基づいて第2会議接続及び第3会議接続が切断される。次いで、第2開始シーケンス(図6参照)の一部の手順に基づいて第2会議接続及び第3会議接続が再開される。第1終了シーケンス、及び、第2開始シーケンスと同一の通信手順については、同一符号を付し、説明を省略又は簡略化する。
図10において、第2会議接続及び第3会議接続が切断されるまでの通信手順が、第1終了シーケンス(図7参照)に基づいて実行される(P51a〜P63b)。第1終了シーケンスと異なる点は、仮想会議クライアントマネージャ27によって第2切断完了データが受信された場合(P61b)でも、仮想会議クライアント282が終了されない点である。つまり、起動された仮想会議クライアント282は、第2会議接続及び第3会議接続が切断された後も維持される。
上記の状態において、第2会議クライアント22のユーザは、一旦終了された会議室への再度の参加を要求する指示を、キーボード/マウス32を介して入力する。同時にユーザは、アドレス情報を、キーボード/マウス32を介して入力する。入力されるアドレス情報は、会議接続が一旦切断された仮想会議クライアント282のアドレス情報である。
第2会議クライアント22は、入力されたアドレス情報を有する仮想会議クライアント282との第2会議接続を要求するデータ(「第3接続要求データ」という。)を、会議サーバ26に送信する(P41a)。仮想会議クライアント282は、第2会議クライアント22によって送信された第3接続要求データを受信する(P41b)。
仮想会議クライアント282は、受信された第3接続要求データに含まれるアドレス情報と、記憶部59に記憶されたアドレス情報とが一致する場合、第2会議クライアント22との間で第2会議接続の処理を実行する。仮想会議クライアント282は第3接続完了データを第2会議クライアント22に送信する(P43a)。第2会議クライアント22は、仮想会議クライアント282から送信された第3接続完了データを受信する(P43b)。これによって、仮想会議クライアント282と第2会議クライアント22との間でセッションが確立され、第2会議接続が再開される。P45a以降の処理は、第2開始シーケンスと同一である。
<本実施形態の主たる作用、効果>
第1開始シーケンス(図5参照)において、仮想会議クライアントマネージャ27は、会議サーバ26から第1接続要求データを受信することに応じて(P13b)、仮想会議クライアント282を起動する(P15)。仮想会議クライアント282は、起動後、仮想会議クライアントマネージャ27から第1接続要求データを受信し(P19b)、第2会議クライアント22に第2接続要求データを送信する(P21a)。仮想会議クライアント282と第2会議クライアント22との間で、第2会議接続の処理が実行される。次いで、会議サーバ26と仮想会議クライアント282との間で、第3会議接続の処理が実行される。又、第2開始シーケンス(図6参照)において、仮想会議クライアントマネージャ27は、会議サーバ26から起動要求データを受信することに応じて(P33b)、仮想会議クライアント282を起動する(P35)。仮想会議クライアント282は、起動後、第2会議クライアント22から送信された第3接続要求データを受信する(P41b)。仮想会議クライアント282と第2会議クライアント22との間で、第2会議接続の処理が実行される。次いで、会議サーバ26と仮想会議クライアント282との間で、第3会議接続の処理が実行される。
第3会議接続の完了後、会議サーバ26は、第1会議クライアント21からメディアデータを第1方式の通信によって受信し(S11,S31)、仮想会議クライアント282に第1方式の通信によって送信する(S13)。仮想会議クライアント282は、会議サーバ26から送信されたメディアデータを受信し(S15)、ミキシングすることによってミキシングデータを生成する。仮想会議クライアント282は、生成されたミキシングデータを、第2方式の通信によって第2会議クライアント22に送信する(S17)。又、仮想会議クライアント282は、第2会議クライアント22から送信されたメディアデータを第2方式の通信によって受信し(S19)、会議サーバ26に第1方式の通信によって送信する(S21)。会議サーバ26は、仮想会議クライアント282から送信されたメディアデータを受信し(S23)、第1会議クライアント21に第1方式の通信によって送信する(S25、S35)。
以上のように、会議サーバ26は、実在する第1会議クライアント21と通信を行う場合と同様の通信方式(第1方式)で仮想会議クライアント282と通信を行う。これによって、第1会議クライアント21及び第2会議クライアント22の間で通信を実行させ、Web会議を実行させることができる。なお、仮想会議クライアント282は、仮想会議クライアントマネージャ27によって起動されるプロセスであり、実在しない。このため、上記の第1開始シーケンス及び第2開始シーケンスによれば、既存のサーバ25をそのまま利用しつつ、通信方式の異なる会議システム10間でWeb会議を実行させることができる。
又、第1開始シーケンス(図5参照)において、仮想会議クライアント282は、第1接続要求データを受信したことに応じ(P19b)、第2会議クライアント22と第2会議接続し、且つ、会議サーバ26と第3会議接続することができる。このため、第1開始シーケンスによれば、仮想会議クライアント282は、第1接続要求データを受信したことに応じて第2会議クライアント22と第2会議接続したタイミングで、第1会議クライアント21と第2会議クライアント22との間の通信を可能とし、Web会議を実行させることができる。又、第1会議クライアント21は、第2会議クライアント22のアドレス情報を含む第1接続要求データを送信する(P11a)。仮想会議クライアント282は、第1接続要求データに含まれるアドレス情報を取得する。仮想会議クライアント282は、取得されたアドレス情報によって特定される第2会議クライアント22に対し、第2接続要求データを送信する(P21a)。このように、仮想会議クライアント282は、第1接続要求データに含まれるアドレス情報に基づいて、第2会議接続する対象の第2会議クライアント22を特定できる。
又、第2開始シーケンス(図6参照)において、仮想会議クライアント282は、第3接続要求データを受信したことに応じ(P41b)、第2会議クライアント22と第2会議接続し、且つ、会議サーバ26と第3会議接続することができる。このため、第2開始シーケンスによれば、仮想会議クライアント282は、第3接続要求データを受信したことに応じて第2会議クライアント22と第2会議接続したタイミングで、第1会議クライアント21と第2会議クライアント22との間の通信を可能とし、Web会議を実行させることができる。又、第2会議クライアント22は、アドレス情報を含む第3接続要求データを送信する(P41a)。仮想会議クライアント282は、第2会議クライアント22との間でWeb会議が実行される場合において利用される会議室を、アドレス情報に含まれるポート番号に基づいて特定できる。
第2開始シーケンス(図6参照)において、仮想会議クライアント282は、起動後、仮想会議クライアント282のアドレス情報を決定する。仮想会議クライアント282は、決定されたアドレス情報を含む起動完了通知データを、仮想会議クライアントマネージャ27に送信する(P37a)。仮想会議クライアントマネージャ27は、仮想会議クライアント282から送信された起動完了通知データを受信し(P37b)、会議サーバ26に送信する(P39a)。この場合、第2会議クライアント22は、起動完了通知データによって通知されたアドレス情報に基づいて仮想会議クライアント282を特定し、この仮想会議クライアント282に第3接続要求データを送信することによって(P41a)、仮想会議クライアント282と第2会議接続できる。
第1終了シーケンス(図7参照)において、第1会議クライアント211は、第1切断要求データを送信する(P51a)。仮想会議クライアント282は、第1切断要求データを受信し(P55b)、第2会議クライアント22に第2切断要求データを送信する(P57a)。仮想会議クライアント282と第2会議クライアント22との間で、第2会議接続を切断するための処理が実行される。このため、第1終了シーケンスによれば、仮想会議クライアント282は、第1会議クライアント211からの要求に応じ、第2会議クライアントとの間の第2会議接続を切断できる。又、第2終了シーケンス(図8参照)において、第2会議クライアント22は、第3切断要求データを仮想会議クライアント282に送信する(P73a)。仮想会議クライアント282と第2会議クライアント22との間で、第2会議接続を切断するための処理が実行される。このため、第2終了シーケンスによれば、仮想会議クライアント282は、第2会議クライアント22からの要求に応じ、第2会議クライアントとの間の第2会議接続を切断できる。
第1終了シーケンス及び第2終了シーケンスにおいて、上記のシーケンスの後、仮想会議クライアント282は、第2切断完了データを仮想会議クライアントマネージャ27に送信する(P61a)。仮想会議クライアント282は、第4切断要求データを会議サーバ26に送信することに応じて(P63a)、会議サーバ26との間で第3会議接続を切断するための処理を実行する。仮想会議クライアントマネージャ27は、仮想会議クライアント282を終了させる(P65)。この場合、仮想会議クライアントマネージャ27は、仮想会議クライアント282と第2会議クライアント22との間の第2会議接続が切断された場合に、仮想会議クライアント282を終了させることができるので、Web会議に用いられていない仮想会議クライアント28が維持されることを抑制できる。
第2開始シーケンス(図6参照)において、仮想会議クライアントマネージャ27は、仮想会議クライアント282から送信された起動完了通知データを受信した場合(P37b)、起動完了通知データに含まれているアドレス情報を記憶部59に記憶する(P38)。又、第3終了シーケンス(図9参照)において、第1会議クライアント211は、削除要求データを送信する(P105a)。仮想会議クライアントマネージャ27は、削除要求データを受信したことに応じ(P107b)、記憶部59に記憶されたアドレス情報を削除し(P108)、その後、仮想会議クライアント282を終了させる(P65)。このように、仮想会議クライアントマネージャ27は、アドレス情報の削除が要求されたことに応じて、仮想会議クライアント282を終了させることができる。従って、例えば、第2会議クライアント22と仮想会議クライアント282との間の第2会議接続の再開が予定される場合(例えば、再開シーケンス(図10参照)が実行される場合)、第1会議クライアント211において削除要求データを送信しなくてもよい。これによって、仮想会議クライアント282を終了させずそのまま維持できる。
会議サーバ26は、第1会議クライアント21からメディアデータを受信し、仮想会議クライアント282に送信する。仮想会議クライアント282は、受信されたメディアデータを第1コーデックでデコードし、デコードされたメディアデータをミキシングしてミキシングデータを生成し、ミキシングデータを第2コーデックでエンコードする。仮想会議クライアント282は、第2会議クライアント22にミキシングデータを送信する。又、仮想会議クライアント282は、第2会議クライアント22からメディアデータを受信し、受信されたメディアデータを第2コーデックでデコードし、デコードされたメディアデータを第1コーデックでエンコードし、エンコードされたメディアデータを会議サーバ26に送信する。会議サーバ26は、仮想会議クライアント282からメディアデータを受信し、第1会議クライアント21に送信する。
以上のように、メディアデータのデコード、ミキシング、及び、エンコードは、全て仮想会議クライアント282によって実行され、会議サーバ26では実行されない。従って、エンコード、デコード、及び、ミキシングの各処理によって処理負荷が増加したり、処理遅延が発生したりした場合でも、会議サーバ26によるWeb会議の制御自体に影響が及び難い。このため、通信システム1では、会議クライアント20間のWeb会議の制御を会議サーバ26によって適切に実行しつつ、仮想会議クライアント28によって、メディアデータのエンコード、デコード、及び、ミキシングの各処理を実行させることができる。
<変形例>
本発明は上記実施形態に限定されず、種々の変更が可能である。図11を参照し、本発明の変形例における通信システム1Aについて説明する。通信システム1Aが上記実施形態における通信システム1と異なる点は、第1会議システム11に第1サーバ25A及び第2サーバ25Bが含まれる点である。第1サーバ25Aは、Web会議における会議サーバの機能、即ち、複数の第1会議クライアント21がWeb会議を実行する場合に、複数の第1会議クライアント21間で送受信されるメディアデータを転送する機能を実現する。第2サーバ25Bは、例えば、第1会議システム11と第2会議システム12及び第3会議システム13との間に介在するプロキシサーバ等である。
第1サーバ25Aの制御部51Aによって、上記実施形態における複数のプロセスのうち会議サーバ26が実行される。一方、第2サーバ25Bの制御部51Bによって、上記実施形態における複数のプロセスのうち仮想会議クライアントマネージャ27及び仮想会議クライアント28が実行される。なお、図11において、図1のサーバ25におけるインタフェース57、58に対応する構成は省略されている。
通信システム1Aにおいて、第1会議クライアント211と、第1サーバ25Aの制御部51Aによって実行される会議サーバ26(以下、「第1サーバ25Aの会議サーバ26」という。)との間は、ネットワークを介して第1方式で通信が実行される。第1サーバ25Aの会議サーバ26と、第2サーバ25Bの制御部51Bによって実行される仮想会議クライアント28(以下、「第2サーバ25Bの仮想会議クライアント28」という。)との間は、ネットワークを介して第1方式で通信が行われる。第2サーバ25Bの仮想会議クライアント28と第2会議クライアント22との間は、ネットワークを介して第2方式で通信が行われる。第2サーバ25Bの仮想会議クライアント28と第3会議クライアント23との間は、ネットワークを介して第3方式で通信が行われる。
通信システム1Aにおいて、会議サーバ26と、仮想会議クライアント28とは、それぞれ別々のサーバ(第1サーバ25A及び第2サーバ25B)の制御部によって実行される。従って、エンコード、デコード、及び、ミキシングの各処理によって第2サーバ25Bの仮想会議クライアント28の処理負荷がしたり、処理遅延が発生したりした場合でも、第1サーバ25Aの会議サーバ26によるWeb会議の制御自体に影響が更に及び難い。このため、会議クライアント20間のWeb会議の制御を第1サーバ25Aによって適切に実行しつつ、第2サーバ25Bによって、メディアデータのエンコード、デコード、及び、ミキシングの各処理を実行させることができる。
又、通信システム1Aは、通信システム1と同様、第2会議クライアント22の数が増加した場合の拡張性において優れている。即ち、第2会議クライアント22の数が増加した場合でも、第2サーバ25Bの制御部51Bにおいて仮想会議クライアント28を追加することで対応できる。なお、第1サーバ25Aの制御部51Aは会議サーバ26をそのまま維持できる。このため、第2会議クライアント22の増加に伴って第1サーバ25Aを増加する必要がない。更に、第2会議クライアント22の数の増加に応じて仮想会議クライアント28が追加されたな場合において、エンコード、デコード、及び、ミキシングの処理負荷が増大しても、第1サーバ25Aの制御部51Aが会議サーバ26を実行することよる、Web会議の制御自体に影響が及び難い。従って、以上の通信方法によれば、第1サーバ25Aにおいて制御部51Aが会議サーバ26をそのまま維持しつつ、第2サーバ25Bの制御部51Bにおいて仮想会議クライアント28を追加できるので、高い拡張性を確保できる。
第1開始シーケンス(図5参照)において、仮想会議クライアント282は、仮想会議クライアントマネージャ27から送信された第1接続要求データを受信した場合(P19b)、第1接続要求データに含まれるアドレス情報によって特定される第2会議クライアント22に第2接続要求データを送信した(P21a)。これに対し、会議サーバ26は、仮想会議クライアント282に第1接続要求データを送信してもよい。仮想会議クライアント282は、仮想会議クライアントマネージャ27を介さず、会議サーバ26から第1接続要求データを直接受信してもよい。
第1接続要求データにアドレス情報は含まれていなくてもよい。例えば、第1会議クライアント211は、アドレス情報が含まれない第1接続要求データを送信した後、アドレス情報を通知するアドレス通知データを更に送信してもよい。仮想会議クライアント282は、起動後、アドレス通知データを受信してもよい。仮想会議クライアント282は、アドレス通知データに含まれるアドレス情報によって特定される第2会議クライアント22に対し、第2接続要求データを送信してもよい。
第2開始シーケンス(図6参照)において、第2会議クライアント22は、仮想会議クライアント28のアドレス情報を含む第3接続要求データを送信した(P41a)。仮想会議クライアント282は、第3接続要求データを受信し(P41b)、第2会議クライアント22との間で第2会議接続の処理を実行した(P45a、P45b)。これによって、アドレス情報に含まれるポート番号によって識別される会議室を利用したWeb会議が、第1会議クライアント21と第2会議クライアント22との間で実行可能となった。これに対し、例えば、アドレス情報に加えて会議IDが第3接続要求データに含まれていてもよい。仮想会議クライアント282は、第2会議クライアント22との間で第2会議接続の処理を実行することによって、会議IDによって識別される会議室を利用したWeb会議を実行可能としてもよい。
第2開始シーケンス(図6参照)において、仮想会議クライアント282は、起動後にアドレス情報を決定した。仮想会議クライアント282は、決定されたアドレス情報を含む起動完了通知データを、仮想会議クライアントマネージャ27に送信した(P37a)。仮想会議クライアントマネージャ27は、起動完了通知データを受信し(P37b)、アドレス情報を記憶部59に記憶した(P38)。これに対し、例えば仮想会議クライアントマネージャ27は、仮想会議クライアント282を起動する場合に、起動される仮想会議クライアント282のアドレス情報を指定してもよい。この場合、起動された仮想会議クライアント282から送信される起動完了通知データにアドレス情報は含まれていなくてもよい。仮想会議クライアントマネージャ27は、仮想会議クライアント282の起動時に指定したアドレス情報を、記憶部59に記憶してもよい。
第1〜第3終了シーケンス(図6〜図9参照)において、仮想会議クライアント282と第2会議クライアント22との間で第2会議接続を切断するための処理が実行された後、仮想会議クライアント282は、第2切断完了データを仮想会議クライアントマネージャ27に送信した(P61a)。次いで、仮想会議クライアント282は、第4切断要求データを会議サーバ26に送信することに応じて(P63a)、会議サーバ26との間で第3会議接続を切断するための処理を実行し、第3会議接続を切断した。その後、仮想会議クライアントマネージャ27は、仮想会議クライアント282を終了させた(P65)。これに対し、仮想会議クライアント282は、第2会議クライアント22との間で第2会議接続を切断するための処理が実行された後、最初に第4切断要求データを会議サーバ26に送信し(P63a)、会議サーバ26との間で第3会議接続を切断するための処理を実行してもよい。次いで、仮想会議クライアント282は、第2切断完了データを仮想会議クライアントマネージャ27に送信してもよい(P61a)。この場合、仮想会議クライアントマネージャ27は、会議サーバ26と仮想会議クライアント282との間の第3会議接続が切断された後で、仮想会議クライアント282を終了させることができる。
第3終了シーケンス(図9参照)において、仮想会議クライアントマネージャ27は、会議サーバ26から削除要求データを受信したことに応じて(P107b)、記憶部59に記憶されたアドレス情報を削除し(P108)、仮想会議クライアント282を終了させた(P65)。これに対し、第1会議クライアント21は、仮想会議クライアント282の終了を要求する終了要求データを会議サーバ26に送信してもよい。会議サーバ26は、会議サーバ26から送信された終了要求データを、仮想会議クライアントマネージャ27に送信してもよい。仮想会議クライアントマネージャ27は、終了要求データを受信したことに応じて、仮想会議クライアント282を終了させてもよい。
上記実施形態において、第1コーデック及び第2コーデックを共通としてもよい。この場合、仮想会議クライアント28におけるエンコード及びデコードの処理は不要となる。従って、仮想会議クライアント282は、会議サーバ26から送信されたメディアデータを受信した場合(S15)、受信されたメディアデータをそのまま第2会議クライアント22に送信してもよい。又、仮想会議クライアント282は、第2会議クライアント22から送信されたメディアデータを受信した場合(S19)、受信されたメディアデータをそのまま会議サーバ26に送信してもよい。
1、1A :通信システム
20 :会議クライアント
10 :会議システム
11 :第1会議システム
12 :第2会議システム
13 :第3会議システム
20 :会議クライアント
21、211、212 :第1会議クライアント
22 :第2会議クライアント
23 :第3会議クライアント
25 :サーバ
25A :第1サーバ
25B :第2サーバ
26 :会議サーバ
27 :仮想会議クライアントマネージャ
28、282、283 :仮想会議クライアント
59 :記憶部

Claims (12)

  1. 会議サーバを介して第1方式の通信によって遠隔会議を実行可能な複数の第1会議クライアントと、前記第1方式と異なる第2方式の通信によって遠隔会議を実行可能な第2会議クライアントとの間で遠隔会議を実行する場合の通信方法であって、
    前記会議サーバから第1通知を受信し、
    前記第1通知が受信されたことに応じて仮想会議クライアントを起動し、
    前記仮想会議クライアントと前記第2会議クライアントとを接続し、
    前記仮想会議クライアントと前記第2会議クライアントとが接続されたことに応じて、前記仮想会議クライアントと前記会議サーバとを接続し、
    前記会議サーバから前記第1方式で受信したデータを前記第2方式で前記第2会議クライアントに送信し、前記第2会議クライアントから前記第2方式で受信したデータを前記第1方式で前記会議サーバに送信し、
    前記仮想会議クライアントと前記第2会議クライアントとの間の接続を切断し、
    前記仮想会議クライアントと前記第2会議クライアントとの間の接続を切断した後、前記仮想会議クライアントと前記会議サーバとの接続の切断を要求する第1切断要求データを前記会議サーバに送信し、
    前記第1切断要求データを前記会議サーバに送信したことに応じて、前記仮想会議クライアントを終了する、
    ことを特徴とする通信方法。
  2. 会議サーバを介して第1方式の通信によって遠隔会議を実行可能な複数の第1会議クライアントと、前記第1方式と異なる第2方式の通信によって遠隔会議を実行可能な第2会議クライアントとの間で遠隔会議を実行するための通信プログラムであって、
    前記会議サーバから第1通知を受信する第1受信処理と、
    前記第1通知が受信されたことに応じて仮想会議クライアントを起動する起動処理と、
    起動された前記仮想会議クライアントと前記第2会議クライアントとを接続する第1接続処理と、
    前記仮想会議クライアントと前記第2会議クライアントとが接続されたことに応じて、前記仮想会議クライアントと前記会議サーバとを接続する第2接続処理と、
    前記仮想会議クライアントと前記第2会議クライアントとの間の接続を切断する切断処理と、
    前記仮想会議クライアントと前記第2会議クライアントとの間の接続を切断した後、前記仮想会議クライアントと前記会議サーバとの接続の切断を要求する第1切断要求データを前記会議サーバに送信する第2送信処理と、
    前記第1切断要求データを前記会議サーバに送信したことに応じて、前記仮想会議クライアントを終了させる第1終了処理と
    を、コンピュータに実行させるための通信プログラム。
  3. 前記第1通知は、前記第2会議クライアントのアドレス情報を含む第1接続要求データであり、
    前記第1接続処理は、
    前記第1接続要求データを受信したことに応じ、前記第2会議クライアントに対して、前記仮想会議クライアントと前記第2会議クライアントとの接続を要求する第2接続要求データを送信し、前記第2会議クライアントから前記仮想会議クライアントに対して送信された第1接続完了データを受信することによって、前記仮想会議クライアントと前記第2会議クライアントとを接続し、
    前記第2接続処理は、
    前記第1接続完了データを受信したことに応じて、前記仮想会議クライアントと前記会議サーバとを接続することを特徴とする請求項2に記載の通信プログラム。
  4. 前記第1通知は、前記仮想会議クライアントの起動を要求する起動要求データであり、
    前記第1接続処理は、
    前記第2会議クライアントから前記仮想会議クライアントに対して送信された第3接続要求データを受信することによって、前記仮想会議クライアントと前記第2会議クライアントとを接続し、
    前記第3接続要求データは、前記会議サーバによって実行される仮想会議室を識別する識別情報を含み、前記仮想会議クライアントとの接続を要求するデータであり、
    前記第2接続処理は、
    前記第2会議クライアントから送信された前記第3接続要求データを受信したことに応じて、前記仮想会議クライアントと前記会議サーバとを接続することを特徴とする請求項2に記載の通信プログラム。
  5. 起動する前記仮想会議クライアントのアドレス情報を前記会議サーバに送信する第1送信処理を、前記コンピュータに更に実行させるための請求項4に記載の通信プログラム。
  6. 前記複数の第1会議クライアントのうち何れかから前記会議サーバに対して送信されたデータであって、前記第2会議クライアントとの接続の切断を要求する第2切断要求データを受信する第3送信処理を、前記コンピュータに更に実行させ、
    前記切断処理は、
    前記第2切断要求データを受信したことに応じ、前記第2会議クライアントに前記第2切断要求データを送信することによって、前記仮想会議クライアントと前記第2会議クライアントとの間の接続を切断し、
    前記第2送信処理は、
    前記第2切断要求データに応じて前記第2会議クライアントから前記仮想会議クライアントに対して送信された切断完了データを受信したことに応じて、前記第1切断要求データを前記会議サーバに送信することを特徴とする請求項2から5の何れかに記載の通信プログラム。
  7. 会議サーバを介して第1方式の通信によって遠隔会議を実行可能な複数の第1会議クライアントと、前記第1方式と異なる第2方式の通信によって遠隔会議を実行可能な第2会議クライアントとの間で遠隔会議を実行するための通信プログラムであって、
    前記会議サーバから、第1通知を受信する第1受信処理と、
    前記第1通知が受信されたことに応じて仮想会議クライアントを起動する起動処理と、
    起動された前記仮想会議クライアントと前記第2会議クライアントとを接続する第1接続処理と、
    前記仮想会議クライアントと前記第2会議クライアントとが接続されたことに応じて、前記仮想会議クライアントと前記会議サーバとを接続する第2接続処理と
    を、コンピュータに実行させ、
    前記第1通知は、前記仮想会議クライアントの起動を要求する起動要求データであり、
    前記第1接続処理は、
    前記第2会議クライアントから前記仮想会議クライアントに対して送信された第3接続要求データを受信することによって、前記仮想会議クライアントと前記第2会議クライアントとを接続し、
    前記第3接続要求データは、前記会議サーバによって実行される仮想会議室を識別する識別情報を含み、前記仮想会議クライアントとの接続を要求するデータであり、
    前記第2接続処理は、
    前記第2会議クライアントから送信された前記第3接続要求データを受信したことに応じて、前記仮想会議クライアントと前記会議サーバとを接続し、
    起動する前記仮想会議クライアントのアドレス情報を前記会議サーバに送信する第1送信処理と、
    前記会議サーバに送信した前記アドレス情報を記憶部に記憶する記憶処理と、
    前記アドレス情報の削除を要求する削除要求データを、前記会議サーバから受信する第2受信処理と、
    前記削除要求データを受信したことに応じて、前記仮想会議クライアントを終了させる第2終了処理と
    を、前記コンピュータに更に実行させることを特徴とする通信プログラム。
  8. 前記会議サーバから前記第1方式で受信したデータを前記第2方式で前記第2会議クライアントに送信し、前記第2会議クライアントから前記第2方式で受信したデータを前記第1方式で前記会議サーバに送信する転送処理を、
    前記コンピュータに更に実行させることを特徴とする請求項2からの何れかに記載の通信プログラム。
  9. 前記転送処理は、
    前記複数の第1会議クライアントから前記第1方式の通信によって送信された複数の第1メディアデータが、前記会議サーバによって前記第1方式の通信によって受信され、受信された前記複数の第1メディアデータが、前記会議サーバから前記第1方式の通信によって送信された場合、前記複数の第1メディアデータを前記第1方式の通信によって受信する第3受信処理と、
    受信された前記複数の第1メディアデータをミキシングしてミキシングデータを生成する第1生成処理と、
    生成された前記ミキシングデータを前記第2会議クライアントに前記第2方式の通信によって送信する第3送信処理と、
    前記第2会議クライアントから第2メディアデータを前記第2方式の通信によって受信する第4受信処理と、
    受信された前記第2メディアデータを前記第1方式の通信によって前記会議サーバに送信する第4送信処理と
    を含む、請求項に記載の通信プログラム。
  10. 前記第3受信処理は、
    第1コーデックによってエンコードされた前記複数の第1メディアデータを、前記会議サーバから受信し、
    前記第1生成処理は、
    前記複数の第1メディアデータを前記第1コーデックでデコードし、
    前記第1コーデックでデコードされた前記複数の第1メディアデータをミキシングして前記ミキシングデータを生成し、
    生成された前記ミキシングデータを、第2コーデックでエンコードし、
    前記第3送信処理は、
    前記第2コーデックでエンコードされた前記ミキシングデータを、前記第2会議クライアントに送信することを特徴とする請求項に記載の通信プログラム。
  11. 前記第4受信処理は、
    第2コーデックによってエンコードされた前記第2メディアデータを、前記第2会議クライアントから受信し、
    受信された前記第2メディアデータを前記第2コーデックでデコードし、デコードされた前記第2メディアデータを第1コーデックでエンコードする第2生成処理を更に実行し、
    前記第4送信処理は、
    前記第1コーデックでエンコードされた前記第2メディアデータを、前記会議サーバに送信することを特徴とする請求項又は1に記載の通信プログラム。
  12. 第1方式の通信によって遠隔会議を実行可能な複数の第1会議クライアントと、前記第1方式と異なる第2方式の通信によって遠隔会議を実行可能な第2会議クライアントとの通信が可能なサーバであって、
    第1通知を受信し、
    前記第1通知が受信されたことに応じて仮想会議クライアントを起動し、
    前記仮想会議クライアントと前記第2会議クライアントとを接続し、
    前記仮想会議クライアントと前記第2会議クライアントとが接続されたことに応じて、前記仮想会議クライアントと会議サーバとを接続し、
    前記会議サーバから前記第1方式で受信したデータを前記第2方式で前記第2会議クライアントに送信し、前記第2会議クライアントから前記第2方式で受信したデータを前記第1方式で前記会議サーバに送信し、
    前記仮想会議クライアントと前記第2会議クライアントとの間の接続を切断し、
    前記仮想会議クライアントと前記第2会議クライアントとの間の接続を切断した後、前記仮想会議クライアントと前記会議サーバとの接続の切断を要求する第1切断要求データを前記会議サーバに送信し、
    前記第1切断要求データを前記会議サーバに送信したことに応じて、前記仮想会議クライアントを終了させ
    ことを特徴とするサーバ。
JP2016011634A 2016-01-25 2016-01-25 通信方法、通信プログラム、及び、サーバ Expired - Fee Related JP6493236B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2016011634A JP6493236B2 (ja) 2016-01-25 2016-01-25 通信方法、通信プログラム、及び、サーバ
US15/415,211 US20170214724A1 (en) 2016-01-25 2017-01-25 Communication Method, Storage Medium Storing Communication Program, and Server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016011634A JP6493236B2 (ja) 2016-01-25 2016-01-25 通信方法、通信プログラム、及び、サーバ

Publications (2)

Publication Number Publication Date
JP2017135460A JP2017135460A (ja) 2017-08-03
JP6493236B2 true JP6493236B2 (ja) 2019-04-03

Family

ID=59359403

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016011634A Expired - Fee Related JP6493236B2 (ja) 2016-01-25 2016-01-25 通信方法、通信プログラム、及び、サーバ

Country Status (2)

Country Link
US (1) US20170214724A1 (ja)
JP (1) JP6493236B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6424906B2 (ja) * 2017-01-23 2018-11-21 ブラザー工業株式会社 通信方法及び通信プログラム
US10932129B2 (en) 2017-07-24 2021-02-23 Cisco Technology, Inc. Network access control
US11803179B2 (en) * 2018-10-31 2023-10-31 Toshiba Mitsubishi-Electric Industrial Systems Corporation SCADA web HMI system
JP7143874B2 (ja) * 2020-05-19 2022-09-29 oVice株式会社 情報処理装置、情報処理方法およびプログラム
CN111885017B (zh) * 2020-07-06 2021-03-02 全时云商务服务股份有限公司 终端掉线响应系统、方法、装置、服务器及存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3472217B2 (ja) * 1999-12-28 2003-12-02 株式会社エヌ・ティ・ティ・ドコモ 仮想端末構成方法及びそのシステム
US20020075303A1 (en) * 2000-12-18 2002-06-20 Nortel Networks Limited And Bell Canada Method and system for creating a virtual team environment
JP5434390B2 (ja) * 2009-09-01 2014-03-05 株式会社リコー 電子会議システム、多地点接続装置、データ通信方法、プログラム、記録媒体及び通信装置
JP5686049B2 (ja) * 2011-06-09 2015-03-18 サクサ株式会社 電話システム
NO341411B1 (no) * 2013-03-04 2017-10-30 Cisco Tech Inc Virtuelle endepunkter i videokonferanser

Also Published As

Publication number Publication date
US20170214724A1 (en) 2017-07-27
JP2017135460A (ja) 2017-08-03

Similar Documents

Publication Publication Date Title
JP6493236B2 (ja) 通信方法、通信プログラム、及び、サーバ
US9024995B2 (en) Video calling using a remote camera device to stream video to a local endpoint host acting as a proxy
CA2797986C (en) Collaboration system and method
US11489891B2 (en) Virtual video driver bridge system for multi-source collaboration within a web conferencing system
US8305421B2 (en) Automatic determination of a configuration for a conference
WO2015117513A1 (zh) 视频会议控制方法和系统
JP3659528B2 (ja) テレビ会議システム
US10079867B2 (en) Apparatus, system, and method of controlling output of content data, and recording medium
WO2016184001A1 (zh) 视频监控处理方法及装置
JP2014512716A (ja) 遠隔制御スタジオ・カメラ・システム
US9398260B2 (en) Teleconference system, storage medium storing program for server apparatus, and storage medium storing program for terminal apparatus
JP2021513768A (ja) ミーティングの参加者が機能デバイスを利用できるようにするための方法およびシステム
JP6387972B2 (ja) 通信方法、通信システム、及び、通信プログラム
JP2016012863A (ja) 端末装置、プログラム及び遠隔会議方法
US9438857B2 (en) Video conferencing system and multi-way video conference switching method
CN103581607B (zh) 使用远程摄像机设备将视频流传递到本地端点主机的方法
WO2013175717A1 (ja) テレビ会議システム
JP2007020062A (ja) コミュニケーションシステムにおけるネットワークカメラの接続方法
JP2007215016A (ja) 多地点会議システム及びその制御方法、並びにプログラム
CN113726534A (zh) 会议控制方法、装置、电子设备及存储介质
US11444821B2 (en) Method for conducting an audio and/or video conference
JP2022038408A (ja) 処理装置、プログラム、処理方法、会議システム、及び会議方法
WO2015017680A2 (en) Systems and methods for split echo cancellation
TWI531244B (zh) 視訊會議資料處理方法及系統
JP2019532524A (ja) 複数のビデオ会議用端末を用いてマルチスクリーンビデオ会議を提供できるビデオ会議サーバー及びその方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170922

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180925

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181023

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181220

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: 20190205

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190218

R150 Certificate of patent or registration of utility model

Ref document number: 6493236

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees