本発明を実施するための実施形態について、図面を用いて説明する。本発明は、以下に記載の構成に限定されるものではなく、同一の技術的思想において種々の構成を採用することができる。例えば、以下に示す構成の一部は、省略し又は他の構成等に置換してもよい。他の構成を含むようにしてもよい。
<遠隔会議システム>
遠隔会議システム10の概略について、図1を参照して説明する。遠隔会議システム10は、図1に示すように、サーバ装置20と、会議に出席する複数のユーザによって操作される端末装置を含む。図1では、3台の端末装置が図示されている。端末装置の台数は、実施される遠隔会議のシチュエーションに応じて変化する。実施形態では、3台の端末装置による遠隔会議を例に説明する。図1に図示された3台の端末装置のそれぞれを、端末装置41,42,43という。端末装置41,42,43は、同一の遠隔会議に出席しているユーザによってそれぞれ操作されている。
サーバ装置20と端末装置41,42,43は、ネットワーク90に接続されている。ネットワーク90は、例えば、インターネット又はローカルエリアネットワーク(LAN)のようなネットワークである。遠隔会議システム10では、端末装置41,42,43による遠隔会議は、サーバ装置20と端末装置41,42,43のそれぞれとの間でセッションが確立された状態で行われる。
サーバ装置20は、端末装置41,42,43の間を送受信されるデータを中継する。端末装置41,42,43の間を送受信されるデータとしては、例えば、端末装置41,42,43のそれぞれで撮影された撮影データと、端末装置41,42,43のそれぞれで集音された音データが挙げられる。更に、サーバ装置20は、資料データを中継する。資料データは、遠隔会議で用いられる資料画像64(後述する図3下段参照)に対応する画像データである。資料データは、複数頁分の資料画像64に対応する画像データであることもある。遠隔会議システム10では、公知の遠隔会議システムと同様、端末装置41,42,43の間で同一の資料データに対応する資料画像64が共有された状態で、遠隔会議を進行することができる。サーバ装置20は、端末装置41,42,43のうちの何れか1台の端末装置から送信された資料データを、他の2台の端末装置に送信する。
サーバ装置20を介して実行される遠隔会議は、会議IDによって識別される。即ち、端末装置41,42,43による遠隔会議は、会議IDによって、サーバ装置20を介して実行される他の遠隔会議と識別される。会議IDによって識別される遠隔会議において、端末装置41,42,43は、端末IDにより識別される。実施形態では、端末装置41,42,43の各端末IDは、次の通りとする。端末装置41の端末IDは「USER41」とする。端末装置42の端末IDは「USER42」とする。端末装置43の端末IDは「USER43」とする。
会議IDによって識別される遠隔会議では、端末装置41,42,43のそれぞれに対して、所定の役割と権限が設定される。役割としては、主催者と発表者と参加者が例示される。これら3つの役割について、主催者は最上位の役割であり、発表者と参加者は、主催者より下位の役割である。発表者は、参加者より上位の役割である。例えば、役割が主催者又は発表者に設定された端末装置では、資料データを送信する操作が認められるが、役割が参加者に設定された端末装置では、この操作は行えない。この他、役割が主催者に設定された端末装置では、他の端末装置に設定された役割を異なる役割へと変更する操作が認められるが、役割が発表者又は参加者に設定された端末装置では、この操作は行えない。
権限としては、頁変更が例示される。頁変更は、資料データが複数頁分の資料画像64に対応する場合において、制限なく、何れの頁も表示させること、即ち、表示される頁の変更ができる権限である。権限として頁変更が設定されていない端末装置では、表示される資料の頁の変更が制限され、資料データの送信元の端末装置で指定された頁の画像が表示される。即ち、遠隔会議中、頁変更が設定されていない端末装置では、資料データの送信元の端末装置と同一頁の画像が表示される。実施形態では、役割として、主催者と発表者と参加者を例とし、権限として、頁変更を例とする。
遠隔会議システム10では、端末装置41,42,43は、1又は複数のグループに分類される。端末装置41,42,43が属するグループは、例えば、アカウントによって識別される。遠隔会議システム10では、提供される遠隔会議のサービスを利用する際に必要となるアカウントが、遠隔会議システム10を運営する事業者から発行される。例えば、端末装置41,42,43を管理するユーザから、3台分のアカウントの発行申請がされた場合、事業者からこのユーザに対して、最大利用の端末数が3台であるアカウントが発行される。端末装置41,42,43は、このアカウントを利用して、サーバ装置20との間でセッションを確立する。セッションの確立によって、端末装置41,42,43を用いた遠隔会議が可能となる。この場合、端末装置41,42,43が属するグループは、共通したアカウントによる同一のグループとなる。
この他、端末装置41,43を管理する第一ユーザから、2台分のアカウントの発行申請がされた場合、事業者から第一ユーザに対して、最大利用の端末数が2台である第一アカウントが発行される。前述した発行申請とは別に、端末装置42を管理する第二ユーザから、1台分の発行申請がされた場合、事業者から第二ユーザに対して、最大利用の端末数が1台である第二アカウントが発行される。端末装置41,43は、第一アカウントを利用して、サーバ装置20との間でセッションを確立する。端末装置42は、第二アカウントを利用して、サーバ装置20との間でセッションを確立する。セッションの確立によって、端末装置41,42,43を用いた遠隔会議が可能となる。この場合、端末装置41,43が属するグループは、共通した第一アカウントによる第一グループとなり、端末装置42が属するグループは、第二アカウントによる第二グループとなる。この他、例えば、シングルサインオン環境で遠隔会議用のプログラムを実行する場合、アクティブディレクトリ等のディレクトリサービスによって提供されるユーザアカウントが、遠隔会議システム10のユーザアカウントとしてインポートされてもよい。この場合、ディレクトリサービスによってユーザアカウントに対して設定されたグループが、遠隔会議システム10においても適用される。
サーバ装置20は、図2に示す、接続リストを記憶する。接続リストには、セッションが確立された端末装置41,42,43の各属性情報が登録されている。属性情報は、上述した役割と権限とグループである。即ち、接続リストには、端末装置41,42,43の各端末IDに対して、役割と権限とグループが登録されている。図2に示す接続リストにおける登録状態は、例示である。図2下段に示す接続リストにおいて、端末ID「USER43」に設定された権限「−」は、頁変更が未設定であることを示す。
遠隔会議システム10では、アカウントを有するユーザによって、事前に遠隔会議の開催が予約される。このユーザは、出席者に対する役割と権限を設定することができる。遠隔会議を主催したユーザの役割は、主催者とされる。ここで設定された役割と権限は、サーバ装置20と端末装置41,42,43との間でそれぞれセッションが確立された際の接続リストにおいて、セッションが確立された端末装置の端末IDに対する役割と権限の初期設定となる。予約は、サーバ装置20によって提供される所定のサイトに登録される。予約の際、例えば、遠隔会議の開催を、出席者に通知することができる。この通知は、例えば、電子メールを用いて行われる。即ち、電子メールの本文には、遠隔会議の開催日時と、サーバ装置20のURLが含められる。サーバ装置20のURLには、予約された遠隔会議を識別する会議IDと、属性情報に関する情報が含められる。遠隔会議システム10では、アカウントを有さないユーザを、出席者として遠隔会議に招待することができる。この場合、アカウントを有さないユーザが用いる端末装置が属するグループは、アカウントを有するユーザが用いる端末装置が属するグループとは別のグループに分類される。
即ち、役割及び権限は、予約された会議IDによって識別される遠隔会議に対応して設定される、個々の遠隔会議に従属する属性情報である。一方、グループは、会議IDによって識別される遠隔会議とは無関係に設定される、個々の遠隔会議に従属しない属性情報である。例えば、第一遠隔会議において所定の端末装置に設定される役割及び権限の一方又は両方は、第一遠隔会議とは別の第二遠隔会議では、同じ端末装置であっても、第一遠隔会議とは異なる場合がある。これに対して、前述の端末装置が属するグループは、第一遠隔会議及び第二遠隔会議の何れにおいても同じである。グループは、ネットワーク90を介した遠隔会議が実現される遠隔会議システム10を利用する上で、固有の属性情報である。
端末装置41,42,43は、例えば、パーソナルコンピュータ、スマートフォン又はタブレット端末である。即ち、端末装置41,42,43は、ネットワーク90を介した通信機能を有する同一又は同種の端末装置である。従って、端末装置41,42,43は、同様の構成を有する。実施形態では、端末装置41を例として説明する。サーバ装置20は、公知の遠隔会議システムにおけるサーバ装置と同様のハードウェア構成を有する公知のサーバ装置である。そのため、サーバ装置20に関するこの他の説明は、省略する。
<端末装置>
端末装置41について、図1及び図3を参照して説明する。端末装置41は、図1に示すように、CPU47と、記憶装置48と、RAM49と、表示部50と、操作部51と、スピーカ52と、通信部53と、接続インターフェース54を備える。CPU47と記憶装置48とRAM49と表示部50と操作部51とスピーカ52と通信部53と接続インターフェース54は、バス55に接続される。実施形態では、接続インターフェース54を「接続I/F54」と記載する。接続I/F54には、カメラ56とマイク57が接続される。上述した通り、端末装置42,43は、端末装置41と同一又は同種の端末装置である。従って、端末装置42,43は、端末装置41と同じ構成を備える。
CPU47は、演算処理を実行する。記憶装置48は、コンピュータが読み取り可能な記憶媒体により構成される。例えば、記憶装置48は、ハードディスク及び/又はフラッシュメモリにより構成される。この他、記憶装置48は、ROMを含むものであってもよい。記憶装置48には、各種のプログラムが記憶される。例えば、OSと各種のアプリケーションが記憶装置48に記憶される。記憶装置48に記憶されるアプリケーションには、端末装置41で実行される後述の各処理(図4〜図6及び図9参照)のプログラムが含まれる。
各処理のプログラムは、記憶装置48に事前にインストールされていてもよい。各処理のプログラムは、遠隔会議への接続に際し、端末装置41がサーバ装置20にアクセスした場合に、サーバ装置20からネットワーク90を介して伝送信号として端末装置41に送信されてもよい。プログラムは、そのタイミングで、記憶装置48にインストールされるようにしてもよい。この場合、プログラムは、RAM49に記憶されてもよい。事前のインストールは、例えば、半導体メモリ等のコンピュータが読み取り可能な記憶媒体に記憶されたプログラムが、端末装置41の読取部(不図示)により読み取られることで行われる。端末装置41が、例えば、光学ドライブ(不図示)を備えている場合、事前のインストールは、光学メディアに記憶されたプログラムが、光学ドライブにより読み取られることで行われるようにしてもよい。この他、事前のインストールは、ネットワーク90を介して端末装置41に接続されるサーバ装置(サーバ装置20又は不図示のサーバ装置)のハードディスク等のコンピュータが読み取り可能な記憶媒体に記憶されたプログラムが、通信部53で伝送信号として受信されることで行われるようにしてもよい。何れの形態とするかは、諸事情を考慮して適宜決定される。コンピュータが読み取り可能な記憶媒体は、一時的な記憶媒体(例えば、伝送信号)を含まない、非一時的な記憶媒体であってもよい。非一時的な記憶媒体は、情報を記憶する期間に関わらず、情報を記憶可能な記憶媒体であればよい。
RAM49は、CPU47が各種のプログラムを実行する際に利用される記憶領域となる。RAM49には、処理の実行途中に、処理で利用される所定のデータ及び情報が記憶される。端末装置41では、CPU47が記憶装置48に記憶されたOSと図4〜図6及び図9に示す各処理のプログラムを実行する等して、端末装置41を制御する。これにより、端末装置41では、各種の処理が実行される。
表示部50は、例えば液晶ディスプレイである。表示部50には、各種の情報が表示される。表示部50には、遠隔会議画面60が表示される。遠隔会議画面60は、図3に示すように、共有ボタン61と、終了ボタン62を含む。遠隔会議画面60には、撮影画像63が表示される。セッションが確立された直後の遠隔会議画面60は、例えば、図3上段のような態様とされる。即ち、遠隔会議画面60では、資料画像64又は資料指定画面65(後述する図7参照)は、非表示とされる。資料画像64と資料指定画面65の表示については、後述する。
共有ボタン61は、共有開始指示に関連付けられる。共有開始指示は、図5及び図6に示す資料送信処理を起動させる指示である。上述した通り、役割が主催者又は発表者に設定された端末装置では、資料データを送信する操作が認められるが、役割が参加者に設定された端末装置では、この操作は行えない。従って、端末装置41に設定された役割が、図2とは異なり参加者である場合、共有ボタン61は、非表示又はグレーアウト状態とされる。終了ボタン62は、遠隔会議の終了に関連付けられる。端末装置41のユーザは、遠隔会議を終了する場合、終了ボタン62を押下する。この場合、遠隔会議は終了し、サーバ装置20との間で確立されたセッションは、切断される。
撮影画像63は、例えば、端末装置42,43からの映像データに対応する画像である。遠隔会議画面60では、自装置で撮影された映像データに対応する撮影画像63を表示することもできる。遠隔会議画面60では、撮影画像63の表示又は非表示を設定することができる。撮影画像63の表示又は非表示は、撮影画像63のそれぞれに対して個別に設定することができる。図3及び後述する図7に示す遠隔会議画面60に基づけば、端末IDが「USER41」である端末装置41の撮影画像63は、非表示に設定され、端末IDが「USER42」及び「USER43」である端末装置42,43の撮影画像63は、表示に設定されている。遠隔会議画面60では、端末装置42,43の撮影画像63に対する表示の設定に従い、2個の撮影画像63が表示されている。資料画像64は、後述するように、端末装置41,42,43のうちの何れかの端末装置で、共有ボタン61が押下された場合に表示される。
操作部51は、端末装置41に対する各種の指示等の入力を受け付ける。操作部51は、キーボード及びマウスを含む。詳細は省略するが、キーボード及びマウスへの各操作に対応する操作情報を生成する処理は、公知のパーソナルコンピュータで採用されている技術であり、端末装置41でも採用される。
スピーカ52は、音を出力する音出力部である。スピーカ52での出力対象は、例えば、上述したサーバ装置20から送信される音データに対応する音である。通信部53は、端末装置41をネットワーク90に接続し、ネットワーク90を介したデータ通信を行う。端末装置41では、通信部53を介してサーバ装置20との間で各種のデータが送受信される。通信部53は、例えば、イーサネット(登録商標)規格に適合するインターフェース回路である。通信部53によるネットワーク90への接続は、無線接続又は有線接続の何れであってもよい。
接続I/F54は、端末装置41に所定の装置を接続するインターフェースである。接続I/F54は、例えば、USB(Universal Serial Bus)ポートを含むインターフェースである。接続I/F54は、無線通信モジュールを含むものであってもよい。無線通信モジュールとしては、Bluetooth(登録商標)に対応した通信モジュールが例示される。接続I/F54に接続されたカメラ56は、外界像を撮影する。端末装置41は、カメラを内蔵する構成であってもよい。接続I/F54に接続されたマイク57は、外界音を集音する集音部である。例えば、マイク57は、端末装置41のユーザが発した音声を集音する。
端末装置41は、後述する各処理(図4〜図6及び図9参照)のプログラムが記憶装置48又はRAM49に記憶される点が、公知の通信装置と相違する。但し、端末装置41は、ハードウェア的には、公知の端末装置と同じである。
<端末装置で実行される処理>
端末装置41,42,43による遠隔会議が実行される場合に、端末装置41で実行される各処理について説明する。端末装置42,43でも、同様の処理が実行される。
<メイン処理>
メイン処理について、図4を参照して説明する。メイン処理の開始に際し、端末装置41では、操作部51を介して、サーバ装置20のURLを指定する操作が入力される。この操作が入力された場合、CPU47は、メイン処理のプログラムを起動する。メイン処理のプログラムの起動によって、メイン処理が開始される。メイン処理を開始させたCPU47は、接続処理を実行する(S11)。接続処理において、端末装置41は、サーバ装置20にアクセスし、サーバ装置20との間でセッションが確立される。接続処理では、公知の遠隔会議システムにおいて実施される手順と同様の手順が実行される。そのため、接続処理で実行される手順に関する説明は省略する。
サーバ装置20との間でセッションが確立されることで、端末装置41は、会議IDによって識別される遠隔会議に接続された状態となる。即ち、端末装置41は、会議IDによって識別される遠隔会議が開催されるバーチャルな会議室に入室した状態となる。端末装置41では、サーバ装置20との間でセッションが確立されると、カメラ56で撮影された映像データとマイク57で集音された音に対応する音データが、通信部53からサーバ装置20に送信される。サーバ装置20は、端末装置42,43のうち、セッションが確立された端末装置に、端末装置41からの映像データと音データを送信する。サーバ装置20は、端末装置41に、端末装置42,43のうち、セッションが確立された端末装置からの映像データと音データを送信する。端末装置41では、サーバ装置20との間でセッションが確立されると、表示部50に遠隔会議画面60が表示される。端末装置41では、サーバ装置20を経由して送信される、セッションが確立された端末装置42,43の一方又は両方からの映像データと音データが、通信部53で受信される。表示部50に表示されている遠隔会議画面60では、受信された映像データに対応する撮影画像63が表示される。スピーカ52では、受信された音データに対応する音が出力される。なお、端末装置42,43でも、端末装置41からの映像データと音データが受信されると、映像データに対応する撮影画像63を含む遠隔会議画面60が表示され、音データに対応する音が出力される。図4では、これら各処理に関する図示は、省略されている。
S11を実行した後、CPU47は、接続リストが取得されたかを判断する(S13)。接続リストは、サーバ装置20から送信され、通信部53で受信される。接続リストが通信部53で受信された場合、CPU47は、通信部53を介して接続リストを取得する。接続リストが取得された場合(S13:Yes)、CPU47は、取得された接続リストをRAM49に記憶する(S15)。
例えば、サーバ装置20と端末装置42との間でセッションが確立されている状態で、S11によって新たにサーバ装置20と端末装置41との間でセッションが確立されたとする。この場合、図2上段に示す接続リストが、サーバ装置20から送信され、通信部53で受信される。このとき、サーバ装置20は、図2上段に示す接続リストを、端末装置42にも送信する。CPU47は、通信部53を介して図2上段に示す接続リストを取得し、これをRAM49に記憶する。更に、サーバ装置20と端末装置41,42との間でセッションが確立されている状態で、新たにサーバ装置20と端末装置43との間でセッションが確立されたとする。この場合、図2下段に示す接続リストが、サーバ装置20から送信され、通信部53で受信される。このとき、サーバ装置20は、図2下段に示す接続リストを、端末装置42,43にも送信する。CPU47は、通信部53を介して図2下段に示す接続リストを取得し、これをRAM49に記憶する。即ち、接続リストがRAM49に記憶されている場合、記憶済みの接続リスト(図2上段参照)は、新たに取得された接続リストに更新される(図2下段参照)。端末装置42,43でも、新たな接続リストが受信される毎に、記憶済みの接続リストは、新たな接続リストに更新される。以下では、サーバ装置20と端末装置42,43との間でもセッションが確立されている状態を前提として説明する。
接続リストが取得されていない場合(S13:No)又はS15を実行した後、CPU47は、共有開始指示が取得されたかを判断する(S17)。ユーザは、操作部51を操作し、遠隔会議画面60に表示されている共有ボタン61を押下する。CPU47は、共有ボタン61が押下された場合、共有開始指示を取得する。
共有開始指示が取得された場合(S17:Yes)、CPU47は、共有開始処理を実行する(S19)。共有開始処理については、後述する。共有開始指示が取得されていない場合(S17:No)又はS19を実行した後、CPU47は、資料データが取得されたかを判断する(S21)。S21で取得される資料データの送信元となる端末装置について、図2下段に示す接続リストに基づき説明する。上述した通り、役割が主催者又は発表者に設定された端末装置では、資料データを送信する操作が認められるが、役割が参加者に設定された端末装置では、この操作は行えない。従って、資料データは、端末装置42で実行されているメイン処理のS17が肯定(S17:Yes参照)され、S19が実行された場合に、端末装置42からサーバ装置20を経由して端末装置41に送信され(後述する図5のS35参照)、通信部53で受信される。CPU47は、通信部53を介して資料データを取得する。
資料データが取得された場合(S21:Yes)、CPU47は、共有応答処理を実行する(S23)。共有応答処理については、後述する。資料データが取得されていない場合(S21:No)又はS23を実行した後、CPU47は、終了指示が取得されたかを判断する(S25)。ユーザは、操作部51を操作し、終了ボタン62を押下する。CPU47は、終了ボタン62が押下された場合、終了指示を取得する。
終了指示が取得されていない場合(S25:No)、CPU47は、処理をS13に戻す。その後、CPU47は、S13以降の処理を繰り返して実行する。終了指示が取得された場合(S25:Yes)、CPU47は、メイン処理を終了する。この場合、CPU47は、サーバ装置20との間のセッションを切断する手順を、サーバ装置20との間で実行する。セッションの切断によって、端末装置41での遠隔会議は、終了する。
<共有開始処理>
図4のS19で実行される共有開始処理について、図5及び図6を参照して説明する。共有開始処理を開始させたCPU47は、資料指定画面65を表示する(S31)。CPU47は、遠隔会議画面60に資料指定画面65を表示させる出力指令を表示部50に出力する。表示部50では、出力指令に従い、遠隔会議画面60に資料指定画面65が表示される。資料指定画面65は、図7に示すように、OKボタン66と、キャンセルボタン67と、アイコン画像を含む。OKボタン66は、資料データの候補となる1個又は複数のデータの中から、特定の資料データを指定する共有指示に関連付けられる。キャンセルボタン67は、資料データの指定のキャンセル指示に関連付けられる。キャンセルボタン67が押下された場合、共有開始処理は、終了する。
アイコン画像は、例えば、資料データの候補となるデータに対応する画像である(図7参照)。端末装置41がアクセス可能な記憶装置48とは異なる外部記憶装置がある場合、資料指定画面65は、アイコン画像として、外部記憶装置に記憶されたデータに対応する画像を含むようにしてもよい。外部記憶装置は、例えば、ネットワーク90上の記憶装置であってもよい。アイコン画像は、そのデータが記憶された記憶先情報に関連付けられる。図7では、資料データの候補となるデータとして、3個のデータに対応するアイコン画像A,B,Cを例示している。
ユーザは、操作部51を操作し、アイコン画像A,B,Cのうち1個を選択する。図7で、アイコン画像Aに付した網点模様は、アイコン画像Aが選択状態とされていることを示す。例えば、アイコン画像Aが押下された場合、資料指定画面65は、図7に示す状態となる。図7に示す状態で、OKボタン66が押下された場合、アイコン画像Aに対応する資料データが共有対象として指定される。CPU47は、指定されたアイコン画像に関連付けられた記憶先情報に従いこの資料データの記憶先にアクセスし、この資料データを取得する(S33)。資料データが外部記憶装置から取得される場合、CPU47は、通信部53を介してこの資料データを取得する。取得された資料データは、RAM49に記憶される。続けて、CPU47は、取得された資料データを送信する(S35)。CPU47は、資料データの送信指令を通信部53に出力する。送信指令に従い、資料データが、通信部53からサーバ装置20へと送信される。更に、資料データは、サーバ装置20から端末装置42,43へと送信される。資料データの送信は、資料データを頁単位で分割し、1頁分の画像に対応する資料データの部分毎に行われる。このような資料データの送信を実現する仕様としては、Web表示用に最適化されたリニアライズドPDFが例示される。
実施形態では、資料データが複数頁分の資料画像64に対応するデータである場合、各頁の画像に対応する資料データの部分には、この資料データの部分の頁数を示す情報が含められている。更に、最終頁の画像に対応する資料データの部分には、最終頁であることを示す情報が含められている。資料データが1頁のみの資料画像64に対応するデータである場合についても、1頁目を示す情報と、最終頁であることを示す情報が含められる。図5のS35では、1頁目の画像に対応する資料データの部分が最初に送信され、その後、2頁目以降の画像に対応する資料データの各部分が順次送信されるようにしてもよい。
S35を実行した後、CPU47は、完了通知が取得されたかを判断する(S37)。完了通知は、資料データの送信先である端末装置で資料データが取得されたことを示す通知である。完了通知は、後述する図9のS73で送信される。S35で端末装置41から送信された資料データが、端末装置42で受信されたとする。この場合、端末装置42は、完了通知を送信する。S35で端末装置41から送信された資料データが、端末装置43で受信されたとする。この場合、端末装置43は、完了通知を送信する。端末装置41では、端末装置42,43からの各完了通知が、通信部53で受信される。CPU47は、通信部53を介して完了通知を取得する。完了通知には、送信元の端末装置の端末IDが含められる。
完了通知が取得されていない場合(S37:No)、CPU47は、S37を繰り返して実行する。完了通知が取得された場合(S37:Yes)、CPU47は、完了通知リストに、取得された完了通知に含まれる端末IDを登録する(S39)。例えば、端末装置42,43からの完了通知が取得されていない状態で、新たに端末装置42からの完了通知が取得された場合、CPU47は、完了通知リストに、USER42を登録する(図8上段参照)。端末装置42からの完了通知が取得され、端末装置43からの完了通知が取得されていない状態で、新たに端末装置43からの完了通知が取得された場合、CPU47は、完了通知リストに、USER43を登録する(図8下段参照)。完了通知リストは、RAM49に記憶される。実施形態では、最後に取得された完了通知を、「取得済み完了通知」という。
続けて、CPU47は、全ての端末装置からの完了通知が取得されたかを判断する(S41)。端末装置41を主体として説明する実施形態では、端末装置42,43からの完了通知が取得されたかが判断される。この判断に際し、CPU47は、RAM49に記憶された接続リストから遠隔会議に参加している端末装置42,43の端末IDを特定し、その全てが、RAM49に記憶された完了通知リストに登録されているかを判断する。接続リストにおける全ての端末IDが完了通知リストに登録されている場合、S41の判断は、肯定される(S41:Yes)。この場合、CPU47は、処理を図6のS57に移行する。
これに対して、接続リストにおける全ての端末IDが完了通知リストに登録されていない場合、S41の判断は、否定(S41:No)される。この場合、CPU47は、端末装置42,43の役割が同一であるかを判断する(S43)。端末装置42,43の役割が同一である場合(S43:Yes)、CPU47は、処理を図6のS51に移行する。端末装置42,43の役割が同一でない場合(S43:No 図2下段参照)、CPU47は、取得済み完了通知に含まれる端末IDの端末装置の役割が最上位の役割である主催者であるかを判断する(S45)。CPU47は、RAM49に記憶された接続リストに従いS43及びS45の各判断を行う。
取得済み完了通知に含まれる端末IDの端末装置の役割が主催者でない場合(S45:No)、CPU47は、処理をS37に戻す。その後、CPU47は、S37以降の処理を繰り返して実行する。取得済み完了通知に含まれる端末IDの端末装置の役割が主催者である場合(S45:Yes)、CPU47は、完了通知が取得されていない端末装置の役割が主催者であるかを判断する(S47)。S47でCPU47は、接続リストに登録された端末IDのうち、完了通知リストに未登録の端末IDを特定する。CPU47は、接続リストから、特定された端末IDに対する役割が主催者であるかを判断する。完了通知が取得されていない端末装置の役割が主催者である場合(S47:Yes)、CPU47は、処理をS37に戻す。その後、CPU47は、S37以降の処理を繰り返して実行する。なお、S47が肯定される場合(S47:Yes)は、全ての主催者から、完了通知が取得された状態である。
完了通知が取得されていない端末装置の役割が主催者でない場合(S47:No)、CPU47は、処理を図6のS49に移行する。S49でCPU47は、端末装置42,43のグループが同一であるかを判断する。即ち、CPU47は、RAM49に記憶された接続リストに従い、端末装置42,43の各端末IDに対するグループが同一であるかを判断する。CPU47は、端末装置42,43のグループが同一である場合(S49:Yes)、処理をS57に移行する。CPU47は、端末装置42,43のグループが同一でない場合(S49:No)、処理をS53に移行する。
S51でCPU47は、端末装置42,43のグループが同一であるかを判断する。この判断は、S49と同様、RAM49に記憶された接続リストに従い行われる。端末装置42,43のグループが同一でない場合(S51:No)、CPU47は、処理をS53に移行する。S53でCPU47は、取得済み完了通知に含まれる端末IDの端末装置のグループが、自装置が属するグループ(以下、「自グループ」という)と異なるかを判断する。即ち、CPU47は、RAM49に記憶された接続リストに従い、自装置の端末IDに対する自グループと取得済み完了通知に含まれる端末IDに対するグループが同一であるかを判断する。
取得済み完了通知に含まれる端末IDの端末装置のグループが、自グループと異なる場合(S53:Yes)、CPU47は、自グループとは異なる別グループの端末装置から取得されていない完了通知があるかを判断する(S55)。S55でCPU47は、接続リストに登録された端末IDのうち、完了通知リストに未登録の端末IDを特定する。CPU47は、接続リストから、特定された端末IDに対するグループが、自グループと同一であるかを判断する。別グループの端末装置から取得されていない完了通知がない場合(S55:No)、CPU47は、処理をS57に移行する。
端末装置42,43のグループが同一である場合(S51:Yes)、取得済み完了通知に含まれる端末IDの端末装置のグループが自グループと異ならない場合(S53:No)、又は別グループの端末装置から取得されていない完了通知がある場合(S55:Yes)、CPU47は、処理を図5のS37に戻す。その後、CPU47は、S37以降の処理を繰り返して実行する。
S57でCPU47は、資料データに対応する資料画像64を表示する。なお、資料データは、図5のS33で取得されRAM49に記憶されている。CPU47は、遠隔会議画面60にこの資料画像64を表示させる出力指令を表示部50に出力する。表示部50では、出力指令に従い、遠隔会議画面60にこの資料画像64が表示される(図3下段参照)。資料画像64が複数頁の画像である場合、特定の1頁分の画像が表示される。例えば、複数頁の画像のうち、1頁目の画像が表示される。S57を実行した後、CPU47は、共有開始処理を終了する。
<共有応答処理>
図4のS23で実行される共有応答処理について、図9を参照して説明する。共有応答処理は、資料データの送信先となる端末装置で実行される。上記では、端末装置41を資料データの送信元の端末装置とし、端末装置42,43を資料データの送信先の端末装置とした。但し、端末装置41,42,43による遠隔会議では、図4に示すメイン処理から明らかな通り、端末装置42,43のうちの何れかの端末装置が、資料データの送信元の端末装置となり、この端末装置で、上述した図4のS19で共有開始処理(図5及び図6参照)が実行される場合もある。この場合、端末装置41は、資料データの送信先の端末装置となり、端末装置41では、共有応答処理が実行される。実施形態では、共有応答処理の実行主体を端末装置41として説明する。この場合、資料データの送信元の端末装置は、端末装置42とする。
共有応答処理を開始させたCPU47は、資料データの取得が開始されたかを判断する(S61)。資料データは、図5のS35で頁単位に分割された部分的なデータとして送信され、通信部53で順次受信される。CPU47は、通信部53で順次受信される資料データを、通信部53を介して取得する。資料データは、順次RAM49に記憶される。資料データの取得が開始されていない場合(S61:No)、CPU47は、S61を繰り返して実行する。資料データの取得が開始された場合(S61:Yes)、CPU47は、1頁分の画像に対応する資料データの部分が取得されたかを判断する(S63)。1頁分の画像に対応する資料データの部分が取得されていない場合(S63:No)、CPU47は、S63を繰り返して実行する。
1頁分の画像に対応する資料データの部分が取得された場合(S63:Yes)、CPU47は、取得された資料データの部分に対応する資料画像64の1頁目の画像が、表示済みであるかを判断する(S65)。例えば、取得された1頁分の画像に対応する資料データの部分が、1頁目を示す情報を含む場合、S65の判断は否定(S65:No)される。また、資料データが1頁目から順次送信されてくる仕様であるとき、取得された1頁分の画像に対応する資料データの部分が、共有応答処理が開始された後、初めてS63が肯定(S63:Yes)されたデータである場合、S65の判断は否定(S65:No)される。S65の判断が否定される場合(S65:No)、後述するS67は、共有応答処理が開始された後、未実行の状態である。S65の判断が否定された場合(S65:No)、CPU47は、資料画像64の1頁目の画像を表示する(S67)。CPU47は、遠隔会議画面60に資料画像64の1頁目の画像を表示させる出力指令を表示部50に出力する。表示部50では、出力指令に従い、遠隔会議画面60に資料画像64の1頁目の画像が表示される(図3下段参照)。
説明をS65に戻し、共有応答処理が、後述するS71が否定(S71:No)され、その後、処理がS63に戻された状態である場合、既にS67が実行されている。そのため、S65の判断は、肯定(S65:Yes)される。この場合、例えば、取得された1頁分の画像に対応する資料データの部分は、2頁目以降の所定の頁を示す情報を含むデータである。また、資料データが1頁目から順次送信されてくる仕様であるとき、取得された1頁分の画像に対応する資料データの部分は、共有応答処理が開始された後、S63が肯定(S63:Yes)される2回目以降のデータである。S65が肯定された場合(S65:Yes)又はS67を実行した後、CPU47は、自装置(端末装置41)に対する権限として頁変更が設定されているかを判断する(S69)。S69でCPU47は、RAM49に記憶された接続リストに、自装置の端末IDに対して権限「頁変更」が設定されているかを判断する。自装置に対する権限として頁変更が設定されている場合(S69:Yes)、CPU47は、資料データの全体が取得されたかを判断する(S71)。S71でCPU47は、取得された資料データの部分に含まれる最終頁であることを示す情報に従い、資料データの全体が取得されたかを判断する。資料データの全体が取得されていない場合(S71:No)、CPU47は、処理をS63に戻す。その後、CPU47は、S63以降の処理を繰り返して実行する。資料データが、1頁のみの資料画像64に対応するデータである場合、S71は、否定(S71:No)されることはない。
自装置に対する権限として頁変更が設定されていない場合(S69:No)、又は資料データの全体が取得された場合(S71:Yes)、CPU47は、完了通知を送信する(S73)。完了通知には、上述した通り、自装置の端末IDが含められる。CPU47は、完了通知の送信指令を通信部53に出力する。送信指令に従い、完了通知が、通信部53からサーバ装置20へと送信される。更に、完了通知は、サーバ装置20から、端末装置42へと送信される。その後、CPU47は、共有応答処理を終了する。
<実施形態の効果>
実施形態によれば、次のような効果を得ることができる。
(1)端末装置41が資料データの送信元の端末装置で、端末装置42,43が資料データの送信先の端末装置である場合、端末装置41では、端末装置42,43からの完了通知が取得されると(図5のS41:Yes参照)、表示部50に表示されている遠隔会議画面60に、資料データに対応する資料画像64が表示される(図6のS57参照)。但し、端末装置41では、図5のS43〜S47及び図6のS49〜S55で、端末装置42,43に対する属性情報(役割、権限及びグループ 図2参照)によって特定される所定の条件に従った判断を適宜実行することで、遠隔会議画面60への資料画像64の表示を、適宜開始させることができる。
例えば、端末装置42,43に設定された役割が同一で、端末装置41,43が同一グループで、端末装置42が別のグループである場合、端末装置41では、端末装置43からの完了通知が取得されていなくても、端末装置42からの完了通知が取得されたタイミングで、遠隔会議画面60に資料画像64を表示させることができる(図5のS41:No、S43:Yes、図6のS51:No、S53:Yes,S55:No、S57参照)。この他、端末装置42に設定された役割が参加者で、端末装置43に設定された役割が主催者で、端末装置41,42,43が同一のグループである場合、端末装置42からの完了通知が取得されていなくても、端末装置43からの完了通知が取得されたタイミングで、遠隔会議画面60に資料画像64を表示させることができる(図5のS41:No、S43:No、S45:Yes、S47:No、図6のS49:Yes、S57参照)。
そのため、資料データの送信元である端末装置41では、自装置から送信された資料データが、遠隔会議に参加している他の端末装置42,43で取得され、これに対応した資料画像64が端末装置42,43で表示されていることを報知することができる(図3下段参照)。端末装置41のユーザは、資料画像64の表示に応じて、端末装置42,43で資料画像64が表示されたことを認識し、資料画像64を用いた説明を適宜開始させることができる。例えば、上述した通り、会議IDによって識別される遠隔会議に対応して設定される、端末装置42,43の役割が同一である場合であっても、個々の遠隔会議に従属しない属性情報であるグループに従い、遠隔会議画面60への資料画像64の表示を、適宜開始させることができる。
(2)端末装置41が資料データの送信先の端末装置で、端末装置41に頁変更の権限が設定されている場合、端末装置41では、資料データの全体が取得されたタイミングで、完了通知が送信される(図9のS69:Yes、S71:Yes、S73参照)。一方、端末装置41が資料データの送信先の端末装置で、端末装置41に頁変更の権限が設定されていない場合、資料画像64が複数頁であっても、1頁目の画像に対応する資料データの部分が取得されると、その頁の表示を条件として、完了通知が送信される(図9のS53:Yes、S67、S69:No、S73参照)。そのため、完了通知の送信のタイミングを、権限に応じて変更することができる。即ち、端末装置41では、表示可能な資料画像64の頁に対応する分の資料データが取得されたタイミングで、完了通知を送信することができる。
<変形例>
実施形態は、次のようにすることもできる。以下に示す変形例のうちの幾つかの構成は、適宜組み合わせて採用することもできる。以下では、上記とは異なる点を説明することとし、同様の点についての説明は、適宜省略する。
(1)遠隔会議システム10には、サーバ装置20が設けられる(図1参照)。例えば、資料データと完了通知は、サーバ装置20を経由して、端末装置41,42,43の間を送受信される。遠隔会議は、端末装置41,42,43がネットワーク90を介して直接通信して行うようにしてもよい。このようなP2P型の遠隔会議が実行される遠隔会議システム10では、サーバ装置20は省略される。
(2)図5及び図6に示す共有開始処理では、図5のS47が否定(図5のS47:No)された後に実行される図6のS49、S53、S55を省略するようにしてもよい。この場合、図5のS41が否定(図5のS41:No参照)された後のS43では、端末装置41,42,43のうち、資料データの送信先である2台の端末装置の役割が同一であるかが判断される。そして、前述した2台の端末装置の役割が同一でない場合(図5のS43:No参照)であっても、S45とS47で、役割が主催者に設定された端末装置からの完了通知が取得されていると判断される場合(図5のS45:Yes、S47:No参照)には、処理を、図6のS57に移行させ、資料画像64を表示させるようにしてもよい(図3下段参照)。
この他、共有開始処理では、図5のS43〜S47と図6のS49を省略するようにしてもよい。この場合、図5のS41が否定(図5のS41:No参照)されると、処理は、図6のS51に移行され、端末装置41,42,43のうち、資料データの送信先である2台の端末装置のグループが同一であるかが判断される。そして、前述した2台の端末装置のグループが同一でない場合(図6のS51:No参照)であっても、S53とS55で、自装置(資料データの送信元の端末装置)と異なるグループの端末装置からの完了通知が取得されていると判断される場合(図6のS53:Yes、S55:No参照)には、図6のS57で、資料画像64を表示させるようにしてもよい(図3下段参照)。
(3)図5及び図6に示す共有開始処理では、図5のS45及びS47での判断条件となる役割を、遠隔会議において設定される最高の役割である主催者とした。S45及びS47での判断条件は、資料データの送信先となる端末装置の各役割を対象として、その中で最も上位の役割としてもよい。例えば、資料データの送信先となる端末装置が、端末装置42,43であり、端末装置42の役割が発表者で、端末装置43の役割が参加者であるとする(図2下段参照)。この場合、S45及びS47は、発表者と参加者のうち、高い役割である発表者を条件として判断される。即ち、取得済み完了通知に含まれる端末IDがUSER42である場合、S45は、肯定(図5のS45:Yes参照)される一方、S47は、否定(図5のS47:No参照)される。これに対して、取得済み完了通知に含まれる端末IDがUSER43である場合、S45は、否定(図5のS45:No参照)される。この場合、S47が実行されることはない。但し、仮に、S47が実行されたとすると、S47は、肯定(図5のS47:Yes参照)される。
更に、遠隔会議において設定される役割を、主催者と発表者と参加者の3個とした。役割が3個以上である場合、図5のS45及びS47での判断条件となる役割は、複数としてもよい。上記に基づけば、例えば、S45及びS47での判断条件は、主催者又は発表者としてもよい。この場合、S45は、取得済み完了通知に含まれる端末IDに対する役割が主催者又は発表者であるかが判断される。取得済み完了通知に含まれる端末IDに対する役割が主催者又は発表者である場合、S45は、肯定(図5のS45:Yes参照)される。取得済み完了通知に含まれる端末IDに対する役割が参加者である場合、S45は、否定(図5のS45:No参照)される。S47は、完了通知が取得されていない端末装置の役割が主催者又は発表者であるかが判断される。完了通知が取得されていない端末装置の役割が主催者又は発表者である場合、S47は、肯定(図5のS47:Yes参照)される。完了通知が取得されていない端末装置の役割が参加者である場合、S47は、否定(図5のS47:No参照)される。
(4)図5及び図6に示す共有開始処理では、図6のS57で、表示部50に表示中の遠隔会議画面60に資料画像64が表示される。S57では、例えば、スピーカ52から、「遠隔会議の開始の準備が整いました」といったメッセージを出力するようにしてもよい。資料データの送信元である端末装置のユーザは、このメッセージの出力に応じて、資料画像64を用いた説明を適宜開始させることができる。この他、図6のS57では、端末装置の所定の部分を、発光又は点灯するようにしてもよい。
(5)図9に示す共有応答処理では、S63で1頁分の画像に対応する資料データの部分が取得されたと判断された場合(図9のS63:Yes参照)、S67で資料画像64の1頁目の画像が、表示済みであるかが判断される。資料画像64が複数頁であることがある。このような場合、資料データに、初期の表示頁を示す初期頁情報を含め、初期頁情報が示す頁の画像に対応する資料データの部分が取得されたかを判断するようにしてもよい。この場合、図9のS65及びS67は、初期頁情報が示す頁の画像を対象として実行される。図5及び図6に示す共有開始処理のS33では、CPU47は、取得された資料データに初期頁情報を付加する。初期頁情報は、例えば、次のようにして設定される。即ち、S33では、取得された資料データが複数頁の画像を含む資料画像64に対応するデータであるかが解析される。解析の結果、資料データが複数頁の画像を含む資料画像64に対応するデータである場合、CPU47は、初期の表示頁の設定を受け付ける入力画面を、遠隔会議画面60に表示する。ユーザは、操作部51を操作し、初期の表示頁値を入力する。CPU47は、入力された表示頁値を取得し、初期頁情報として資料データに付加する。例えば、初期頁情報は、資料データの送信が開始された後、最初に送信される。この他、初期頁情報は、初期の表示頁の画像に対応する資料データの部分に含められてもよい。