(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024082313
(43)【公開日】2024-06-20
(54)【発明の名称】オンライン会議制御装置およびオンライン会議制御プログラム
(51)【国際特許分類】
H04N 7/15 20060101AFI20240613BHJP
H04L 65/4053 20220101ALI20240613BHJP
【FI】
H04N7/15 120
H04N7/15
H04L65/4053
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2022196063
(22)【出願日】2022-12-08
(71)【出願人】
【識別番号】518133201
【氏名又は名称】富士通クライアントコンピューティング株式会社
(74)【代理人】
【識別番号】110002918
【氏名又は名称】弁理士法人扶桑国際特許事務所
(72)【発明者】
【氏名】森久保 ゆり
(72)【発明者】
【氏名】渡 正一
【テーマコード(参考)】
5C164
【Fターム(参考)】
5C164FA10
5C164SC11S
5C164UB81S
5C164VA07P
5C164VA11P
5C164VA13P
5C164VA41P
5C164YA15
(57)【要約】
【課題】オンライン会議の利便性を向上させることができる。
【解決手段】オンライン会議制御装置10は、オンライン会議に接続している端末1a,1b,1c,1d,1e,1fそれぞれに対応するグループ識別子を記憶する。オンライン会議制御装置10は、端末1a,1b,1c,1d,1e,1fのうちの第1端末から送信されたオンライン会議で送受信される会議データを再生または表示するよう、第1端末以外の端末それぞれを制御する。オンライン会議制御装置10は、第1設定が適用された場合、第1端末から送信された会議データを再生または表示するよう、第1端末と同じグループ識別子に対応する第2端末のうちの、第1端末以外の端末それぞれを制御する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
オンライン会議に接続している複数の端末それぞれに対応するグループ識別子を記憶する記憶部と、
前記複数の端末のうちの第1端末から送信された前記オンライン会議で送受信される会議データを再生または表示するよう、前記複数の端末のうちの前記第1端末以外の端末それぞれを制御し、第1設定が適用された場合、前記第1端末から送信された前記会議データを再生または表示するよう、前記複数の端末のうちの前記第1端末と同じグループ識別子に対応する第2端末のうちの、前記第1端末以外の端末それぞれを制御する処理部と、
を有するオンライン会議制御装置。
【請求項2】
前記処理部は、前記第1端末から前記第1設定の適用を要求されると、前記第2端末それぞれから送信された前記会議データを再生または表示するよう、前記第2端末のうちの、前記会議データを送信した端末以外の端末それぞれを制御する、
請求項1記載のオンライン会議制御装置。
【請求項3】
前記処理部は、前記複数の端末それぞれのグループ識別子を、前記複数の端末それぞれが前記オンライン会議へのログインに用いるログイン情報に基づいて決定する、
請求項1記載のオンライン会議制御装置。
【請求項4】
前記処理部は、前記第1端末から前記第2端末のうちの第3端末を指定して第2設定の適用を要求されると、前記第1端末から送信された前記会議データを再生または表示するよう前記第3端末を制御し、前記第3端末から送信された前記会議データを再生または表示するよう前記第1端末を制御する、
請求項1記載のオンライン会議制御装置。
【請求項5】
コンピュータに、
オンライン会議に接続している複数の端末のうちの第1端末から送信された前記オンライン会議で送受信される会議データを再生または表示するよう、前記複数の端末のうちの前記第1端末以外の端末それぞれを制御し、
第1設定が適用された場合、前記第1端末から送信された前記会議データを再生または表示するよう、前記複数の端末のうちの前記第1端末と同じグループ識別子に対応する第2端末のうちの、前記第1端末以外の端末それぞれを制御する、
処理を実行させるオンライン会議制御プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、オンライン会議制御装置およびオンライン会議制御プログラムに関する。
【背景技術】
【0002】
ネットワークを介して接続された端末を用いて、オンライン会議が行われることがある。オンライン会議では、各端末は、自身のカメラやマイクで取得した映像や音声を他の端末へ送信し、他の端末から受信した映像や音声を再生する。
【0003】
オンライン会議に関する技術としては、例えば、他の発話者が発話した音声によるエコーを抑制するヘッドセットが提案されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
オンライン会議では、会社のグループと別の会社のグループ等の複数のグループが参加することがある。オンライン会議中に、他のグループに聞こえないようグループ内で会話する場合、オンライン会議とは別の連絡方法でやり取りすることとなり不便である。
【0006】
1つの側面では、本件は、オンライン会議の利便性を向上させることを目的とする。
【課題を解決するための手段】
【0007】
1つの案では、記憶部と処理部とを有するオンライン会議制御装置が提供される。記憶部は、オンライン会議に接続している複数の端末それぞれに対応するグループ識別子を記憶する。処理部は、複数の端末のうちの第1端末から送信されたオンライン会議で送受信される会議データを再生または表示するよう、複数の端末のうちの第1端末以外の端末それぞれを制御し、第1設定が適用された場合、第1端末から送信された会議データを再生または表示するよう、複数の端末のうちの第1端末と同じグループ識別子に対応する第2端末のうちの、第1端末以外の端末それぞれを制御する。
【発明の効果】
【0008】
1態様によれば、オンライン会議の利便性を向上させることができる。
【図面の簡単な説明】
【0009】
【
図1】第1の実施の形態に係る情報処理システムの一例を示す図である。
【
図2】第2の実施の形態に係る情報処理システムの一例を示す図である。
【
図4】制御サーバおよび端末の機能例を示すブロック図である。
【
図12】端末による会議制御処理の手順の一例を示すフローチャートである。
【
図13】参加者確認処理の手順の一例を示すフローチャートである。
【
図14】画面レイアウト作成処理の手順の一例を示すフローチャートである。
【
図15】グループID決定処理の手順の一例を示すフローチャートである。
【
図16】制御サーバによる会議制御処理の手順の一例を示すフローチャートである。
【
図17】コマンド制御処理の手順の一例を示すフローチャートである。
【
図18】参照処理の手順の一例を示すフローチャートである。
【
図19】作成処理の手順の一例を示すフローチャートである。
【
図20】追加処理の手順の一例を示すフローチャートである。
【
図21】削除処理の手順の一例を示すフローチャートである。
【
図22】映像音声データ送信処理の手順の一例を示すフローチャートである。
【
図23】グループ会話設定の解除の一例を示す図である。
【発明を実施するための形態】
【0010】
以下、本実施の形態について図面を参照して説明する。なお各実施の形態は、矛盾のない範囲で複数の実施の形態を組み合わせて実施することができる。
〔第1の実施の形態〕
まず第1の実施の形態について説明する。
【0011】
図1は、第1の実施の形態に係る情報処理システムの一例を示す図である。第1の実施の形態は、オンライン会議システムを提供するものである。
第1の実施の形態の投票システムは、端末1a,1b,1c,1d,1e,1fおよびオンライン会議制御装置10を有する。端末1a~1fは、オンライン会議に接続しているコンピュータである。端末1a~1fは、それぞれオンライン会議に参加するユーザに操作される。なお、端末1a,1b,1cは、同じグループに属する端末であり、端末1d,1e,1fは、端末1a~1cと異なるグループに属する端末である。例えば、端末1a~1cは、同じ会社の従業員によって操作される端末であり、端末1d~1fは、端末1a~1cを操作するユーザと異なる会社の従業員によって操作される端末である。また、例えば、端末1a~1cは、会社の同じ部門の従業員によって操作される端末であり、端末1d~1fは、端末1a~1cを操作するユーザと同じ会社の異なる部門の従業員によって操作される端末である。
【0012】
オンライン会議制御装置10は、オンライン会議において会議データの送受信を制御するコンピュータである。オンライン会議で送受信される会議データは、端末1a~1fそれぞれが入出力デバイスから取得し、他の端末に提供するデータである。会議データは、例えば、マイクから取得される音声、カメラから取得される画像や映像、キーボードから入力されるテキスト等である。また、例えば、会議データは、音声、画像や映像、テキスト等の組み合わせであってもよい。
【0013】
オンライン会議制御装置10は、記憶部11と処理部12とを有する。記憶部11は、例えば、オンライン会議制御装置10が有するメモリまたはストレージ装置である。記憶部11は、グループリスト11aを記憶する。グループリスト11aは、端末1a~1fそれぞれに対応するグループ識別子を示す。グループ識別子は、端末1a~1fが属するグループを示す識別子である。例えば、グループリスト11aには、端末1a~1fそれぞれのIP(Internet Protocol)アドレスと、グループ識別子とが対応付けて登録されている。ここで、端末1a~1cそれぞれのIPアドレスは、同じグループ識別子に対応付けられている。処理部12は、オンライン会議制御装置10を制御し、所要の処理を実行可能である。処理部12は、例えば、オンライン会議制御装置10が有するプロセッサまたは演算回路である。
【0014】
まず、端末1a~1fは、オンライン会議制御装置10にアクセスしてオンライン会議にログインする。ここで、処理部12は、端末1a~1fそれぞれのグループ識別子を、端末1a~1fそれぞれがオンライン会議へのログインに用いるログイン情報に基づいて決定する。例えば、処理部12は、端末1a~1fそれぞれがオンライン会議へのログインに用いたシングルサインオンの情報に基づいて端末1a~1fそれぞれのグループ識別子を決定する。また、例えば、処理部12は、端末1a~1fそれぞれがオンライン会議制御装置10へのアクセスに用いたURL(Uniform Resource Locator)に基づいて端末1a~1fそれぞれのグループ識別子を決定する。
【0015】
オンライン会議中、処理部12は、端末1a~1fのうちの第1端末から送信された会議データを再生または表示するよう、端末1a~1fのうちの第1端末以外の端末それぞれを制御する。例えば、端末1aは、会議データをオンライン会議制御装置10に送信する。すると、処理部12は、端末1aから受信した会議データを端末1b,1c,1d,1e,1fに送信し、端末1b~1fに会議データの再生または表示を指示する。
【0016】
ここで、端末1a~1fは、オンライン会議制御装置10に第1設定の適用を要求できる。第1設定は、グループ内の端末同士で会議データをやり取りする設定である。処理部12は、第1端末から第1設定の適用を要求されると、第1端末が属するグループ内の端末同士で会議データをやり取りする設定に切り替える。処理部12は、第1設定が適用された場合、第1端末から送信された会議データを再生または表示するよう、端末1a~1fのうちの第1端末と同じグループ識別子に対応する第2端末のうちの、第1端末以外の端末それぞれを制御する。
【0017】
例えば、処理部12は、端末1aから第1設定の適用を要求されると、端末1aから受信した会議データを端末1b,1cに送信し、端末1b,1cに会議データの再生または表示を指示する。なお、処理部12は、端末1aから受信した会議データを端末1b~1fに送信し、端末1b~1fのうち端末1b,1cのみが会議データの再生または表示をするよう指示してもよい。
【0018】
また、処理部12は、第1設定が適用された場合、第2端末それぞれから送信された会議データを再生または表示するよう、第2端末のうちの、会議データを送信した端末以外の端末それぞれを制御する。例えば、処理部12は、端末1a~1cのいずれかから会議データを受信すると、受信した会議データを端末1a~1cのうちの、会議データを送信した端末以外に送信し、会議データの再生または表示を指示する。
【0019】
第1の実施の形態によれば、オンライン会議制御装置10の記憶部11は、オンライン会議に接続している端末1a~1fそれぞれに対応するグループ識別子を記憶する。オンライン会議制御装置10の処理部12は、端末1a~1fのうちの第1端末から送信されたオンライン会議で送受信される会議データを再生または表示するよう、端末1a~1fのうちの第1端末以外の端末それぞれを制御する。処理部12は、第1設定が適用された場合、第1端末から送信された会議データを再生または表示するよう、端末1a~1fのうちの第1端末と同じグループ識別子に対応する第2端末のうちの、第1端末以外の端末それぞれを制御する。
【0020】
これにより、オンライン会議制御装置10は、オンライン会議において、他のグループに聞こえないようグループ内で会話できるようにする。よって、オンライン会議制御装置10は、オンライン会議の利便性を向上させることができる。
【0021】
また、処理部12は、第1端末から第1設定の適用を要求されると、第2端末それぞれから送信された会議データを再生または表示するよう、第2端末のうちの、会議データを送信した端末以外の端末それぞれを制御する。これにより、オンライン会議制御装置10は、グループ内で会話できるようにする設定を、第1端末と同じグループの端末にも適用することができる。
【0022】
また、処理部12は、端末1a~1fそれぞれのグループ識別子を、端末1a~1fそれぞれがオンライン会議へのログインに用いるログイン情報に基づいて決定する。これにより、オンライン会議制御装置10は、グループ識別子を適切に決定できる。
【0023】
なお、処理部12は、第1端末から第2端末のうちの第3端末を指定して第2設定の適用を要求されると、第1端末から送信された会議データを再生または表示するよう第3端末を制御してもよい。また処理部12は、第3端末から送信された会議データを再生または表示するよう第1端末を制御してもよい。例えば、第2設定の適用の要求の際に端末1bが指定された場合、第3端末は、端末1bである。これにより、オンライン会議制御装置10は、オンライン会議において、他の参加者に聞こえないよう個別で会話できるようにすることができる。
【0024】
〔第2の実施の形態〕
次に、第2の実施の形態について説明する。第2の実施の形態は、複数のグループが合同で行うオンライン会議システムを提供するものである。
【0025】
図2は、第2の実施の形態に係る情報処理システムの一例を示す図である。第2の実施の形態の情報処理システムは、制御サーバ100および端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3を有する。制御サーバ100および端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3は、ネットワーク30に接続されている。ネットワーク30は、例えば、インターネット等の広域ネットワークである。
【0026】
制御サーバ100は、オンライン会議におけるデータの送受信や設定を管理するサーバコンピュータである。制御サーバ100は、ユーザ20a-1,20a-2,20a-3,20b-1,20b-2,20b-3によるオンライン会議を制御する。なお、ユーザ20a-1,20a-2,20a-3と、ユーザ20b-1,20b-2,20b-3は、異なるグループに属するユーザである。例えば、ユーザ20a-1,20a-2,20a-3と、ユーザ20b-1,20b-2,20b-3は、異なる会社の従業員である。また、例えば、ユーザ20a-1,20a-2,20a-3と、ユーザ20b-1,20b-2,20b-3は、同じ会社の異なる部門の従業員である。
【0027】
なお、端末200a-1は、ユーザ20a-1に操作されている。また、端末200a-2は、ユーザ20a-2に操作されている。また、端末200a-3は、ユーザ20a-3に操作されている。また、端末200b-1は、ユーザ20b-1に操作されている。また、端末200b-2は、ユーザ20b-2に操作されている。また、端末200b-3は、ユーザ20b-3に操作されている。
【0028】
制御サーバ100は、端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3から、各端末のカメラおよびマイクから取得した映像および音声(映像音声データ)を受信する。なお、映像音声データは、第1の実施の形態に示した会議データの一例である。
【0029】
また、制御サーバ100は、端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3から受信した映像音声データを、当該映像音声データを送信した端末以外の端末に送信する。ここで、制御サーバ100は、端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3から、設定変更のための画面上のボタン押下の通知を受け付ける。すると、制御サーバ100は、受信した映像音声データを、当該映像音声データを送信した端末を操作するユーザと同じグループのユーザが操作する端末に送信するよう制御する。
【0030】
端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3は、オンライン会議に用いられる端末である。端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3は、カメラおよびマイクから取得した映像音声データを制御サーバ100に送信する。また、端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3は、他の端末が制御サーバ100に送信した映像音声データを制御サーバ100から受信し、受信した映像音声データを出力する。また、端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3は、画面上のボタンに対する押下操作を受け付けると、制御サーバ100にボタン押下を通知する。
【0031】
なお、以下では、端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3のうち、端末200a-1についてのみ詳細に説明する。端末200a-2,200a-3,200b-1,200b-2,200b-3も、端末200a-1と同様の処理を実行する。
【0032】
図3は、端末のハードウェアの一例を示す図である。端末200a-1は、プロセッサ201によって装置全体が制御されている。プロセッサ201には、バス211を介してメモリ202と複数の周辺機器が接続されている。プロセッサ201は、マルチプロセッサであってもよい。プロセッサ201は、例えばCPU(Central Processing Unit)、MPU(Micro Processing Unit)、またはDSP(Digital Signal Processor)である。プロセッサ201がプログラムを実行することで実現する機能の少なくとも一部を、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)等の電子回路で実現してもよい。
【0033】
メモリ202は、端末200a-1の主記憶装置として使用される。メモリ202には、プロセッサ201に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、メモリ202には、プロセッサ201による処理に利用する各種データが格納される。メモリ202としては、例えばRAM(Random Access Memory)等の揮発性の半導体記憶装置が使用される。
【0034】
バス211に接続されている周辺機器としては、ストレージ装置203、GPU(Graphics Processing Unit)204、機器接続インタフェース205、入力インタフェース206、光学ドライブ装置207、機器接続インタフェース208、音声インタフェース209およびネットワークインタフェース210がある。
【0035】
ストレージ装置203は、内蔵した記録媒体に対して、電気的または磁気的にデータの書き込みおよび読み出しを行う。ストレージ装置203は、コンピュータの補助記憶装置として使用される。ストレージ装置203には、OSのプログラム、アプリケーションプログラム、および各種データが格納される。なお、ストレージ装置203としては、例えばHDD(Hard Disk Drive)やSSD(Solid State Drive)を使用することができる。
【0036】
GPU204には、モニタ31が接続されている。GPU204は、プロセッサ201からの命令に従って、画像をモニタ31の画面に表示させる。モニタ31としては、有機EL(Electro Luminescence)を用いた表示装置や液晶表示装置等がある。
【0037】
機器接続インタフェース205には、カメラ32が接続されている。カメラ32は、例えばモニタ31の画面上部に設置される、撮影装置である。カメラ32は、プロセッサ201からの命令に従って、カメラ32のレンズを向けた先の光景の静止画または動画のデータを生成し、メモリ202に格納する。
【0038】
入力インタフェース206には、キーボード33とマウス34とが接続されている。入力インタフェース206は、キーボード33やマウス34から送られてくる信号をプロセッサ201に送信する。なお、マウス34は、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、タッチパネル、タブレット、タッチパッド、トラックボール等がある。
【0039】
光学ドライブ装置207は、レーザ光等を利用して、光ディスク35に記録されたデータの読み取りを行う。光ディスク35は、光の反射によって読み取り可能なようにデータが記録された可搬型の記録媒体である。光ディスク35には、DVD(Digital Versatile Disc)、DVD-RAM、CD-ROM(Compact Disc Read Only Memory)、CD-R(Recordable)/RW(ReWritable)等がある。
【0040】
機器接続インタフェース208は、端末200a-1に周辺機器を接続するための通信インタフェースである。例えば、機器接続インタフェース208には、メモリ装置36やメモリリーダライタ37を接続することができる。メモリ装置36は、機器接続インタフェース208との通信機能を搭載した記録媒体である。メモリリーダライタ37は、メモリカード37aへのデータの書き込み、またはメモリカード37aからのデータの読み出しを行う装置である。メモリカード37aは、カード型の記録媒体である。
【0041】
音声インタフェース209には、マイク38とスピーカ39とが接続されている。音声インタフェース209は、マイク38から入力された音声信号をディジタル信号に変換して、プロセッサ201に送信する。また、音声インタフェース209は、プロセッサ201から音声データを受信すると、音声データに従った音声信号を生成し、スピーカ39から音声出力を行う。
【0042】
ネットワークインタフェース210は、ネットワーク30に接続されている。ネットワークインタフェース210は、ネットワーク30を介して、他のコンピュータまたは通信機器との間でデータの送受信を行う。
【0043】
端末200a-1は、以上のようなハードウェア構成によって、第2の実施の形態の処理機能を実現することができる。また、第1の実施の形態に示したオンライン会議制御装置10、制御サーバ100および端末200a-2,200a-3,200b-1,200b-2,200b-3も、
図3に示した端末200a-1と同様のハードウェアにより実現することができる。ただし、オンライン会議制御装置10および制御サーバ100は、機器接続インタフェース205および音声インタフェース209を有していなくてもよい。また、制御サーバ100が有するプロセッサは、第1の実施の形態に示した処理部12の一例である。また、制御サーバ100が有するメモリまたはストレージ装置は、第1の実施の形態に示した記憶部11の一例である。
【0044】
制御サーバ100は、例えば、コンピュータ読み取り可能な記録媒体に記録されたプログラムを実行することにより、第2の実施の形態の処理機能を実現する。制御サーバ100に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことができる。例えば、制御サーバ100に実行させるプログラムを制御サーバ100のストレージ装置に格納しておくことができる。制御サーバ100のプロセッサは、制御サーバ100のストレージ装置内のプログラムの少なくとも一部を制御サーバ100のメモリにロードし、プログラムを実行する。制御サーバ100に実行させるプログラムを、光ディスク、メモリ装置、メモリカード等の可搬型記録媒体に記録しておくこともできる。可搬型記録媒体に格納されたプログラムは、例えば、制御サーバ100のプロセッサからの制御により、制御サーバ100のストレージ装置にインストールされた後、実行可能となる。また、制御サーバ100のプロセッサが、可搬型記録媒体から直接プログラムを読み出して実行することもできる。次に、制御サーバ100および端末200a-1の機能について詳細に説明する。
【0045】
図4は、制御サーバおよび端末の機能例を示すブロック図である。制御サーバ100は、記憶部120、接続管理部130、ID管理部140およびデータ管理部150を有する。記憶部120は、制御サーバ100が有するメモリまたはストレージ装置の記憶領域を用いて実現される。接続管理部130、ID管理部140およびデータ管理部150は、制御サーバ100が有するメモリに記憶されたプログラムを制御サーバ100が有するプロセッサが実行することで実現される。
【0046】
記憶部120は、参加者情報121およびグループIDリスト122を記憶する。参加者情報121は、オンライン会議の参加者に関する情報である。参加者情報121には、端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3それぞれのIPアドレスが登録される。また、参加者情報121には、端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3それぞれが属するグループのID(グループID)としてログイン時に設定される初期グループIDが登録される。初期グループIDは、第1の実施の形態に示したグループ識別子の一例である。グループIDリスト122は、端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3が属するグループIDを示すリストである。
【0047】
接続管理部130は、端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3との接続を管理する。接続管理部130は、端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3によるオンライン会議へのログインを受け付ける。また、接続管理部130は、端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3からの要求に応じて、参加者情報121を要求元の端末に送信する。
【0048】
また、接続管理部130は、グループ会話設定の適用を要求されると、グループ会話設定の適用を要求した端末と同じ初期グループIDの端末に、映像音声データに初期グループIDを設定して送信するよう指示する。グループ会話設定は、第1の実施の形態に示した第1設定の一例である。
【0049】
また、接続管理部130は、端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3からコマンドを受信し、ID管理部140によって受信したコマンドに対する処理結果をコマンドの送信元の端末に送信する。例えば、接続管理部130は、ユーザ同士個別で会話をする個別会話設定の適用を要求するための作成コマンドを受信すると、ID管理部140によって作成したグループIDをコマンドの送信元の端末および個別会話設定の相手端末に通知する。そして、接続管理部130は、送信元の端末および個別会話設定の相手端末に、通知したグループIDを映像音声データに設定して送信するよう指示する。個別会話設定は、第1の実施の形態に示した第2設定の一例である。また、個別会話設定の相手端末は、第1の実施の形態に示した第3端末の一例である。
【0050】
ID管理部140は、グループIDリスト122に登録されたグループIDを管理する。ID管理部140は、接続管理部130が端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3のログインを受け付けると、シングルサインオンの情報に応じて、ログインした端末の初期グループIDを設定する。シングルサインオンの情報は、第1の実施の形態に示したログイン情報の一例である。例えば、ID管理部140は、ログインした端末が、グループIDリスト122に登録されている端末とシングルサインオンの情報が一致する場合、情報が一致した端末と同じ初期グループIDをログインした端末に設定してグループIDリスト122に登録する。また、ID管理部140は、ログインした端末が、グループIDリスト122に登録されている端末とシングルサインオンの情報が一致しない場合、新規グループIDを作成する。そして、ID管理部140は、作成したグループIDをログインした端末の初期グループIDに設定してグループIDリスト122に登録する。
【0051】
また、ID管理部140は、接続管理部130が受信したコマンドに応じた処理を実行する。例えば、ID管理部140は、参照コマンドに応じて、グループIDリスト122を参照する。また、ID管理部140は、追加コマンドに応じて、グループIDリスト122にリストを追加する。また、ID管理部140は、作成コマンドに応じて、未使用のグループIDを作成し、グループIDリスト122に登録する。また、ID管理部140は、削除コマンドに応じてグループIDリスト122からリストを削除する。
【0052】
データ管理部150は、端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3から受信した映像音声データを、送信先に送信する。データ管理部150は、映像音声データの送信先を映像音声データに設定されたグループIDに基づいて決定する。データ管理部150は、映像音声データにグループIDとして全体送信用の値(例えば、0x00000000)が設定されている場合、オンライン会議に接続されている端末のうち、送信元の端末以外の端末に映像音声データを送信する。また、データ管理部150は、映像音声データに設定されているグループIDに属する端末をグループIDリスト122を参照して特定し、特定した端末のうち、送信元の端末以外の端末に映像音声データを送信する。
【0053】
端末200a-1は、記憶部220、接続管理部230および入出力管理部240を有する。記憶部220は、メモリ202またはストレージ装置203の記憶領域を用いて実現される。接続管理部230および入出力管理部240は、メモリ202に記憶されたプログラムをプロセッサ201が実行することで実現される。なお、端末200a-2,200a-3,200b-1,200b-2,200b-3も、端末200a-1と同様の機能を有する。
【0054】
記憶部220は、参加者情報121を記憶する。参加者情報121は、制御サーバ100から取得される。接続管理部230は、制御サーバ100との接続を管理する。接続管理部230は、オンライン会議にログインする。例えば、接続管理部230は、所定のURLから、シングルサインオンの情報を制御サーバ100に通知して制御サーバ100にアクセスする。接続管理部230は、制御サーバ100に参加者情報121を要求する。そして、接続管理部230は、制御サーバ100から取得した参加者情報121を記憶部220に保存する。
【0055】
接続管理部230は、入出力管理部240が受け付けたボタン押下操作に応じて、グループ会話設定の適用を制御サーバ100へ要求する。また、接続管理部230は、入出力管理部240が受け付けた個別会話設定の選択操作に応じて、端末200a-1と個別会話設定の相手端末が属するグループIDを作成する作成コマンドを、制御サーバ100へ送信する。
【0056】
接続管理部230は、映像音声データを生成し、生成した映像音声データにグループIDを設定して制御サーバ100に送信する。接続管理部230は、入出力管理部240が取得した音声データおよび映像データを含む映像音声データを生成する。
【0057】
ここで、接続管理部230は、個別会話設定が適用されている場合、作成コマンドの結果データとして通知されたグループIDを映像音声データに設定する。接続管理部230は、グループ会話設定が適用されている場合、参加者情報121を参照して端末200a-1の初期グループIDを特定し、端末200a-1の初期グループIDを映像音声データに設定する。接続管理部230は、個別会話設定およびグループ会話設定が適用されていない場合、全体送信用の値(例えば、0x00000000)をグループIDとして映像音声データに設定する。
【0058】
入出力管理部240は、入出力処理を管理する。入出力管理部240は、映像音声データを生成するためのデータの入力を受け付ける。入出力管理部240は、マイク38から入力された音声データを取り込み、カメラ32から入力された映像データを取り込む。
【0059】
また、入出力管理部240は、映像音声データを制御サーバ100から受信すると、受信した映像音声データを出力する。例えば、入出力管理部240は、映像音声データから取り出した音声データをスピーカ39に出力させ、映像音声データから取り出した映像データをモニタ31に出力させる。なお、映像音声データを出力する処理は、第1の実施の形態に示した会議データを再生または表示する処理の一例である。また、入出力管理部240は、ボタン押下操作および個別会話設定の選択操作を受け付ける。
【0060】
なお、
図4に示した各要素間を接続する線は通信経路の一部を示すものであり、図示した通信経路以外の通信経路も設定可能である。次に、記憶部120が記憶する情報について説明する。
【0061】
図5は、参加者情報の一例を示す図である。参加者情報121は、オンライン会議の参加者に関する情報である。参加者情報121は、ユーザ名、初期グループIDおよびIPアドレスの項目を有する。
【0062】
ユーザ名の項目には、ユーザ20a-1,20a-2,20a-3,20b-1,20b-2,20b-3それぞれのユーザ名が設定される。初期グループIDの項目には、端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3それぞれのログイン時に付与されるグループIDが設定される。IPアドレスの項目には、端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3それぞれのIPアドレスが設定される。
【0063】
図6は、グループIDリストの一例を示す図である。グループIDリスト122は、端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3が属するグループIDを示すリストである。グループIDリスト122は、グループID格納先頭アドレスを有する。グループID格納先頭アドレスは、グループIDが格納されたリストの先頭アドレスである。グループIDが格納されたリストの各データは、次アドレス、グループIDおよび対象参加者格納先頭アドレスを有する。
【0064】
次アドレスは、リストの次のデータが格納されているアドレスである。なお、リストの末尾のデータは、次アドレスとして0が設定される。グループIDには、グループIDが設定される。なお、グループIDは、1バイト(8ビット)のうち、いずれかのビットが1に設定されたビット列である。対象参加者格納先頭アドレスは、データに設定されたグループIDに属する端末のIPアドレスが格納されたリストの先頭アドレスである。IPアドレスが格納されたリストの各データは、次アドレスおよびIPアドレスを有する。
【0065】
次アドレスは、リストの次のデータが格納されているアドレスである。なお、リストの末尾のデータは、次アドレスとして0が設定される。IPアドレスには、端末のIPアドレスが設定される。次に、端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3が制御サーバ100に送信するコマンドについて説明する。
【0066】
図7は、コマンドの一例を示す図である。コマンド41は、端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3が制御サーバ100に送信するコマンドの一例である。コマンド41は、処理コード、グループID、送信元IPアドレス、参加者総数およびIPアドレスを含む。処理コードには、コマンドの種類を示すコードが設定される。グループIDには、処理対象のグループIDが設定される。なお、複数のビットが1に設定されたビット列がグループIDに設定されることで、対応するビットが1に設定されている複数のグループIDが処理対象として設定される。
【0067】
送信元IPアドレスには、コマンド41を送信した端末のIPアドレスが設定される。参加者総数には、処理対象のIPアドレスの数が設定される。なお、参加者総数には、処理内容を設定するための数値が設定されることもある。IPアドレスには、処理対象のIPアドレスが設定される。なお、コマンド41には、IPアドレスが複数設定されていてもよい。
【0068】
処理コードに0x0000が設定されている場合、コマンド41は、参照コマンドである。参照コマンドは、グループIDリスト122からグループIDまたはIPアドレスを参照するためのコマンドである。参照コマンドは、参加者総数に設定された数値で処理内容が設定される。参加者総数に処理対象のIPアドレスの数が設定されている参照コマンドは、処理対象のIPアドレスの端末が所属している全グループIDを取得するためのコマンドである。参加者総数に0が設定されている参照コマンドは、全グループIDを取得するためのコマンドである。参加者総数に-1が設定されている参照コマンドは、処理対象のグループIDに所属している全端末のIPアドレスを取得するためのコマンドである。
【0069】
処理コードに0x0001が設定されている場合、コマンド41は、作成コマンドである。作成コマンドは、未使用のグループIDをグループIDリスト122に作成し、処理対象のIPアドレスを作成したグループIDに追加するためのコマンドである。処理コードに0x0010が設定されている場合、コマンド41は、追加コマンドである。追加コマンドは、グループIDリスト122の処理対象のグループIDのリストに、処理対象のIPアドレスを追加するためのコマンドである。
【0070】
処理コードに0x0011が設定されている場合、コマンド41は、削除コマンドである。削除コマンドは、グループIDリスト122からIPアドレスを削除するためのコマンドである。削除コマンドは、参加者総数に設定された数値で処理内容が設定される。参加者総数に処理対象のIPアドレスの数が設定されている削除コマンドは、処理対象のIPアドレスをグループIDリスト122から削除するためのコマンドである。参加者総数に0が設定されている削除コマンドは、処理対象のグループIDをグループIDリスト122から削除するためのコマンドである。次に、コマンドに対して制御サーバ100が端末に送信する結果データについて説明する。
【0071】
図8は、結果データの一例を示す図である。結果データ42は、コマンドに対する結果を示すデータである。結果データ42は、処理コード、結果、グループID、参加者総数およびIPアドレスを含む。処理コードには、コマンドの種類を示すコードが設定される。処理コードに0x1000が設定されている場合、結果データ42は、参照コマンドに対する結果を示すデータである。処理コードに0x1001が設定されている場合、結果データ42は、作成コマンドに対する結果を示すデータである。処理コードに0x1010が設定されている場合、結果データ42は、追加コマンドに対する結果を示すデータである。処理コードに0x1011が設定されている場合、結果データ42は、削除コマンドに対する結果を示すデータである。
【0072】
結果には、コマンドの処理結果が設定される。コマンドの処理結果が正常の場合、結果には、OKが設定される。コマンドの処理結果が正常ではない場合、結果には、NGが設定される。グループIDには、コマンドの処理結果として通知されるグループIDが設定される。なお、複数のビットが1に設定されたビット列がグループIDに設定されることで、対応するビットが1に設定されている複数のグループIDが通知される。参加者総数には、コマンドの処理結果として通知されるIPアドレスの数が設定される。IPアドレスには、コマンドの処理結果として通知されるIPアドレスが設定される。なお、結果データ42には、IPアドレスが複数設定されていてもよい。次に、映像音声データについて説明する。
【0073】
図9は、映像音声データの一例を示す図である。映像音声データ43は、処理コード、グループID、送信元IPアドレス、音声データバイト数、音声データ、映像データバイト数および映像データを含む。処理コードには、映像音声データであることを示すコード(0x0111)が設定される。グループIDには、映像音声データ43の送信先の端末が属するグループIDが設定される。なお、全端末に送信する映像音声データ43のグループIDには、0x00000000が設定される。送信元IPアドレスには、映像音声データ43を送信した端末のIPアドレスが設定される。
【0074】
音声データバイト数には、音声データのサイズがバイト単位で設定される。音声データには、送信元の端末のマイクから取得された音声データが設定される。映像データバイト数には、映像データのサイズがバイト単位で設定される。映像データには、送信元の端末のカメラから取得された映像データが設定される。次に、グループ会話設定について説明する。
【0075】
図10は、グループ会話設定の一例を示す図である。端末200a-1は、会議画面51におけるボタン押下操作に応じて、グループ会話設定の適用を制御サーバ100へ要求する。会議画面51は、オンライン会議中にモニタ31に表示される画面である。会議画面51は、ユーザごとのウィンドウおよび設定変更ボタンを含む。ユーザごとのウィンドウは、各端末から送信された映像データを表示するためのウィンドウである。
【0076】
ユーザごとのウィンドウは、初期グループIDに応じて配置される。例えば、端末200a-1と同じ初期グループIDの端末から送信された映像データを表示するウィンドウは、会議画面51の下段に配置される。また、端末200a-1と異なる初期グループIDの端末から送信された映像データを表示するウィンドウは、会議画面51の上段に配置される。
【0077】
設定変更ボタンは、グループ会話設定の適用を制御サーバ100へ要求するためのボタンである。端末200a-1は、設定変更ボタンの押下操作を受け付けると、グループ会話設定の適用を制御サーバ100へ要求する。すると、制御サーバ100は、端末200a-1と同じグループIDに属する端末にグループ会話設定の適用を通知し、映像音声データのグループIDに初期グループIDを設定するよう指示する。これにより、制御サーバ100は、端末200a-1,200a-2,200a-3から送信された映像音声データを、端末200a-1,200a-2,200a-3のうちの送信元以外の端末に送信する。一方、制御サーバ100は、端末200b-1,200b-2,200b-3から送信された映像音声データを、端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3のうちの送信元以外の端末に送信する。
【0078】
このようにグループ会話設定が適用されると、制御サーバ100は、ユーザ20b-1,20b-2,20b-3の会話が全体に聞こえ、ユーザ20a-1,20a-2,20a-3の会話がグループ内にのみ聞こえるように制御する。これにより、制御サーバ100は、ユーザ20a-1,20a-2,20a-3がユーザ20b-1,20b-2,20b-3に聞こえないように会話できるように制御できる。よって、制御サーバ100は、オンライン会議の利便性を向上させることができる。次に、個別会話設定について説明する。
【0079】
図11は、個別会話設定の一例を示す図である。端末200a-1は、例えば、会議画面51において個別会話設定を適用する対象の端末に対応するウィンドウの選択操作に応じて、個別会話設定の適用を制御サーバ100へ要求する。
【0080】
例えば、端末200a-1は、端末200a-3に対応するウィンドウの選択を受け付けると、端末200a-1および端末200a-3のIPアドレスを設定した作成コマンドを制御サーバ100へ送信する。すると、制御サーバ100は、未使用のグループIDを作成し、作成したグループIDをグループIDリスト122に登録する。制御サーバ100は、登録したグループIDのリストに端末200a-1および端末200a-3のIPアドレスを追加する。そして、制御サーバ100は、作成したグループIDを設定した結果データを端末200a-1および端末200a-3に通知し、映像音声データのグループIDに当該グループIDを設定するよう指示する。
【0081】
これにより、制御サーバ100は、端末200a-1,200a-3から送信された映像音声データを、端末200a-1,200a-3のうちの送信元以外の端末に送信する。一方、制御サーバ100は、端末200a-2,200b-1,200b-2,200b-3から送信された映像音声データを、端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3のうちの送信元以外の端末に送信する。
【0082】
このように個別会話設定が適用されると、制御サーバ100は、ユーザ20a-1,20a-3の会話がユーザ20a-1,20a-3にのみ聞こえるように制御する。これにより、制御サーバ100は、ユーザ20a-1,20a-3が他のユーザに聞こえないように会話できるように制御できる。よって、制御サーバ100は、オンライン会議において、他の参加者に聞こえないよう個別で会話できるようにすることができる。
【0083】
以下、制御サーバ100および端末200a-1が実行する処理の手順について、詳細に説明する。まず、端末200a-1が実行する処理の手順について、詳細に説明する。
図12は、端末による会議制御処理の手順の一例を示すフローチャートである。以下、
図12に示す処理をステップ番号に沿って説明する。
【0084】
[ステップS11]接続管理部230は、オンライン会議にログインする。例えば、接続管理部230は、所定のURLから、シングルサインオンのアカウント名を制御サーバ100に通知して制御サーバ100にアクセスする。
【0085】
[ステップS12]接続管理部230は、制御サーバ100から通信データを取得する。例えば、接続管理部230は、映像音声データ、結果データ、グループ会話設定の適用の通知等のデータを取得する。
【0086】
[ステップS13]接続管理部230は、制御サーバ100から映像音声データを受信したか否かを判定する。接続管理部230は、映像音声データを受信したと判定した場合、処理をステップS14に進める。また、接続管理部230は、映像音声データを受信していないと判定した場合、処理をステップS16に進める。
【0087】
[ステップS14]入出力管理部240は、受信した映像音声データから音声データを取り出す。そして、入出力管理部240は、取り出した音声データをスピーカ39に出力させる。
【0088】
[ステップS15]入出力管理部240は、受信した映像音声データから映像データを取り出す。そして、入出力管理部240は、取り出した映像データをモニタ31に出力させる。例えば、入出力管理部240は、ステップS17の画面レイアウト作成処理において決定される、受信した映像音声データに設定されたIPアドレスの端末に対応するウィンドウの会議画面51における位置を特定する。入出力管理部240は、特定した位置に取り出した映像データを表示する。そして、処理がステップS22に進む。
【0089】
[ステップS16]接続管理部230は、参加者確認処理を実行する。参加者確認処理の詳細については後述する(
図13参照)。
[ステップS17]接続管理部230および入出力管理部240は、共同して、画面レイアウト作成処理を実行する。画面レイアウト作成処理の詳細については後述する(
図14参照)。
【0090】
[ステップS18]接続管理部230および入出力管理部240は、共同して、映像音声データに設定するグループIDを決定するグループID決定処理を実行する。グループID決定処理の詳細については後述する(
図15参照)。
【0091】
[ステップS19]入出力管理部240は、マイク38から入力された音声データを取り込む。
[ステップS20]入出力管理部240は、カメラ32から入力された映像データを取り込む。
【0092】
[ステップS21]接続管理部230は、映像音声データを制御サーバ100へ送信する。例えば、接続管理部230は、処理コードとして0x0111を設定し、グループIDとしてステップS18で決定されたグループIDを設定し、送信元IPアドレスとして端末200a-1のIPアドレスを設定した映像音声データを作成する。接続管理部230は、作成した映像音声データにステップS19で取り込んだ音声データと、当該音声データのバイト数とを設定する。また、接続管理部230は、作成した映像音声データにステップS20で取り込んだ映像データと、当該映像データのバイト数とを設定する。そして、接続管理部230は、作成した映像音声データを制御サーバ100へ送信する。
【0093】
[ステップS22]接続管理部230は、処理を終了するか否かを判定する。例えば、接続管理部230は、オンライン会議からのログアウトが要求された場合、処理を終了すると判定する。接続管理部230は、処理を終了すると判定した場合、処理を終了する。また、接続管理部230は、処理を終了しないと判定した場合、処理をステップS12に進める。
【0094】
このようにして、端末200a-1は、オンライン会議において映像音声データの送受信および出力をする。以下では、端末200a-1の各処理について詳細に説明する。
図13は、参加者確認処理の手順の一例を示すフローチャートである。以下、
図13に示す処理をステップ番号に沿って説明する。
【0095】
[ステップS31]接続管理部230は、参加者情報121を制御サーバ100に要求する。
[ステップS32]接続管理部230は、ステップS31の要求に応じて制御サーバ100から送信された参加者情報121を取得する。
【0096】
[ステップS33]接続管理部230は、ステップS32で取得した参加者情報121を記憶部220に保存する。なお、接続管理部230は、記憶部220にすでに参加者情報121が記憶されている場合、記憶部220に記憶されている参加者情報121を取得した参加者情報121に更新する。
【0097】
このようにして、端末200a-1は、参加者情報121を取得できる。これにより、端末200a-1は、オンライン会議に参加する端末のIPアドレスおよび初期グループIDを特定できる。
【0098】
図14は、画面レイアウト作成処理の手順の一例を示すフローチャートである。以下、
図14に示す処理をステップ番号に沿って説明する。
[ステップS41]接続管理部230は、オンライン会議の参加者のIPアドレスを選択する。例えば、接続管理部230は、参加者情報121に登録されたIPアドレスを1つ選択する。
【0099】
[ステップS42]接続管理部230は、ステップS41で選択したIPアドレス(選択IPアドレス)が属する全グループIDを参照する参照コマンドを制御サーバ100へ発行する。例えば、接続管理部230は、処理コードとして0x0000、グループIDとして0x00000000、送信元のIPアドレスとして端末200a-1のIPアドレスを設定したコマンドを作成する。そして、接続管理部230は、参加者総数として1、IPアドレスとして選択IPアドレスを、作成したコマンドに設定し、制御サーバ100へ送信する。
【0100】
[ステップS43]接続管理部230は、ステップS42で送信したコマンドに対する結果として制御サーバ100から受信した結果データからグループIDを取得する。例えば、接続管理部230は、結果データのグループIDとして設定されているビット列の1が設定されているビットに対応するグループIDを取得する。なお、接続管理部230は、1が設定されているビットが複数ある場合、1が設定されているビットそれぞれに対応するグループIDを取得する。
【0101】
[ステップS44]入出力管理部240は、初期グループIDに応じて、選択IPアドレスの端末から送信される映像の表示位置を設定する。例えば、入出力管理部240は、参加者情報121を参照し、選択IPアドレスに対応する初期グループIDを特定する。入出力管理部240は、特定した初期グループIDが端末200a-1の初期グループIDと同じ場合、選択IPアドレスの端末から送信される映像の表示位置を、会議画面51の下段に設定する。また、入出力管理部240は、特定した初期グループIDが端末200a-1の初期グループIDと異なる場合、選択IPアドレスの端末から送信される映像の表示位置を、会議画面51の上段に設定する。
【0102】
[ステップS45]入出力管理部240は、ステップS43で取得したグループIDが同じ端末から送信される映像の表示位置と近い位置に、選択IPアドレスの端末から送信される映像の表示位置を設定する。例えば、入出力管理部240は、ステップS43で取得したグループIDのうち、初期グループID以外のグループIDを抽出する。そして、入出力管理部240は、すでに映像の表示位置が設定されている端末のうち、抽出したグループIDと同じグループIDに属する端末がある場合、当該端末の映像の表示位置と近い位置に、選択IPアドレスの端末から送信される映像の表示位置を設定する。
【0103】
[ステップS46]入出力管理部240は、ステップS44,S45で設定された表示位置に、選択IPアドレスに対応する参加者のウィンドウを表示する。なお、入出力管理部240は、ステップS45で近い位置に設定された映像を囲む枠を表示してもよい。
【0104】
[ステップS47]接続管理部230は、参加者情報121に登録された全IPアドレスを選択したか否かを判定する。接続管理部230は、参加者情報121に登録された全IPアドレスを選択したと判定した場合、処理を終了する。また、接続管理部230は、参加者情報121に登録された全IPアドレスを選択していないと判定した場合、処理をステップS41に進める。
【0105】
このようにして、端末200a-1は、各端末から送信される映像の表示位置を決定する。端末200a-1は、初期グループIDに応じて、表示位置を設定する。これにより、端末200a-1は、初期グループIDが同じ端末をユーザ20a-1に特定させやすくすることができる。また、端末200a-1は、グループIDが同じ端末から送信される映像同士を近い位置に表示する。これにより、端末200a-1は、個別会話設定が適用されている端末をユーザ20a-1に特定させやすくすることができる。
【0106】
図15は、グループID決定処理の手順の一例を示すフローチャートである。以下、
図15に示す処理をステップ番号に沿って説明する。
[ステップS51]入出力管理部240は、会議画面51におけるボタン操作を確認する。
【0107】
[ステップS52]入出力管理部240は、会議画面51におけるボタン押下があったか否かを判定する。入出力管理部240は、ボタン押下があったと判定した場合、処理をステップS53に進める。また、入出力管理部240は、ボタン押下がなかったと判定した場合、処理をステップS54に進める。
【0108】
[ステップS53]接続管理部230は、グループ会話設定の適用を制御サーバ100へ要求する。そして、処理がステップS60に進む。
[ステップS54]入出力管理部240は、会議画面51におけるボタン押下の解除操作があったか否かを判定する。入出力管理部240は、ボタン押下の解除操作があったと判定した場合、処理をステップS55に進める。また、入出力管理部240は、ボタン押下の解除操作がなかったと判定した場合、処理をステップS56に進める。
【0109】
[ステップS55]接続管理部230は、グループ会話設定の解除を制御サーバ100へ要求する。そして、処理がステップS60に進む。
[ステップS56]入出力管理部240は、会議画面51において個別会話設定の選択操作があったか否かを判定する。入出力管理部240は、個別会話設定の選択操作があったと判定した場合、処理をステップS57に進める。また、入出力管理部240は、個別会話設定の選択操作がなかったと判定した場合、処理をステップS58に進める。
【0110】
[ステップS57]接続管理部230は、端末200a-1自身と個別会話設定の相手端末(例えば、端末200a-3)が属するグループIDを作成する作成コマンドを発行する。例えば、接続管理部230は、処理コードとして0x0001、グループIDとして0x00000000、送信元のIPアドレスとして端末200a-1のIPアドレスを設定したコマンドを作成する。接続管理部230は、参加者総数として2、IPアドレスとして端末200a-1のIPアドレスおよび端末200a-3のIPアドレスを、作成したコマンドに設定し、制御サーバ100へ送信する。そして、処理がステップS60に進む。
【0111】
[ステップS58]入出力管理部240は、会議画面51において個別会話設定の解除操作があったか否かを判定する。入出力管理部240は、個別会話設定の解除操作があったと判定した場合、処理をステップS59に進める。また、入出力管理部240は、個別会話設定の解除操作がなかったと判定した場合、処理をステップS60に進める。
【0112】
[ステップS59]接続管理部230は、端末200a-1自身と個別会話設定の相手端末が属するグループIDを削除する削除コマンドを発行する。例えば、接続管理部230は、処理コードとして0x0011、グループIDとして個別会話設定適用時に作成コマンドの結果データとして通知されたグループID、送信元のIPアドレスとして端末200a-1のIPアドレスを設定したコマンドを作成する。接続管理部230は、参加者総数として0を、作成したコマンドに設定し、制御サーバ100へ送信する。なお、削除コマンドには、IPアドレスが設定されていなくてもよい。そして、処理がステップS60に進む。
【0113】
[ステップS60]接続管理部230は、個別会話設定が適用されているか否かを判定する。例えば、接続管理部230は、端末200a-1または他の端末から制御サーバ100へ送信された作成コマンドに対する結果データを、制御サーバ100から受信している場合、個別会話設定が適用されていると判定する。また、接続管理部230は、作成コマンドの結果データを受信していない場合または作成コマンドの結果データとして通知されたグループIDの削除コマンドの結果データを制御サーバ100から受信している場合、個別会話設定が適用されていないと判定する。接続管理部230は、個別会話設定が適用されていると判定した場合、処理をステップS61に進める。また、接続管理部230は、個別会話設定が適用されていないと判定した場合、処理をステップS62に進める。
【0114】
[ステップS61]接続管理部230は、映像音声データに設定するグループIDを、作成コマンドの結果データとして制御サーバ100から通知されたグループIDに決定する。そして、処理が終了する。
【0115】
[ステップS62]接続管理部230は、グループ会話設定が適用されているか否かを判定する。例えば、接続管理部230は、端末200a-1または他の端末から制御サーバ100へ送信されたグループ会話設定の適用要求に対する、グループ会話設定の適用の通知を、制御サーバ100から受信している場合、グループ会話設定が適用されていると判定する。また、接続管理部230は、グループ会話設定の適用の通知を受信していない場合またはグループ会話設定の適用の解除の通知を制御サーバ100から受信している場合、グループ会話設定が適用されていないと判定する。接続管理部230は、グループ会話設定が適用されていると判定した場合、処理をステップS63に進める。また、接続管理部230は、グループ会話設定が適用されていないと判定した場合、処理をステップS64に進める。
【0116】
[ステップS63]接続管理部230は、参加者情報121を参照して端末200a-1の初期グループIDを特定し、映像音声データに設定するグループIDを、端末200a-1の初期グループIDに決定する。そして、処理が終了する。
【0117】
[ステップS64]接続管理部230は、映像音声データに設定するグループIDを、全体への送信を示す0x00000000に決定する。
このようにして、端末200a-1は、ボタン操作および個別会話設定の選択操作に応じて、グループ会話設定および個別会話設定の適用を制御サーバ100に要求する。そして、端末200a-1は、端末200a-1または他の端末の要求に応じて制御サーバ100から通知されたグループ会話設定および個別会話設定の適用の通知に応じて、映像音声データに設定するグループIDを決定する。これにより、端末200a-1は、映像音声データの送信先を適切に設定できる。次に、制御サーバ100が実行する処理の手順について、詳細に説明する。
【0118】
図16は、制御サーバによる会議制御処理の手順の一例を示すフローチャートである。以下、
図16に示す処理をステップ番号に沿って説明する。
[ステップS71]接続管理部130は、端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3から通信データを受信する。例えば、接続管理部130は、ログインに関するデータ、参加者情報121の要求、グループ会話設定の適用および解除の要求、映像音声データまたはコマンドを受信する。
【0119】
[ステップS72]接続管理部130は、ステップS71でログインに関するデータを受信した(つまり、オンライン会議へのログインを受け付けた)か否かを判定する。接続管理部130は、ログインを受け付けたと判定した場合、処理をステップS73に進める。また、接続管理部130は、ログインを受け付けていないと判定した場合、処理をステップS77に進める。
【0120】
[ステップS73]ID管理部140は、オンライン会議へログインした端末のシングルサインオンの情報が、参加者情報121に登録されている端末のシングルサインオンの情報と一致しているか否かを判定する。例えば、ID管理部140は、ログイン処理を受け付ける際に、ログインする端末からシングルサインオンのアカウントのドメイン名を取得する。ID管理部140は、参加者情報121に登録されている端末のシングルサインオンのアカウントのドメイン名のいずれかと、取得したドメイン名とが一致した場合、参加者情報121に登録されている端末のシングルサインオンの情報と一致していると判定する。ID管理部140は、参加者情報121に登録されている端末のシングルサインオンの情報と一致していると判定した場合、処理をステップS74に進める。また、ID管理部140は、参加者情報121に登録されている端末のシングルサインオンの情報と一致していないと判定した場合、処理をステップS75に進める。
【0121】
[ステップS74]ID管理部140は、グループIDリスト122の、シングルサインオンの情報が一致した端末と同じグループIDのリストに、オンライン会議へログインした端末のIPアドレスを追加する追加処理を実行する。追加処理の詳細については後述する(
図20参照)。そして、処理がステップS76に進む。
【0122】
[ステップS75]ID管理部140は、グループIDリスト122にグループIDを作成し、作成したグループIDのリストにオンライン会議へログインした端末のIPアドレスを追加する作成処理を実行する。作成処理の詳細については後述する(
図19参照)。
【0123】
[ステップS76]ID管理部140は、オンライン会議へログインした端末のユーザ名、初期グループIDおよびIPアドレスを参加者情報121に登録する。例えば、ID管理部140は、ログイン時に入力されたユーザ名と、ステップS74でIPアドレスを追加したグループIDまたはステップS75で作成したグループIDと、ログインした端末のIPアドレスとを対応付けて参加者情報121に登録する。そして、処理がステップS84に進む。
【0124】
[ステップS77]接続管理部130は、ステップS71で参加者情報121の要求を受信したか否かを判定する。接続管理部130は、参加者情報121の要求を受信したと判定した場合、処理をステップS78に進める。また、接続管理部130は、参加者情報121の要求を受信していないと判定した場合、処理をステップS79に進める。
【0125】
[ステップS78]接続管理部130は、参加者情報121の要求の送信元の端末に参加者情報121を送信する。そして、処理がステップS84に進む。
[ステップS79]接続管理部130は、ステップS71でグループ会話設定の適用または解除の要求(変更要求)を受信したか否かを判定する。接続管理部130は、グループ会話設定の変更要求を受信したと判定した場合、処理をステップS80に進める。また、接続管理部130は、グループ会話設定の変更要求を受信していないと判定した場合、処理をステップS81に進める。
【0126】
[ステップS80]接続管理部130は、グループ会話設定の変更内容を、グループ会話設定の変更要求をした端末と同じ初期グループIDの端末に送信する。例えば、接続管理部130は、参加者情報121を参照し、送信元の端末と同じ初期グループIDの端末のIPアドレスを特定する。そして、接続管理部130は、グループ会話設定の適用の要求を受信した場合、特定したIPアドレスにグループ会話設定の適用の通知を送信する。また、接続管理部130は、グループ会話設定の適用の解除を受信した場合、特定したIPアドレスに、グループ会話設定の適用の解除の通知を送信する。そして、処理がステップS84に進む。
【0127】
[ステップS81]接続管理部130は、ステップS71で受信したデータに設定された処理コードが0x0111であるか否かを判定する。接続管理部130は、処理コードが0x0111であると判定した場合、処理をステップS82に進める。また、接続管理部130は、処理コードが0x0111ではないと判定した場合、処理をステップS83に進める。
【0128】
[ステップS82]データ管理部150は、映像音声データ送信処理を実行する。映像音声データ送信処理の詳細については後述する(
図22参照)。そして、処理がステップS84に進む。
【0129】
[ステップS83]接続管理部130およびID管理部140は、共同して、コマンド制御処理を実行する。コマンド制御処理の詳細については後述する(
図17参照)。
[ステップS84]接続管理部130は、処理を終了するか否かを判定する。例えば、接続管理部130は、オンライン会議の終了が要求された場合、処理を終了すると判定する。接続管理部130は、処理を終了すると判定した場合、処理を終了する。また、接続管理部130は、処理を終了しないと判定した場合、処理をステップS71に進める。
【0130】
このようにして、制御サーバ100は、オンライン会議を制御する。制御サーバ100は、シングルサインオンの情報に応じてログインした端末の初期グループIDを決定する。ここで、同じ会社の従業員であるユーザが操作する端末は、シングルサインオンの情報が一致することが多い。制御サーバ100は、シングルサインオンの情報が一致する端末同士が同じ初期グループIDとなるよう決定することで、オンライン会議に参加する端末のグループ分けを、自動で適切に行うことができる。
【0131】
また、制御サーバ100は、グループ会話設定の適用要求に応じて、グループ会話設定の適用要求した端末と同じ初期グループIDに属する端末に、グループ会話設定の適用を通知する。これにより、制御サーバ100は、グループ会話設定の適用要求した端末と同じグループIDに属する端末に、映像音声データのグループIDに初期グループIDを設定させる。すると、制御サーバ100は、後述する映像音声データ送信処理において、グループ会話設定の適用された端末から送信された映像音声データを当該端末と同じ初期グループIDの端末のうち送信元の端末以外の端末に送信する。
【0132】
これにより、制御サーバ100は、オンライン会議において、他のグループに聞こえないようグループ内で会話できるようにする。よって、制御サーバ100は、オンライン会議の利便性を向上させることができる。
【0133】
図17は、コマンド制御処理の手順の一例を示すフローチャートである。以下、
図17に示す処理をステップ番号に沿って説明する。
[ステップS91]ID管理部140は、コマンドに設定された処理コードが0x0000であるか否かを判定する。ID管理部140は、コマンドに設定された処理コードが0x0000であると判定した場合、処理をステップS92に進める。また、ID管理部140は、コマンドに設定された処理コードが0x0000ではないと判定した場合、処理をステップS93に進める。
【0134】
[ステップS92]ID管理部140は、参照処理を実行する。参照処理の詳細については後述する(
図18参照)。そして、処理がステップS95に進む。
[ステップS93]ID管理部140は、コマンドに設定された処理コードが0x0010であるか否かを判定する。ID管理部140は、コマンドに設定された処理コードが0x0010であると判定した場合、処理をステップS94に進める。また、ID管理部140は、コマンドに設定された処理コードが0x0010ではないと判定した場合、処理をステップS96に進める。
【0135】
[ステップS94]ID管理部140は、追加処理を実行する。追加処理の詳細については後述する(
図20参照)。
【0136】
[ステップS95]接続管理部130は、結果データをコマンドの送信元の端末に送信する。そして、処理が終了する。
[ステップS96]ID管理部140は、コマンドに設定された処理コードが0x0001であるか否かを判定する。ID管理部140は、コマンドに設定された処理コードが0x0001であると判定した場合、処理をステップS97に進める。また、ID管理部140は、コマンドに設定された処理コードが0x0001ではない(つまり、処理コードが0x0011である)と判定した場合、処理をステップS98に進める。
【0137】
[ステップS97]ID管理部140は、作成処理を実行する。作成処理の詳細については後述する(
図19参照)。そして、処理がステップS99に進む。
[ステップS98]ID管理部140は、削除処理を実行する。削除処理の詳細については後述する(
図21参照)。
【0138】
[ステップS99]接続管理部130は、処理対象のグループIDに属する端末に、結果データを送信する。例えば、接続管理部130は、作成コマンドに対する結果データを、ステップS97で作成されたグループIDに属する端末に送信する。また、接続管理部130は、削除コマンドに対する結果データを、ステップS98で削除されたグループIDに属していた端末に送信する。
【0139】
このようにして、制御サーバ100は、コマンドに対する結果データを送信する。制御サーバ100は、作成コマンドを受信すると、作成処理によって新しいグループIDを作成する。そして、制御サーバ100は、作成コマンドを送信した端末および当該端末に個別会話設定の相手として指定された端末に、結果データを送信して作成したグループIDを通知する。これにより、制御サーバ100は、作成コマンドを送信した端末と個別会話設定の相手として指定された端末に、映像音声データのグループIDに作成したグループIDを設定させる。すると、制御サーバ100は、後述する映像音声データ送信処理において、個別会話設定の適用された一方の端末から送信された映像音声データを、他方の端末に送信する。これにより、制御サーバ100は、オンライン会議において、他の参加者に聞こえないよう個別で会話できるようにすることができる。
【0140】
図18は、参照処理の手順の一例を示すフローチャートである。以下、
図18に示す処理をステップ番号に沿って説明する。
[ステップS101]ID管理部140は、コマンドに設定された参加者総数が-1であるか否かを判定する。ID管理部140は、コマンドに設定された参加者総数が-1であると判定した場合、処理をステップS102に進める。また、ID管理部140は、コマンドに設定された参加者総数が-1ではないと判定した場合、処理をステップS106に進める。
【0141】
[ステップS102]ID管理部140は、コマンドからグループIDを選択する。例えば、ID管理部140は、コマンドのグループIDとして設定されているビット列の1が設定されているビットを選択する。ID管理部140は、選択したビットに1が設定されているグループIDを選択する。
【0142】
[ステップS103]ID管理部140は、グループIDリスト122を参照し、ステップS102で選択したグループIDに対応付けられたIPアドレスのリスト内のIPアドレスを取得する。
【0143】
[ステップS104]ID管理部140は、コマンド内の全グループIDを選択したか否かを判定する。例えば、ID管理部140は、コマンドのグループIDとして設定されているビット列の1が設定されているビットを全て選択した場合、コマンド内の全グループIDを選択したと判定する。ID管理部140は、コマンド内の全グループIDを選択したと判定した場合、処理をステップS105に進める。また、ID管理部140は、コマンド内の全グループIDを選択していないと判定した場合、処理をステップS102に進める。
【0144】
[ステップS105]ID管理部140は、結果データに取得したIPアドレスを設定する。例えば、ID管理部140は、処理コードとして0x1000、結果としてOK、グループIDとしてコマンドに設定されたグループID、参加者総数として取得したIPアドレスの数を設定した結果データを生成する。そして、ID管理部140は、生成した結果データのIPアドレスとして、取得したIPアドレスを設定する。そして、処理が終了する。
【0145】
[ステップS106]ID管理部140は、出力グループIDを初期化(0x00000000に設定)する。
[ステップS107]ID管理部140は、コマンドに設定された参加者総数が0であるか否かを判定する。ID管理部140は、コマンドに設定された参加者総数が0であると判定した場合、処理をステップS114に進める。また、ID管理部140は、コマンドに設定された参加者総数が0ではないと判定した場合、処理をステップS108に進める。
【0146】
[ステップS108]ID管理部140は、コマンドに設定されたIPアドレスを選択する。
[ステップS109]ID管理部140は、グループIDリスト122を参照し、グループIDを選択する。
【0147】
[ステップS110]ID管理部140は、グループIDリスト122の、ステップS109で選択したグループIDに対応付けられたIPアドレスのリストにステップS108で選択したIPアドレスがあるか否かを判定する。ID管理部140は、リストにIPアドレスがあると判定した場合、処理をステップS111に進める。また、ID管理部140は、リストにIPアドレスがないと判定した場合、処理をステップS112に進める。
【0148】
[ステップS111]ID管理部140は、出力グループIDをステップS109で選択したグループIDとのOR演算の結果に更新する。例えば、ID管理部140は、出力グループIDの各ビットと、ステップS109で選択したグループIDの各ビットについてOR演算をする。そして、ID管理部140は、出力グループIDを演算結果のビット列に更新する。
【0149】
[ステップS112]ID管理部140は、グループIDリスト122に登録されたグループIDを全て選択したか否かを判定する。ID管理部140は、グループIDリスト122に登録されたグループIDを全て選択したと判定した場合、処理をステップS113に進める。また、ID管理部140は、グループIDリスト122に登録されたグループIDを全て選択していないと判定した場合、処理をステップS109に進める。
【0150】
[ステップS113]ID管理部140は、コマンド内のIPアドレスを全て選択したか否かを判定する。ID管理部140は、コマンド内のIPアドレスを全て選択したと判定した場合、処理をステップS117に進める。また、ID管理部140は、コマンド内のIPアドレスを全て選択していないと判定した場合、処理をステップS108に進める。
【0151】
[ステップS114]ID管理部140は、グループIDリスト122を参照し、グループIDを選択する。
[ステップS115]ID管理部140は、出力グループIDをステップS114で選択したグループIDとのOR演算の結果に更新する。例えば、ID管理部140は、出力グループIDの各ビットと、ステップS114で選択したグループIDの各ビットについてOR演算をする。そして、ID管理部140は、出力グループIDを演算結果のビット列に更新する。
【0152】
[ステップS116]ID管理部140は、グループIDリスト122に登録されたグループIDを全て選択したか否かを判定する。ID管理部140は、グループIDリスト122に登録されたグループIDを全て選択したと判定した場合、処理をステップS117に進める。また、ID管理部140は、グループIDリスト122に登録されたグループIDを全て選択していないと判定した場合、処理をステップS114に進める。
【0153】
[ステップS117]ID管理部140は、結果データに出力グループIDを設定する。例えば、ID管理部140は、処理コードとして0x1000、結果としてOK、グループIDとして出力グループID、参加者総数としてコマンド内の参加者総数、IPアドレスとしてコマンド内のIPアドレスを設定した結果データを生成する。
【0154】
このようにして、制御サーバ100は、参照コマンドに対する結果データを生成する。これにより、制御サーバ100は、端末から要求された情報を当該端末に通知できる。なお、制御サーバ100は、複数のグループIDを通知する際、複数のビットが1に設定されたビット列をグループIDに設定する。これにより、制御サーバ100は、一度のデータ送信で、対応するビットが1に設定されている複数のグループIDを通知することができる。
【0155】
図19は、作成処理の手順の一例を示すフローチャートである。以下、
図19に示す処理をステップ番号に沿って説明する。
[ステップS121]ID管理部140は、グループIDリスト122に登録されたグループIDの総数が0であるか否かを判定する。ID管理部140は、グループIDリスト122に登録されたグループIDの総数が0であると判定した場合、処理をステップS122に進める。また、ID管理部140は、グループIDリスト122に登録されたグループIDの総数が0ではないと判定した場合、処理をステップS123に進める。
【0156】
[ステップS122]ID管理部140は、新規グループIDに0x00000001を設定する。そして、処理がステップS128に進む。
[ステップS123]ID管理部140は、使用グループIDを初期化(0x00000000に設定)する。
【0157】
[ステップS124]ID管理部140は、グループIDリスト122を参照し、グループIDを選択する。
[ステップS125]ID管理部140は、使用グループIDをステップS124で選択したグループIDとのOR演算の結果に更新する。例えば、ID管理部140は、使用グループIDの各ビットと、ステップS124で選択したグループIDの各ビットについてOR演算をする。そして、ID管理部140は、使用グループIDを演算結果のビット列に更新する。
【0158】
[ステップS126]ID管理部140は、グループIDリスト122に登録されたグループIDを全て選択したか否かを判定する。ID管理部140は、グループIDリスト122に登録されたグループIDを全て選択したと判定した場合、処理をステップS127に進める。また、ID管理部140は、グループIDリスト122に登録されたグループIDを全て選択していないと判定した場合、処理をステップS124に進める。
【0159】
[ステップS127]ID管理部140は、使用グループIDの0が設定されたビットのいずれかを1に設定し、1に設定したビット以外を0に設定したビット列を新規グループIDに設定する。
【0160】
[ステップS128]ID管理部140は、新規グループIDのリストをグループIDリスト122に追加する。例えば、ID管理部140は、次アドレスとして0、グループIDとして新規グループID、対象参加者格納先頭アドレスとして0が設定されたデータを生成する。そして、ID管理部140は、グループIDリスト122の末尾のデータの次アドレスとして生成したデータのアドレスを設定する。
【0161】
[ステップS129]ID管理部140は、ステップS128でグループIDリスト122に追加した新規グループIDのリストに、処理対象のIPアドレスを追加する。なお、作成コマンドに応じて実行される作成処理の場合、処理対象のIPアドレスは、コマンド内のIPアドレスである。また、ログイン受付時に実行される作成処理の場合、処理対象のIPアドレスは、ログインした端末のIPアドレスである。例えば、ID管理部140は、処理対象のIPアドレスが登録されたリストを生成する。そして、ID管理部140は、ステップS128で生成したデータの対象参加者格納先頭アドレスに、生成したリストの先頭アドレスを設定する。
【0162】
[ステップS130]ID管理部140は、結果データに新規グループIDを設定する。例えば、ID管理部140は、処理コードとして0x1001、結果としてOK、グループIDとして新規グループID、参加者総数としてコマンド内の参加者総数、IPアドレスとしてコマンド内のIPアドレスを設定した結果データを生成する。なお、ログイン受付時に実行される作成処理では、ステップS130は、実行されなくてもよい。
【0163】
このようにして、制御サーバ100は、新規グループIDを作成する。制御サーバ100は、グループIDが、8ビットのうちのいずれかのビットが1に設定されたビット列であるため、グループIDリスト122にすでに登録されているグループIDとのOR演算を繰り返すことで未使用のグループIDを特定できる。そして、制御サーバ100は、特定した未使用のグループIDのいずれかを新規グループIDに設定し、処理対象のIPアドレスが登録された新規グループIDのリストをグループIDリスト122に追加する。これにより、制御サーバ100は、ログイン時の初期グループIDの割り振りおよび個別会話設定適用時のグループIDの割り振りを適切に行うことができる。
【0164】
図20は、追加処理の手順の一例を示すフローチャートである。以下、
図20に示す処理をステップ番号に沿って説明する。
[ステップS141]ID管理部140は、処理対象のグループIDのリストがグループIDリスト122に登録されているか否かを判定する。なお、作成コマンドに応じて実行される作成処理の場合、処理対象のグループIDは、コマンド内のグループIDである。また、ログイン受付時に実行される作成処理の場合、処理対象のグループIDは、シングルサインオンの情報が一致した端末のグループIDである。ID管理部140は、処理対象のグループIDのリストがグループIDリスト122に登録されていると判定した場合、処理をステップS142に進める。また、ID管理部140は、処理対象のグループIDのリストがグループIDリスト122に登録されていないと判定した場合、処理をステップS144に進める。
【0165】
[ステップS142]ID管理部140は、処理対象のグループIDのリストに処理対象のIPアドレスを追加する。なお、作成コマンドに応じて実行される作成処理の場合、処理対象のIPアドレスは、コマンド内のIPアドレスである。また、ログイン受付時に実行される作成処理の場合、処理対象のIPアドレスは、ログインした端末のIPアドレスである。例えば、ID管理部140は、処理対象のIPアドレスが登録されたリストを生成する。そして、ID管理部140は、処理対象のグループIDに対応するIPアドレスのリストの末尾のデータの次アドレスに、生成したリストの先頭アドレスを設定する。
【0166】
[ステップS143]ID管理部140は、結果データにOKを設定する。例えば、ID管理部140は、処理コードとして0x1010、結果としてOK、グループIDとしてコマンド内のグループID、参加者総数としてコマンド内の参加者総数、IPアドレスとしてコマンド内のIPアドレスを設定した結果データを生成する。なお、ログイン受付時に実行される作成処理では、ステップS143は、実行されなくてもよい。そして、処理が終了する。
【0167】
[ステップS144]ID管理部140は、結果データにNGを設定する。例えば、ID管理部140は、処理コードとして0x1010、結果としてNG、グループIDとしてコマンド内のグループID、参加者総数としてコマンド内の参加者総数、IPアドレスとしてコマンド内のIPアドレスを設定した結果データを生成する。なお、ログイン受付時に実行される作成処理では、ステップS144は、実行されなくてもよい。
【0168】
このようにして、制御サーバ100は、グループIDリスト122に登録されている処理対象のグループIDのリストに、処理対象のIPアドレスを追加することができる。
図21は、削除処理の手順の一例を示すフローチャートである。以下、
図21に示す処理をステップ番号に沿って説明する。
【0169】
[ステップS151]ID管理部140は、削除コマンドに設定された削除対象のグループIDがグループIDリスト122に登録されているか否かを判定する。ID管理部140は、削除対象のグループIDがグループIDリスト122に登録されていると判定した場合、処理をステップS152に進める。また、ID管理部140は、削除対象のグループIDがグループIDリスト122に登録されていないと判定した場合、処理をステップS159に進める。
【0170】
[ステップS152]ID管理部140は、コマンドに設定された参加者総数が0であるか否かを判定する。ID管理部140は、コマンドに設定された参加者総数が0であると判定した場合、処理をステップS153に進める。また、ID管理部140は、コマンドに設定された参加者総数が0ではないと判定した場合、処理をステップS154に進める。
【0171】
[ステップS153]ID管理部140は、削除対象のグループIDのリストをグループIDリスト122から削除する。そして、処理がステップS158に進む。
[ステップS154]ID管理部140は、コマンドに設定されたIPアドレスを選択する。
【0172】
[ステップS155]ID管理部140は、グループIDリスト122の、削除対象のグループIDに対応付けられたIPアドレスのリストにステップS154で選択したIPアドレスがあるか否かを判定する。ID管理部140は、リストにIPアドレスがあると判定した場合、処理をステップS156に進める。また、ID管理部140は、リストにIPアドレスがないと判定した場合、処理をステップS159に進める。
【0173】
[ステップS156]ID管理部140は、グループIDリスト122の、削除対象のグループIDに対応付けられたIPアドレスのリストから、ステップS154で選択したIPアドレスを削除する。
【0174】
[ステップS157]ID管理部140は、コマンド内のIPアドレスを全て選択したか否かを判定する。ID管理部140は、コマンド内のIPアドレスを全て選択したと判定した場合、処理をステップS158に進める。また、ID管理部140は、コマンド内のIPアドレスを全て選択していないと判定した場合、処理をステップS154に進める。
【0175】
[ステップS158]ID管理部140は、結果データにOKを設定する。例えば、ID管理部140は、処理コードとして0x1011、結果としてOK、グループIDとしてコマンド内のグループID、参加者総数としてコマンド内の参加者総数、IPアドレスとしてコマンド内のIPアドレスを設定した結果データを生成する。そして、処理が終了する。
【0176】
[ステップS159]ID管理部140は、結果データにNGを設定する。例えば、ID管理部140は、処理コードとして0x1011、結果としてNG、グループIDとしてコマンド内のグループID、参加者総数としてコマンド内の参加者総数、IPアドレスとしてコマンド内のIPアドレスを設定した結果データを生成する。
【0177】
このようにして、制御サーバ100は、グループIDリスト122からのグループIDの削除またはグループIDに属するIPアドレスの削除をする。制御サーバ100は、削除コマンドに応じてグループIDリスト122から個別会話設定に用いていたグループIDを削除する。これにより、制御サーバ100は、個別会話設定を解除でき、使用していないグループIDを再利用できるようにすることができる。
【0178】
図22は、映像音声データ送信処理の手順の一例を示すフローチャートである。以下、
図22に示す処理をステップ番号に沿って説明する。
[ステップS161]データ管理部150は、映像音声データに設定されたグループIDが0x00000000であるか否かを判定する。データ管理部150は、映像音声データに設定されたグループIDが0x00000000であると判定した場合、処理をステップS162に進める。また、データ管理部150は、映像音声データに設定されたグループIDが0x00000000ではないと判定した場合、処理をステップS163に進める。
【0179】
[ステップS162]データ管理部150は、参加者情報121を参照し、参加者情報121に登録された全IPアドレスを取得する。そして、処理がステップS165に進む。
【0180】
[ステップS163]データ管理部150は、グループIDリスト122を参照し、映像音声データに設定されたグループIDを検索する。
[ステップS164]データ管理部150は、グループIDリスト122の、映像音声データに設定されたグループIDに対応付けられたリストに登録された全IPアドレスを取得する。
【0181】
[ステップS165]データ管理部150は、ステップS162またはステップS164で取得したIPアドレスからIPアドレスを選択する。
[ステップS166]データ管理部150は、ステップS165で選択したIPアドレスと、映像音声データに設定された送信元IPアドレスとが一致するか否かを判定する。データ管理部150は、選択したIPアドレスと、映像音声データに設定された送信元IPアドレスとが一致すると判定した場合、処理をステップS168に進める。また、データ管理部150は、選択したIPアドレスと、映像音声データに設定された送信元IPアドレスとが一致しないと判定した場合、処理をステップS167に進める。
【0182】
[ステップS167]データ管理部150は、ステップS165で選択したIPアドレスに映像音声データを送信する。
[ステップS168]データ管理部150は、ステップS162またはステップS164で取得したIPアドレスを全て選択したか否かを判定する。データ管理部150は、取得したIPアドレスを全て選択したと判定した場合、処理を終了する。また、データ管理部150は、取得したIPアドレスを全て選択していないと判定した場合、処理をステップS165に進める。
【0183】
このようにして、制御サーバ100は、映像音声データを端末に送信する。映像音声データのグループIDに0x00000000が設定されている場合、制御サーバ100は、オンライン会議に参加している端末のうち、送信元の端末以外の端末に映像音声データを送信する。これにより、制御サーバ100は、オンライン会議の参加者全体に映像音声データを送信できる。
【0184】
また、映像音声データのグループIDに0x00000000以外が設定されている場合、制御サーバ100は、設定されたグループIDに属する端末のうち、送信元の端末以外の端末に映像音声データを送信する。ここで、グループ会話設定が適用されていると、グループIDに送信元の端末の初期グループIDが設定されているため、制御サーバ100は、送信元の端末と同じグループの端末に映像音声データを送信する。また、個別会話設定が適用されていると、グループIDに送信元の端末と個別会話設定の相手の端末とが属するグループIDが設定されているため、制御サーバ100は、個別会話設定の相手の端末に映像音声データを送信する。このように、制御サーバ100は、グループIDに応じて映像音声データを送信することで、適切な相手に映像音声データを送信することができる。
【0185】
なお、第2の実施の形態では、サーバコンピュータである制御サーバ100がオンライン会議に接続している端末を制御していたが、オンライン会議に接続している端末のいずれかが制御サーバ100が実行する処理を実行してもよい。また、オンライン会議に接続している端末が共同して制御サーバ100が実行する処理を実行してもよい。また、制御サーバ100は、グループ会話設定および個別会話設定において、映像データまたは音声データの一方を全体に送信してもよい。また、制御サーバ100は、グループ会話設定および個別会話設定において、映像音声データを送信した端末に、音声データをテキストとして表示させるよう制御してもよい。
【0186】
第2の実施の形態によれば、制御サーバ100は、オンライン会議に接続している端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3それぞれに対応する初期グループIDを記憶する。制御サーバ100は、端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3のうちのいずれかの端末から送信された映像音声データを出力するよう、映像音声データを送信した端末以外の端末それぞれを制御する。制御サーバ100は、グループ会話設定が適用された場合、送信された映像音声データを出力するよう、映像音声データを送信した端末と同じ初期グループIDの端末のうちの、映像音声データを送信した端末以外の端末それぞれを制御する。これにより、制御サーバ100は、オンライン会議において、他のグループに聞こえないようグループ内で会話できるようにする。よって、制御サーバ100は、オンライン会議の利便性を向上させることができる。
【0187】
また、制御サーバ100は、端末からグループ会話設定の適用を要求されると、グループ会話設定の適用を要求した端末と同じ初期グループIDの端末それぞれから送信された映像音声データを出力するよう、グループ会話設定の適用を要求した端末と同じ初期グループIDの端末のうちの、映像音声データを送信した端末以外の端末それぞれを制御する。これにより、制御サーバ100は、グループ内で会話できるようにする設定を、グループ会話設定の適用を要求した端末と同じグループの端末にも適用することができる。
【0188】
また、制御サーバ100は、端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3それぞれの初期グループIDを、端末200a-1,200a-2,200a-3,200b-1,200b-2,200b-3それぞれがオンライン会議へのログインに用いるシングルサインオンの情報に基づいて決定する。これにより、制御サーバ100は、初期グループIDを適切に決定できる。
【0189】
また、制御サーバ100は、端末から同じ初期グループIDの端末のうちの個別会話設定の相手端末を指定して個別会話設定の適用を要求されると、端末から送信された映像音声データを出力するよう個別会話設定の相手端末を制御する。また、制御サーバ100は、個別会話設定の相手端末から送信された映像音声データを出力するよう端末を制御する。これにより、制御サーバ100は、オンライン会議において、他の参加者に聞こえないよう個別で会話できるようにすることができる。
【0190】
〔その他の実施の形態〕
第2の実施の形態では、制御サーバ100は、グループ会話設定の適用の解除を要求されると、グループ全体についてグループ会話設定の適用を解除していたが、一部の端末についてグループ会話設定の適用を解除してもよい。例えば、制御サーバ100は、グループ会話設定の適用の解除を要求した端末についてのみ、グループ会話設定の適用を解除してもよい。
【0191】
図23は、グループ会話設定の解除の一例を示す図である。
図23の例では、制御サーバ100は、端末200a-1,200a-2,200a-3にグループ会話設定の適用を通知し、映像音声データのグループIDに初期グループIDを設定するよう指示しているものとする。また、制御サーバ100は、端末200b-1,200b-2,200b-3に、映像音声データにグループIDとして全体送信用の値(例えば、0x00000000)を設定するよう指示しているものとする。これにより、制御サーバ100は、ユーザ20b-1,20b-2,20b-3の会話が全体に聞こえ、ユーザ20a-1,20a-2,20a-3の会話がグループ内にのみ聞こえるように制御する。
【0192】
ここで、ユーザ20a-2が操作する端末200a-2は、グループ会話設定の適用を個別解除する要求を制御サーバ100に送信したものとする。例えば、端末200a-2は、グループ会話設定の適用の個別解除ボタンの押下操作を受け付けると、グループ会話設定の適用を個別解除する要求を制御サーバ100にする。
【0193】
すると、制御サーバ100は、映像音声データにグループIDとして0x00000000を設定するよう端末200a-2に指示する。制御サーバ100は、端末200a-2から受信した、グループIDとして0x00000000が設定された映像音声データを、端末200a-1,200a-3,200b-1,200b-2,200b-3に送信する。これにより、制御サーバ100は、ユーザ20a-2,20b-1,20b-2,20b-3の会話が全体に聞こえ、ユーザ20a-1,20a-3の会話がユーザ20a-1,20a-2,20a-3にのみ聞こえるように制御する。このようにして、制御サーバ100は、グループ会話設定の適用中に、一部の参加者が全体会話に戻るよう制御できる。
【0194】
以上、実施の形態を例示したが、実施の形態で示した各部の構成は同様の機能を有する他のものに置換することができる。また、他の任意の構成物や工程が付加されてもよい。さらに、前述した実施の形態のうちの任意の2以上の構成(特徴)を組み合わせたものであってもよい。
【符号の説明】
【0195】
1a,1b,1c,1d,1e,1f 端末
10 オンライン会議制御装置
11 記憶部
11a グループリスト
12 処理部