以下、本発明の目的の具体例(一例)について記載する。
ウェブ会議を行うにあたり、例えば、当該ウェブ会議に参加するユーザの所属するプロジェクトや部門等、組織ごとにメンバーを招集してウェブ会議を行う場合がある。
資料共有を円滑に行うために、組織ごとに予めルームを作成しておき、ルームごとに共有する資料(ファイル)をウェブ会議のサーバに記憶させて、ルームの入室者に当該資料を閲覧させることが考えられる。しかし、例えば、特定の組織専用のルームを作成した場合(例:部門Aに所属するユーザのみ入室を許可するよう、入室制限をかけたルームを作成した場合)、他の組織に所属するユーザとのウェブ会議を行うためには、また新たなルームを作成する必要がある。
資料を一元管理する単位であるルームを削除してしまうと、当該ルームに紐付いていた資料を、ウェブ会議において一括して参照することができなくなってしまうため、例えば組織が解体される等、当該組織内での会議が行われなくなるまでルームは保持されるものと考えられる。しかし、ルームが削除されないまま蓄積される場合、当該ルームでのウェブ会議を行うための通信回線の回線容量を確保しておく必要があり、回線を圧迫してしまう。
入室制限をかけていないルームを作成し、サーバ(ウェブ会議システムを提供するサーバ)に記憶しておくこともできるが、入室したユーザ、当該ルームを用いたウェブ会議の数に応じて、当該ルームに紐付く資料が増加するため、ユーザは相当数の資料の中から、開催中の会議で必要とする資料を探さなければならず、手間である。また、機密情報を含む資料をルームに紐付けて記憶した場合、他ユーザに当該資料を閲覧されてしまう可能性があり、セキュリティ面で問題がある。
一方、携帯端末を用いたウェブ会議が行われるシチュエーションとして、例えば、建設現場等の社外の場所において、現場の状況を社内のユーザと共有するため、現場の映像やその他資料を社内端末と共有しながら、社内のユーザとウェブ会議を行う場合がある。1人のユーザが複数の現場を担当している場合、当該ユーザは、例えば、現場Aで社内のユーザAとウェブ会議を行い、現場Bに移動して、社内のユーザBとウェブ会議を行う。仮に、当該現場Aの建設プロジェクトをプロジェクトAとし、現場Bの建設プロジェクトをプロジェクトBとする。
当該現場と社内とのウェブ会議は、例えば各現場の建設物が完成し、プロジェクトA・Bが終了するまで、複数回行われることが想定される。つまり、特定の場所(現場A/現場B)で、ウェブ会議を行うということである。
よって、本発明では、例えば、ウェブ会議の資料・資料を記憶する記憶領域のアドレス情報を当該特定の場所に紐付けてサーバに記憶しておき、当該特定の場所でウェブ会議を行う場合に、当該特定の場所に紐付けて記憶しておいた記憶領域、当該記憶領域に記憶された資料を優先してユーザに提示する。
以下、図面を参照して、本発明の実施形態を詳細に説明する。図1は、本発明の実施形態における、情報処理システムの構成の一例を示す図である。
図1に示す通り、本発明の情報処理システムは、サーバ200と、携帯端末100(携帯端末100A、携帯端末100B、/以下、総称として携帯端末100と記載)とが、ネットワーク101を介して通信可能に接続され、構成されている。
サーバ200は、携帯端末100を用いたウェブ会議を実行するための各種機能を備えている。例えば、ウェブ会議用のルームの作成・記憶、携帯端末100の識別情報と各携帯端末から受信する。また、例えば、会議参加者であるユーザを撮像した画像データであるカメラ画像(会議画像/映像)、及びその対応付け情報の記憶、当該画像データの各クライント端末への送信処理の制御等を行うものである。
携帯端末100は、カメラ機能及びタッチパネル機能(操作部)を備える端末である。また、GPS機能を備え、当該携帯端末自身の位置情報を検出可能である。携帯端末100には、サーバ200と通信してウェブ会議を行うためのウェブ会議アプリケーション(クライアントアプリケーション)が記憶されており、ユーザからの操作に応じて(例えば認証情報の入力・送信指示に応じて)サーバ200へログインし、当該携帯端末100カメラが撮像して取得した映像としての画像データ(会議画像/映像/動的なデータ)を、逐次、サーバ200を介して、同一のルームに入室中(会議に参加中)の他の携帯端末100に送信する。
また、カメラから取得した画像データの他に、当該携帯端末100に記憶されているデータ、例えば写真画像や、PDFファイル等の文書データ等の静的なデータを、サーバ200を介して他の携帯端末100に送信する。以上が図1の、本発明の実施形態における、情報処理システムの構成の一例についての説明である。
次に図2を参照して、本発明の実施形態における、各種装置のハードウェア構成の一例について説明する。図2は、本発明の実施形態における、各種装置のハードウェア構成の一例を示す図である。
図2において、201はCPUで、システムバス204に接続される各デバイスやコントローラを統括的に制御する。また、ROM202あるいは外部メモリ211には、CPU201の制御プログラムであるBIOS(Basic Input / Output System)やオペレーティングシステムプログラム(以下、OS)や、各サーバ或いは各PCの実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。
203はRAMで、CPU201の主メモリ、ワークエリア等として機能する。CPU201は、処理の実行に際して必要なプログラム等をROM202あるいは外部メモリ211からRAM203にロードして、該ロードしたプログラムを実行することで各種動作を実現するものである。
また、205は入力コントローラで、キーボード(KB)209や不図示のマウス等のポインティングデバイス等からの入力を制御する。206はビデオコントローラで、CRTディスプレイ(CRT)210等の表示器への表示を制御する。なお、図2では、CRT210と記載しているが、表示器はCRTだけでなく、液晶ディスプレイ等の他の表示器であってもよい。これらは必要に応じて管理者が使用するものである。
また、本発明の実施形態において、携帯端末100のCRT210は、タッチパネル機能を有するものとする。CRT210がタッチパネル機能を有する場合、当該CRT210は入力装置としても機能し、入力コントローラにタッチパネル機能で検出した(ディスプレイで受け付けた)タッチ操作の情報を入力情報として伝達するものとする。つまり、入力コントローラ205は、CRT210からの入力制御を行う。
207はメモリコントローラで、ブートプログラム,各種のアプリケーション,フォントデータ,ユーザファイル,編集ファイル,各種データ等を記憶するハードディスク(HD)や、フレキシブルディスク(FD)、或いはPCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)メモリ等の外部メモリ211へのアクセスを制御する。
208は通信I/Fコントローラで、ネットワーク(例えば、図1に示したネットワーク101)を介して外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いた通信等が可能である。
なお、CPU201は、例えばRAM203内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、CRT210上での表示を可能としている。また、CPU201は、CRT210上の不図示のマウスカーソル等でのユーザ指示を可能とする。
本発明を実現するための後述する各種プログラムは、外部メモリ211に記録されており、必要に応じてRAM203にロードされることによりCPU201によって実行されるものである。さらに、上記プログラムの実行時に用いられる定義ファイル及び各種情報テーブル等も、外部メモリ211に格納されており、これらについての詳細な説明も後述する。以上が図2の、本発明の実施形態における、各種装置のハードウェア構成の一例についての説明である。
次に図3を参照して、本発明の実施形態における、各種装置の機能構成の一例について説明する。図3は、本発明の実施形態における、各種装置の機能構成の一例を示す図である。
位置情報送信部301は、携帯端末100のGPS機能で特定した、携帯端末100の現在位置の情報をサーバ200に送信する送信部(送信機能)である。BOX生成指示受付部302は、サーバ200において生成されるBOXの生成指示を受け付ける指示受付部である。
BOXとは、ウェブ会議において使用するファイル(資料)を格納する領域である。BOXは、位置情報と対応付けられてサーバ200に生成・記憶され、携帯端末100が、当該BOXに対応する位置にある場合にのみ、当該BOXを開くことができる。
ファイルアップロード処理部303は、前記BOXにファイルをアップロードする(BOXにファイルを保存させるべく、ファイルをサーバ200に送信する)処理部である。BOX情報受信部304は、携帯端末100が送信した携帯端末100の位置情報に基づいたBOX情報を、サーバ200より受信する受信部である。BOX情報表示部305は、受信したBOX情報に応じて、BOXの選択画面、BOXに記憶されたファイルを表示する処理部である。
ユーザ情報記憶部311は、携帯端末100のユーザがサーバ200にログインするための認証情報(ユーザ情報/ユーザID及びパスワード)を記憶する記憶部である。また、当該ユーザの所属する組織(本実施形態においては、プロジェクト)をユーザIDと対応付けて記憶する記憶部である。
BOX生成部312は、BOXを生成する生成部である。BOX位置記憶部は、当該BOXに対応する位置情報及びBOXを記憶する記憶部である。当該BOXに対応する位置情報とは、当該BOXを開くことのできるエリア(GPS座標)である。当該エリア内にいる場合にのみ、携帯端末100は、当該BOXを取得して開くことができる。
ファイル記憶部313は、当該BOXにアップロードされたファイルを記憶する記憶部である。位置情報取得部314は、携帯端末100がBOXの情報をサーバ200に要求するにあたり、サーバ200に送信した、携帯端末100の現在位置を取得する取得部である。
BOX特定部315は、位置情報取得部314で取得した携帯端末100の現在位置を用いて、携帯端末100に送信すべきBOXの情報を特定する特定部である。例えば、位置情報取得部314で取得した携帯端末100の現在位置を含む位置情報(エリア)と対応したBOXの情報を特定する。
BOX情報送信部316は、BOX特定部315で特定したBOXに係る情報(例えばBOXの名称、BOX内のファイルの情報)を携帯端末100に送信する送信部である。以上が図3の、本発明の実施形態における、各種装置の機能構成の一例についての説明である。
[第1の実施形態]
図4を参照して、本発明の実施形態における、BOX生成処理の流れについて説明する。図4は、本発明の実施形態における、BOX生成処理の流れを示すフローチャートである。
携帯端末100のCPU201は、ユーザからの指示を受け付け、携帯端末100の外部メモリに記憶されたウェブ会議アプリケーション(クライアントアプリケーション)を起動する。以下、図4において携帯端末100の実行する処理は、携帯端末100のCPU201が、当該クライアントアプリケーションの各機能を用いて実行するものとする。また、サーバ200の実行する処理は、サーバ200のCPU201が、サーバ200に記憶されたウェブ会議アプリケーション(サーバアプリケーション)の各機能を用いて実行するものとする。
携帯端末100のCPU201は、サーバ200にログインするためのログイン画面を表示画面に表示する(ステップS401)。例えば、図9のログイン画面900のような画面を表示する。
ここで図9を参照して、本発明の実施形態におけるログイン画面、及びメインメニュー画面の構成の一例について説明する。図9は、本発明の実施形態における、画面構成及び画面遷移の一例を示す図である。
ログイン画面900は、ユーザID入力受付部901、パスワード入力受付部902、「ログイン」ボタン903等から構成される。
ユーザID入力受付部901は、ユーザの識別情報であるユーザIDの入力を受け付ける入力受付部である。パスワード入力受付部902は、前記ユーザIDに対応するパスワードの入力を受け付ける入力受付部である。「ログイン」ボタン903は、ユーザID入力受付部901とパスワード入力受付部902にそれぞれ入力されたユーザID・パスワードを用いて、サーバ200(ウェブ会議システム)にログインすべく、当該ユーザID・パスワードをサーバ200に送信するためのボタンである。
メインメニュー画面910は、「ログイン」ボタン903の押下によるログイン処理が成功した場合に、携帯端末100のCPU201が、表示画面に表示するメニュー画面である。メインメニュー画面910は、ログインユーザ名表示部911、入室ボタン912、入室ボタン913、「BOX生成」ボタン914等から構成される。
ログインユーザ名表示部911は、ログインに成功したユーザIDに対応する表示名(図7の表示名703)である。例えば、ログインユーザのユーザ名である。
入室ボタン912、入室ボタン913は、入室可能なルームを示す、各ルームに入室するためのボタンである。携帯端末100のCPU201は、当該ボタンの押下指示を受け付けることで、当該ボタンに対応するルームへの入室要求をサーバ200に送信する。当該入室の処理については、図6の説明で後述する。
「BOX生成」ボタン914は、ウェブ会議で利用する(アクセスする)ファイルの記憶領域であるBOXを作成するためのボタンである。以上が図9の説明である。
図4の説明に戻る。携帯端末100のCPU201は、ログイン画面900で「ログイン」ボタン903の押下を受け付け、ステップS402でログイン処理を実行する。
ここでいうログイン処理とは、ログイン画面900で入力を受け付けたユーザIDとパスワードをサーバ200に送信し、当該ユーザIDとパスワードを受信したサーバ200のCPU201が(ユーザ情報取得手段に該当)、当該ユーザID及びパスワードの組み合わせがサーバ200の外部メモリに記憶されているユーザ情報700(図7)に記憶されているか判定し、当該組み合わせの情報がユーザ情報700に記憶されている場合に、当該ユーザIDとパスワードに対応する表示名703、当該ユーザIDに対応するルームID801を特定して、ログインの成功を示す情報と共に携帯端末100に送信し、携帯端末100がこれを受信する処理である。
ここで図7及び図8を参照して、本発明の実施形態における、各種データテーブルの構成の一例について説明する。図7及び図8は、本発明の実施形態における、各種データテーブルの構成の一例を示す図である。
ユーザ情報700、プロジェクト情報710、BOX情報720、ルーム情報800、入室情報810は、サーバ200の外部メモリに記憶されているものとする。画面情報820は、携帯端末100の外部メモリに記憶されているものとする。
ユーザ情報700は、ユーザID701、パスワード702、表示名703等から構成される。ユーザ情報700は、予め、サーバ200の外部メモリに記憶されている。ユーザID701は、ユーザを一意に識別する識別情報である。パスワード702は、ユーザID701に対応する、ログイン処理に用いるパスワードである。表示名703は、例えばユーザID701に対応するユーザ名であり、メインメニュー画面等、ログイン後の携帯端末100の画面に表示されるログインユーザ名を示す表示名である。
プロジェクト情報710は、プロジェクトID711、ユーザID712等から構成される。プロジェクト情報710は、予め、サーバ200の外部メモリに記憶されている。プロジェクトID711は、ユーザID712に示すユーザID(ユーザ)が所属する組織であるプロジェクト(組織)の識別情報である。ユーザID712は、プロジェクトID711の示すプロジェクトに所属するユーザのユーザIDである。
BOX情報720は、BOX ID721、BOX URL722、プロジェクトID723、座標724、距離範囲725等から構成される。BOX情報720は、図4の説明で後述するBOXの生成処理で生成され、サーバ200の外部メモリに記憶される。以下、BOX情報という場合、当該BOX情報720のデータを示すものとする。
BOX ID721は、BOXを識別するための識別情報である。BOX URL722は、当該BOXの存在するアドレス情報である。プロジェクトID723は、当該BOXに対応するプロジェクトIDである。つまり、当該BOX ID721の示すBOXが、いずれのプロジェクト、及び、当該プロジェクトに所属するユーザのユーザIDに紐付いているか(対応付いているか)を示す。
座標724及び距離範囲725は、当該BOX ID721の示すBOXに対応するGPS座標(エリア/範囲)を示す。ここでは、座標724の示すGPS座標(中心位置)から半径が距離範囲725以内のエリアを、BOXに対応するエリア(BOXに対応する位置/BOXに対応する位置の集合)であるものとする(位置情報記憶手段に該当)。
ルーム情報800は、ルームID801、入室可能ユーザ802等から構成される。ルーム情報800は、不図示のルーム作成処理により、サーバ200のCPU201によって予め作成され、サーバ200の外部メモリに記憶されているものとする。ルームID801は、ウェブ会議に用いるルームを識別する識別情報である。入室可能ユーザ802は、当該ルームID801の示すルームに入室可能なユーザのユーザIDである。
メインメニュー画面910には、ログインユーザのユーザIDが入室可能ユーザ802に含まれているルーム(ルームID801のルーム)への入室ボタンが表示される。当該ルームID及びルームIDの示すルームは、当該ルームへの入室者が1以上から0となった場合に、サーバ200のCPU201によって削除されるものとする。
入室情報810は、ルームID811、入室ユーザID812、会議画像813等から構成される。入室情報810は、ルーム情報800が作成された場合に、サーバ200のCPU201によって作成され、サーバ200の外部メモリに記憶される。
ルームID811は、ルームの識別情報である。入室ユーザID812は、当該ルームに入室しているユーザ(入室者/入室ユーザ)のユーザIDである。会議画像813は、当該入室者のユーザIDの送信元(ログイン要求元)の端末(ここでは携帯端末100)より受信した画像データ(会議画像)である。当該会議画像は、ウェブ会議において標示する各ユーザの携帯端末100(クライアント装置)によって撮影された動画(動画像)の一部である。端末識別情報814は、会議画像813に格納される会議画像の送信元の端末の識別情報(例えばIPアドレス)である。
サーバ200のCPU201は、例えば、携帯端末100より、ログインユーザのユーザIDと共に順次送信されてくる当該会議画像を受信すると、当該受信したユーザIDをユーザID812に持つ当該会議画像813に一時記憶する。そして、順次、当該会議画像813に対応するルーム(ルームID811示すルーム)に入室中の、ユーザの携帯端末100に送信する。
これにより、携帯端末100は、同じルームに入室中の他のユーザの会議画像を取得し、表示画面(図12及び図13の各画面)に表示することができる。
画面情報820は、画面ID821、ユーザID822、会議画像823等から構成される。画面情報820は、携帯端末100の外部メモリに記憶されている。画面ID821は、携帯端末100の表示画面(例えば図12、図13の各画面)における、会議画像を表示するための表示領域の識別情報である。
ユーザID822は、各画面IDの示す画面(会議画像の表示領域)に表示されている会議画像823の会議画像に対応するユーザIDである。つまり、画面IDの示す画面にいずれのユーザの会議画像が表示されているかを示す。
会議画像823は、各画面IDの示す画面に出力する、携帯端末100で入室中のルームに入室しているユーザの会議画像である。携帯端末100のCPU201は、サーバ200から順次受信する会議画像を、会議画像823に一時的に記憶し、動画像として携帯端末100の表示画面(表示画面上の、各画面ID821の示す会議画像表示領域)に出力し、出力した画像から順に破棄する。これにより、携帯端末100は、同じルームに入室中の他のユーザの会議画像を取得し、表示画面(図12及び図13の各画面)に表示することができる。
画面ID821、ユーザID822及び会議画像823は、携帯端末100のユーザ(携帯端末100でサーバ200にログインしたユーザ)の入室中のルームにおける、入室者の増減に応じて、追加、削除される。
つまり、新たなユーザの入室通知(新たに入室したユーザのユーザID及び会議画像)をサーバ200から受信した場合は、画面ID821、ユーザID822及び会議画像823を追加して当該ユーザID及び会議画像を格納し、サーバからユーザの退室通知(退室したユーザのユーザID)を受け付けた場合には、当該退室したユーザのユーザIDに対応する画面ID821、ユーザID822及び会議画像823を削除して、当該削除した項以下の画面ID821、ユーザID822及び会議画像823の値を繰り上げる処理を行う。以上が図7及び図8の説明である。
図4の説明に戻る。携帯端末100のCPU201は、ログイン処理を実行してログイン成功の通知、及び表示名703、当該ユーザのユーザIDに対応するプロジェクトID711、ルームID801をサーバ200から受信する(ステップS402)。受信した各情報は携帯端末100の外部メモリに記憶する。
そして、当該受信した表示名をログインユーザ名表示部911に配置し、ルームIDを示す入室ボタンを配置した、メインメニュー画面910を生成して、表示画面に表示する(ステップS403)。例えば、ルーム情報800によれば、ユーザA(ユーザID=AX1111)の場合、入室可能なルームが2つ(roomXとroomYが)あるため、入室ボタンを912と913の2つ配置する。
携帯端末100のCPU201は、ユーザから指示を受け付け、受け付けた指示がルームへの入室指示(入室ボタンのいずれかの押下指示)か、BOX生成指示(「BOX生成」ボタン914の押下指示)かを判定する(ステップS404)。
受け付けた指示が入室指示であると判定した場合、処理をステップS412に移行し、入室処理(ステップS412/図6の説明で後述)、及びBOXの表示処理(ステップS413/図5の説明で後述)を実行する。
受け付けた指示がBOX生成指示であると判定した場合、処理をステップS405に移行し、BOX生成画面を表示する(ステップS405)。BOX生成画面とは、例えば図10のBOX生成画面1000のような画面である。
ここで図10を参照して、本発明の実施形態における、BOX生成画面の構成の一例について説明する。図10は、本発明の実施形態における、画面構成及び画面遷移の一例を示す図である。
BOX生成画面1000は、プロジェクト選択受付部1001、マップ表示部1002、中心位置1003、距離範囲指定受付部1004、距離範囲表示部1005、「キャンセル」ボタン1006、「決定」ボタン1007等から構成される。
プロジェクト選択受付部1001は、ログイン処理に際して受信した、ログインユーザが所属するプロジェクトが表示される表示部であり、生成するBOXに対応付けるプロジェクトの選択を受け付ける選択受付部である。
マップ表示部1002は、BOXに位置情報を対応付けるために、当該位置情報(中心位置1003、距離範囲指定受付部1004から特定されるエリア)の指定を受け付けるためのマップ(マップ情報)を表示する表示領域である。
当該マップの情報は、当該BOX生成画面1000に際し、サーバ200より取得して、携帯端末100のCPU201が、当該マップ表示部1002に配置するものとする。
例えば、携帯端末100のCPU201が、当該BOX生成画面1000の表示指示(「BOX生成」ボタン914の押下指示)を受け付けると、携帯端末100のCPU201がサーバ200に、当該携帯端末100の位置情報を含むマップ情報の要求を送信する。サーバ200のCPU201は当該要求を受信して、当該要求に従って、当該要求に含まれる携帯端末100の現在地を中心とした所定の範囲のマップ情報を、マップ情報を提供する外部サーバより取得する。サーバ200のCPU201は、当該取得したマップ情報を携帯端末100に送信し、携帯端末100のCPUがこれを受信して、BOX生成画面1000を生成し、表示画面に表示するものである。
携帯端末100のCPU201は、マップに対する、ユーザからのスワイプ操作を受け付けることで、スワイプ方向に応じたマップ情報をサーバ200に要求して、サーバ200より新たなマップ情報を受信し、表示を更新するものとする。当該スワイプ操作(フリック、スライド、ピンチイン、ピンチアウト)によるマップの表示更新は公知技術であるため、ここでは説明を割愛する。
中心位置1003は、BOXに対応付ける位置情報(エリア)の中心位置である。当該中心位置1003は、例えば、ユーザからのマップに対するシングルタッチ操作がされた場合、当該タッチがされた位置に変更される。距離範囲指定受付部1004は、マップに重畳された円形のオブジェクト(円の画像)であり、これから生成するBOXに対応付ける位置情報(エリア)の指定を受け付ける指定受付部である。「決定」ボタン1007の押下を受け付けた時点で、当該円形のオブジェクトで囲われているエリアをBOXに対応する位置情報としてサーバ200に記憶させる。
携帯端末100のCPU201は、当該円形のオブジェクトがタッチされた状態で、画面上で指を上下左右にスライドする操作を受け付けることで、中心位置1003を中心として、当該円形のオブジェクトが拡大・縮小する処理を行う。
距離範囲表示部1005は、中心位置1003から、距離範囲指定受付部1004(円)までの距離を表示する表示部である。円形のオブジェクトが拡大・縮小される都度、当該マップ情報に含まれる距離の情報を用いて、携帯端末100のCPU201が当該距離範囲表示部1005に表示する距離の情報を算出して、表示・更新する。
「キャンセル」ボタン1006は、BOXの生成をキャンセルして、画面をメインメニュー画面910に戻すためのボタンである。「決定」ボタン1007は、BOXの生成指示受付部であり、当該プロジェクト選択受付部1001で選択を受け付けたプロジェクトID、中心位置1003の座標、距離範囲表示部1005に示す距離の値を、ユーザIDと共にサーバ200に送信するためのボタンである。
図4の説明に戻る。携帯端末100のCPU201は、BOX生成画面1000のプロジェクト選択受付部1001でプロジェクトの選択指示を受け付け(ステップS406)、距離範囲指定受付部1004で位置情報(円形オブジェクトの囲うエリア)の入力指示を受け付けて(ステップS407)、プロジェクト選択受付部1001で選択を受け付けたプロジェクトID、中心位置1003の座標、距離範囲表示部1005に示す距離の値を、ユーザIDと共にサーバ200に送信する(ステップS408)。
サーバ200のCPU201は、ステップS408で送信された各種情報を受信し(ステップS409)、サーバ200の外部メモリの所定の領域にBOX(例えば、フォルダ)を生成する(ステップS410)。つまり、
サーバ200のCPU201は、BOX情報720に新規のデータ列を追加して、BOX ID721に新規の値を挿入し、BOXのURLをBOX URLに挿入し、ステップS409で受信したプロジェクトIDをプロジェクトID723に挿入し、受信した中心位置1003の座標を座標724に挿入し、受信した距離範囲表示部1005の値を距離範囲725に挿入する。
生成するBOXの名称は、例えば、ステップS409で受信したプロジェクトIDであるものとする。
また、携帯端末100のCPU201は、ステップS408でBOXの生成要求を送信後、当該送信要求に応じてサーバ200で新たに生成されるBOXに、ファイルをアップロードするためのファイルアップロード画面(例えば、図10の、ファイルアップロード画面1010)を表示する(ステップS414)。
ここで図10を参照して、本発明の実施形態における、ファイルアップロード画面、アップロード完了通知画面の構成の一例について説明する。
ファイルアップロード画面は、「参照」ボタン1011、ファイル名表示部1012、「アップロード」ボタン1013等から構成される。「参照」ボタン1011は、アップロードするファイルの指定を受け付けるために、携帯端末に記憶されているファイルを表示画面に表示するためのボタンである。
例えば、携帯端末100のクライアントアプリケーション(ウェブ会議アプリケーション)が、携帯端末100に別途記憶されている画像管理アプリケーション(携帯端末100で撮影した画像が記憶・表示・選択できるアプリケーション)に、当該画像管理アプリケーションで管理している画像の一覧画面の要求を行い、当該要求を受けたる画像管理アプリケーションは画像の一覧を表示し、当該画像の選択を受け付けることで、選択を受け付けた画像をクライアントアプリケーション(ウェブ会議アプリケーション)に送信する。クライアントアプリケーションがこれを受信して、アップロード対象ファイルとして特定し、当該画像のファイル名を、ファイル名表示部1012に挿入したファイルアップロード画面を表示画面に表示する。
尚、ここでは画像ファイルをアップロード対象のファイルの例としてあげたが、アップロード対象のファイルは画像ファイルに限るものではない。例えば、文書ファイルや、音声ファイルでもよい。
「アップロード」ボタン1013は、ファイル名表示部1012に表示されたファイル(アップロード対象として選択されたファイル)を、サーバ200にアップロード(送信)するためのボタンである。当該「アップロード」ボタン1013の押下を受け付け、ファイルのアップロードを行い、サーバ200からアップロード完了の通知を受け付けると、携帯端末100は、アップロード完了通知画面1020のような通知画面を表示画面に表示する。その後、所定の時間の経過、又はアップロード完了通知画面1020の「戻る」ボタンの押下を受け付けることで、表示画面をメインメニュー画面910に戻す(つまり、処理をステップS403に戻す)。以上が図10の説明である。
図4の説明に戻る。携帯端末100のCPU201は、ファイルアップロード画面1010において、サーバ200にアップロードするファイルの選択を受け付け、アップロードの指示を受け付けと(「アップロード」ボタン1013の押下を受け付けると)、当該指示に応じて、サーバ200にファイルをアップロードする(ステップS415)サーバ200のCPU201はステップS415でアップロードされた(送信された)ファイルを受信し、ステップS410で生成したBOX(BOX情報720におけるBOX URL722に示すアドレス)に記憶する(ステップS411)。以上が図4の説明である。
次に図6を参照して、本発明の実施形態における、ルームへの入室処理の流れについて説明する。図6は、本発明の実施形態における、ルームへの入室処理の流れを示すフローチャートである。
以下、図6において携帯端末100の実行する処理は、携帯端末100のCPU201が、携帯端末100に記憶されたクライアントアプリケーション(ウェブ会議アプリケーション)の各機能を用いて実行するものとする。また、サーバ200の実行する処理は、サーバ200のCPU201が、サーバ200に記憶されたサーバアプリケーション(ウェブ会議アプリケーション)の各機能を用いて実行するものとする。
携帯端末100のCPU201は、メインメニュー画面910で押下を受け付けた、入室ボタンに対応するルームへの入室要求をサーバ200に送信する(ステップS601)。当該入室要求には、押下を受け付けた入室ボタンのルームIDと、ログインユーザのユーザIDが含まれる。
サーバ200のCPU201は、当該入室要求を受信し、入室処理を実行する(ステップS602)。つまり、当該要求に含まれるルームIDをルームID811に備える入室情報(図8)を特定し、当該ルームのIDに対応する入室ユーザID812に、当該入室要求に含まれるユーザIDを挿入する。
その後、当該入室処理の結果を携帯端末100に送信し(ステップS603)、携帯端末100のCPU201は、当該入室結果の情報を受信する(ステップS604)。そして、カメラ装置を起動して、撮像処理を実行する(ステップS605)。
携帯端末100のCPU201は、撮像処理で撮像することにより取得したカメラ画像(撮像画像/会議画像)をサーバ200に順次送信し(ステップS606)、サーバ200のCPU201は、当該カメラ画像(会議画像)を受信して(ステップS607/会議画像取得手段に該当)、当該カメラ画像(会議画像)を、ログインユーザのユーザIDを入室ユーザID812に有する入室情報の会議画像813に順次記憶する(S608)。
尚、会議画像813に記憶される会議画像は、所定のデータ量(データ容量/フレーム数)のみであり、順次、同ルームに入室中のユーザの携帯端末100に送信する。
サーバ200のCPU201は、ログインユーザが入室中のルームと同じルームに入室中の他のユーザを、入室情報810のルームID811、入室ユーザID812を参照して特定し、当該他のユーザのユーザID、及び、当該他のユーザのユーザIDに対応する会議画像813を、携帯端末100に送信する(ステップS609/会議画像送信手段に該当)。
この際、不図示の、当該ルームへのユーザの入室順を、共に携帯端末100に送信する。当該ルームへのユーザの入室順の情報は、当該ルームにユーザが入室する毎にサーバ200のCPU201が生成し、外部メモリに記憶しているものとする。
携帯端末100のCPU201は、当該他ユーザの会議画像を受信し(ステップS610)、自端末のユーザを含めた、同ルームに入室中のユーザ数分、当該ユーザに対応する会議画像の画面(会議画像表示領域)のIDである画面ID821を生成して(ステップS611)、当該画面ID821と、当該携帯端末100のユーザが入室中のルームと同じルームに入室中の、他ユーザの各ユーザID、及び会議画像を対応付けて記憶する(ステップS612)。
例えば、図8のユーザID822に当該他のユーザのユーザIDを挿入し、会議画像823に各ユーザIDに対応する会議画像を記憶する。ここでは、図11に示す会議画面1100の、親画面1101、子画面1102、子画面1103、子画面1104、子画面1105の順に画面IDを生成して記憶するものとする。
尚、roomXにおいては、現在ルームに入室しているユーザ数が3名のため、子画面1104、子画面1105は生成されないものとする。会議画面1100については図13の説明で後述する。また、画面ID(数値)は、生成順が速いほど小さく、生成順が後になるほど大きくなるものとする。携帯端末100のCPU201は、画面IDを小さい順に取得して、ステップS610で受信したユーザの入室順に、各ユーザIDを画面IDに対応付けて記憶するものとする。
携帯端末100のCPU201は、各画面IDの示す画面(会議画像表示領域=親画面及び小画面)に、各画面IDに対応する会議画像を配置した、会議画面1100を生成して(ステップS613)、表示画面に表示する(ステップS614)。以上が図6の説明である。
ここで図11を参照して、本発明の実施形態における、会議画面の画面構成の一例について説明する。図11は、本発明の実施形態における、会議画面の画面構成の一例を示す図である。
会議画面1100は、親画面1101、子画面1102、子画面1103、子画面1104、子画面1105、「BOX表示」ボタン1106等から構成される。
親画面1101は、会議画像又は資料を拡大表示する、当該会議画面1100における主たる画面(メイン画面)である。子画面1102、子画面1103、子画面1104、子画面1105は、各ユーザの会議画像を縮小表示する副画面(サブ画面)である。本発明の実施形態においては、親画面及び各子画面の上部に、各画面の画面IDを表示している。
また、子画面1102〜1105に、BOXから取得したファイルイメージを縮小表示させることが可能である。当該ファイルイメージの縮小表示の方法については後述する。
「BOX表示」ボタン1106は、携帯端末100の位置情報に対応するBOX、BOX内に記憶されたファイルを表示画面表示するためのボタンである。
また、当該会議画面1100を表示している携帯端末100のユーザ(当該携帯端末100をユーザIDの送信元とするログインユーザ)の会議画像が表示されている画面の押下指示を受け付けた場合、携帯端末100のCPU201は、サーバ200に対して当該ユーザの退室要求を送信するものとする。以上が図11の説明である。
次に図5を参照して、本発明の実施形態における、BOX表示処理の流れについて説明する。図5は、本発明の実施形態における、BOX表示処理の流れを示すフローチャートである。
以下、図5において携帯端末100の実行する処理は、携帯端末100のCPU201が、携帯端末100に記憶されたクライアントアプリケーション(ウェブ会議アプリケーション)の各機能を用いて実行するものとする。また、サーバ200の実行する処理は、サーバ200のCPU201が、サーバ200に記憶されたサーバアプリケーション(ウェブ会議アプリケーション)の各機能を用いて実行するものとする。
携帯端末100のCPU201は、会議画面1100において、BOXの表示指示を受け付ける(ステップS501)。当該BOXの表示指示とは、例えば、「BOX表示」ボタン1106の押下指示である。
携帯端末100のCPU201は、当該携帯端末100の備える位置検出機能(GPS機能)を用いて、当該携帯端末100の現在位置の位置情報(現在地/現在座標)を検出し(ステップS502)、当該位置情報と、ログインユーザのユーザIDを含むBOX情報の取得要求を、サーバ200に送信する(ステップS503)。
サーバ200のCPU201は、当該BOX情報の取得要求を受信し(ステップS504/ユーザ情報取得手段に該当)、受信したBOX情報の取得要求に含まれるユーザIDのユーザが所属するプロジェクトのプロジェクトID(受信した取得要求に含まれるユーザIDをユーザID712に有するプロジェクトID711)を特定する(ステップS505)。
そして、ステップS506〜S508の処理を、ステップS505で特定したBOX全てに対して実行する。サーバ200のCPU201は、ステップS505で特定したプロジェクトで、当該ステップS506で未取得のBOX情報720を1つ取得し(ステップS506)、ステップS504で受信したBOX情報の取得要求に含まれる前記携帯端末100の現在位置を含むエリアのBOX情報か判定する(ステップS507)。
ここでいうエリアとは、座標724と距離範囲725から特定される、座標724の地点から半径が距離範囲725以内の範囲(位置情報)である。つまり、携帯端末100の現在位置に対応するBOXか判定する。
サーバ200のCPU201は、携帯端末100の位置情報に対応するBOXであると判定した場合は(ステップS507でYES)、当該携帯端末100の位置情報に対応するBOXのBOX ID721を不図示の一時記憶リストに記憶する(ステップS508)。当該リストはサーバ200の外部目メモリに記憶される。
携帯端末100の位置情報に対応するBOXでないと判定した場合は(ステップS507でNO)、ステップS508の処理を行わず、処理をステップS506に移行する。ログインユーザのユーザIDに対応する全てのプロジェクトのBOXに対してステップS506〜508の処理を適用すると、処理をステップS509に移行する。
サーバ200のCPU201は、当該一時リストに記憶したBOX情報が1つ以上あるか判定する(ステップS510)。つまり、携帯端末100の現在地近くの位置に対応付けられたBOX情報であって、当該BOX情報の要求元のユーザが所属するプロジェクトのBOXがあるか判定する。
サーバ200のCPU201は、当該一時リストに記憶したBOX情報がないと判定した場合(ステップS509でNO)、処理を終了する。当該一時リストに記憶したBOX情報が1つ以上あると判定した場合(ステップS509でYES)、処理をステップS510に移行し、当該一時リストに記憶したBOX情報が複数あるか判定する(ステップS510)。つまり、携帯端末100の現在地近くの位置に対応付けられたBOX情報であって、当該BOX情報の要求元のユーザが所属するプロジェクトのBOXが複数あるか判定する。
一時リストに記憶したBOX情報が1つであると判定した場合(ステップS510でNO)、処理をステップS516に移行して、1つのBOX情報を取得する(ステップS516)。そして、当該BOX情報の示すBOXに格納されているファイルのファイル名、ファイルを特定し、先頭ページのサムネイル画像とBOX情報と共に携帯端末100に送信する(ステップS517/表示制御手段に該当)。当該BOXに格納されているファイルとは、BOX情報のBOX URL722に格納されているファイルである。
一時リストに記憶したBOX情報が複数あると判定した場合(ステップS510でYES)、処理をステップS511に移行し、当該BOX情報の取得要求の要求元のユーザ(ステップS504で受信したBOX情報の取得要求の送信元の携帯端末100が実行したログイン処理に用いられたユーザIDのユーザ)が入室中のルームのルームIDを特定して、当該ルームIDの示すルームに入室中のユーザの所属プロジェクト(プロジェクトID711)を特定し(ステップS511)、当該ルームに入室中のユーザの所属プロジェクトで、一時リストに記憶されたBOX情報720のプロジェクトID723と同一(共通)のプロジェクトが存在するか判定する(ステップS512)。
つまり、当該携帯端末100の位置情報に対応する、携帯端末100からのログインユーザのプロジェクトIDを備えるBOXと、同一(共通)のプロジェクトIDに対応する(プロジェクトに所属する)ユーザが、当該ログインユーザの入室中のルームに存在するか判定する。
サーバ200のCPU201は、共通のプロジェクトが存在しないと判定した場合(ステップS512でNO)、処理をステップS515に移行する。
共通のプロジェクトが存在すると判定した場合(ステップS512でYES)、当該共通のプロジェクトのうち、当該ルーム内のユーザ数が最も多い(同一のプロジェクトIDを持つユーザIDの数が最も多い)プロジェクトのプロジェクトIDを、プロジェクトID723に備えるBOX情報を特定する。つまり、ルーム内のユーザが最も多く所属しているプロジェクトのBOXを特定する(ステップS513)。そして、ルーム内のユーザが最も多く所属しているプロジェクトのBOXが、複数あるか判定する(ステップS514)。
ルーム内のユーザが最も多く所属しているプロジェクトのBOXが、1つであると判定した場合(ステップS514でNO)、処理をステップS516に移行する。ルーム内のユーザが最も多く所属しているプロジェクトのBOXが、複数あると判定した場合(ステップS514でYES)、当該複数のBOX情報を取得して、携帯端末100に送信する(ステップS515/表示制御手段に該当)。携帯端末100のCPU201は、ステップS515で送信された複数のBOX情報、又は、ステップS517で送信された1つのBOX情報及びファイル名、ファイルのサムネイル画像を受信し(ステップS518)、携帯端末100の外部メモリに記憶して、当該サムネイル画像と、当該受信した複数のBOX情報又は1つのBOX情報及びファイル名に基づいて、BOX情報の表示処理を行う(ステップS519)。当該BOX情報の表示処理の詳細は図14の説明で後述する。以上が図5の説明である。
次に図14を参照して、本発明の実施形態における、BOX表示処理の詳細について説明する。図14は、本発明の実施形態における、BOX表示処理の詳細を示すフローチャートである。
以下、図14において携帯端末100の実行する処理は、携帯端末100のCPU201が、携帯端末100に記憶されたクライアントアプリケーション(ウェブ会議アプリケーション)の各機能を用いて実行するものとする。また、サーバ200の実行する処理は、サーバ200のCPU201が、サーバ200に記憶されたサーバアプリケーション(ウェブ会議アプリケーション)の各機能を用いて実行するものとする。
携帯端末100のCPU201は、サーバ200から受信したBOX情報が複数か判定する(ステップS1401)。サーバ200から受信したBOX情報が1つの場合(ステップS1401でNO)、当該BOX情報の示すBOXの内容(BOX内のファイル一覧/例えば、図12の会議画面1220)を表示すべく、処理をステップS1411に移行する。
サーバ200から受信したBOX情報が複数の場合(ステップS1401でYES)、携帯端末100のCPU201は、当該複数のBOX情報の示す、複数のBOXボタン(BOXの内容を表示するためのボタン/図12の1211、1212)を含む会議画面(例えば、図12の会議画面1210)を生成して、表示画面に表示する(ステップS1402)。
尚、ステップS1411で会議画面1220が表示されると、ステップS1403の前に処理が移行するため、後述するステップS1403の指示受付処理は、会議画面1210又は会議画面1220、又は後述する会議画面1300(図13)において行われる。
ここで図12を参照して、本発明の実施形態における、BOX情報検索画面、及びBOX情報を含む会議画面の構成の一例について説明する。図12は、本発明の実施形態における、画面構成及び画面遷移の一例を示す図である。
会議画面1200は、図5のステップS502〜S516までの間、携帯端末100の画面に表示される。当該会議画面1200は、会議画面1300に「BOX検索中」ダイアログを表示した画面である。
会議画面1210は、図5のステップS518で、サーバ200から受信したBOX情報が複数あった場合に、サーバ200より受信したBOX情報に基づいて、携帯端末100のCPU201により生成され、ステップS519で表示される画面である。
BOXボタン1211、BOXボタン1212、「新規作成」ボタン1213を備えて構成されている。BOXボタン1211、BOXボタン1212は、それぞれ、携帯端末100がサーバ200から(ステップS516で)取得したBOX情報に対応するボタンである。ボタンには、BOXの名称が表示される。
当該BOXボタンの押下指示を受け付けた場合、携帯端末100のCPU201は、当該BOXのアドレス情報に従って、当該BOXに記憶されているファイル名をサーバ200に要求して取得し、会議画面1220のようにBOXの内容(BOXに格納されているファイルを示すアイコン)を表示する。
「新規作成」ボタン1203は、BOXを新規作成するためのボタンであり、当該ボタンが押下された場合、携帯端末100のCPU201は、処理を図4のステップS405に移行する。尚、当該「新規作成」ボタン1213の押下によりステップS405に処理を移行した場合は、図10のBOX生成画面1000で「キャンセル」ボタン1006の押下を受け付ける、また、アップロード完了通知画面1020で「戻る」ボタンが押下されると、画面を会議画面1210に戻すものとする。
会議画面1220は、図5のステップS518で、サーバ200から受信したBOX情報が1つだった場合、又は会議画面1210において、BOXボタン(1211又は1212)が押下された場合に、携帯端末100のCPU201により生成され、ステップS519で表示される画面である。
会議画面1220は、ファイルアイコン1221、ファイルアイコン1222、ファイルアイコン1223、「新規アップロード」ボタン1224、BOXボタン1225等を備えて構成されている。ファイルアイコン1221、ファイルアイコン1222、ファイルアイコン1223は、当該表示中のBOXにアップロードされて記憶されているファイル(資料)を開くためのアイコンであり、ファイルのサムネイル画像である。携帯端末100のCPU201は、当該ファイルアイコンに対するタップ操作(例えばダブルタップ操作)を受け付けることで、当該ファイルの情報をサーバから取得して(開いて)表示画面に表示する(例えば、図13の会議画面1300を表示する)。
「新規アップロード」ボタン1224は、当該BOXに新規にファイルをアップロードするためのボタンである。携帯端末100のCPU201は、当該「新規アップロード」ボタン1224の押下を受け付けることで、処理を図4のステップS414に移行する。尚、当該「新規アップロード」ボタン1224の押下によりステップS414に処理を移行した場合は、アップロード完了通知画面1020で「戻る」ボタンが押下されると、画面を会議画面1220に戻すものとする。
BOXボタン1225の押下指示を受け付けると、携帯端末100のCPU201は、当該BOXを非表示にする処理を行う。例えば、表示画面を、BOXボタン1212を除いた会議画面1210に移行する。BOX表示領域1226は、押下されたBOXボタンに対応するBOXを表示する表示領域である。以上が図12の説明である。
尚、携帯端末100のCPU201は、会議画面1210においてBOXボタンの押下指示を受け付けることにより、表示画面を会議画面1220に移行する(会議画面1220を生成する)場合、当該押下指示を受け付けたBOXボタン以外のBOXボタンを非表示にした会議画面(会議画面1200)を生成するものとする。
つまり、不要なBOXを非表示にすることで、ユーザがファイルを探す手間を減じることができる。以上が図12の説明である。
図14の説明に戻る。会議画面1210、又は、会議画面1220、又は、後述する会議画面1300(会議画面1300は、BOX内のファイルを開いた画面である/詳細は図13で後述する)において、携帯端末100のCPU201は、ユーザからの指示を受け付け(ステップS1403)、受け付けた指示が「新規作成」ボタン1213の押下か判定する(ステップS1404)。
受け付けた指示が「新規作成」ボタン1213の押下であると判定した場合(ステップS1404でYES)、処理を図4のステップS405に移行する。尚、当該「新規作成」ボタン1213の押下によりステップS405に処理を移行した場合は、図10のBOX生成画面1000で「キャンセル」ボタン1006の押下を受け付ける、また、アップロード完了通知画面1020で「戻る」ボタンが押下されると、画面を会議画面1210に戻し、処理をステップS1403の前に移行するものとする。
受け付けた指示がBOXボタンの押下でないと判定した場合(ステップS1404でNO)、受け付けた指示が、BOXボタンの押下指示(1211又はBOXボタン1212の押下指示)か判定する(ステップS1405)。
受け付けた指示が、BOXボタンの押下指示でないと判定した場合(ステップS1405でNO)、処理をステップS1412に移行し、BOXボタンの押下指示であると判定した場合(ステップS1405でYES)、処理をステップS1406に移行する
携帯端末100のCPU201は、ステップS1406において、BOX内の情報を既に表示済みかを判定する(ステップS1406)。つまり、会議画面1220においてBOXボタンの押下指示を受け付けたか判定する。
BOX内の情報を既に表示済みの場合(ステップS1406でYES)、処理をステップS1402に移行する。尚、既にBOX内容を表示済みの場合、ステップS1402において携帯端末100のCPU201は、既に表示済みのBOX以外のBOXのBOXボタン(図12でいう、BOXボタン1212)は非表示にして、会議画面を表示する。
BOX内の情報を未表示の場合(ステップS1406でNO)、携帯端末100のCPU201は、当該押下を受け付けたBOXボタンに対応するBOXに格納されているファイルのファイル名及びサムネイル画像を、サーバ200に要求する(ステップS1407)。当該要求には、例えば、ファイル名を要求するBOXのBOX URL722が含まれるものとする。
サーバ200のCPU201は、当該ファイル名、サムネイル画像の要求を受信し(ステップS1408)、受信した要求に含まれるBOX URL722に格納されたファイル名を特定し、当該ファイルの先頭ページのサムネイル画像と共に携帯端末100に送信する(ステップS1409/表示制御手段に該当)。
携帯端末100のCPU201は、当該ファイル名、サムネイル画像を受信して、外部メモリに記憶する(ステップS1410)。そして、サーバ200から受信したファイル名を重畳したファイルアイコンを配置した画面(図12の会議画面1220)を生成して、表示画面に表示する(ステップS1411)。そして、処理をステップS1403の前に戻す。
ステップS1412において、携帯端末100のCPU201は、ステップS1403で受け付けた指示が、会議画面1220における、「新規アップロード」ボタン1224の押下指示か判定する(ステップS1412)。受け付けた指示が、会議画面1220における、「新規アップロード」ボタン1224の押下指示であると判定した場合(ステップS1412でYES)、処理を図4のステップS414に移行する。
尚、当該「新規アップロード」ボタン1224の押下によりステップS414に処理を移行した場合は、アップロード完了通知画面1020で「戻る」ボタンが押下されると、画面を会議画面1220に戻し、処理をステップS1403の前に移行するものとする。
携帯端末100のCPU201は、ステップS1403で受け付けた指示が、会議画面1220における、「新規アップロード」ボタン1224の押下指示でないと判定した場合(ステップS1412でNO)、受け付けた指示が、会議画面1220における、ファイルアイコン(ファイルアイコン1221〜1223)の押下指示(例えばダブルタップ)か判定する(ステップS1413)。
受け付けた指示が、会議画面1220におけるファイルアイコンの押下指示であると判定した場合(ステップS1413でYES)、処理をステップS1414に移行し、受け付けた指示が、会議画面1220におけるファイルアイコンの押下指示でないと判定した場合(ステップS1413でNO)、処理をステップS1419に移行する。
ステップS1414において、携帯端末100のCPU201は、押下指示を受け付けたファイルアイコンのファイルをサーバ200に要求する(ステップS1414/ファイルの取得要求を行う)。当該ファイルの取得要求、当該ファイルアイコンに対応するファイル名、及び、表示中のBOXのBOX URL722が含まれる。
サーバ200のCPU201は、当該ファイルの取得要求を受信して(ステップS1415)、当該要求に応じたファイルを、当該取得要求に含まれるファイル名、及びBOX URL722から特定し、携帯端末100に送信する(ステップS1416/表示制御手段に該当)。ここでは、サーバ200のCPU201が、当該ファイルを、携帯端末100で開封・表示が可能な形式(画像ファイル)に変換して、当該ファイルを携帯端末100に送信するものとする。
携帯端末100のCPU201は、当該ファイルを受信して携帯端末の外部メモリに記憶し(ステップS1417)、当該ファイルを開き、当該ファイルのイメージを表示した会議画面(図13の会議画面1300)を生成して、表示画面に表示する(ステップS1418)。そして、処理をステップS1403の前に戻す。
ここで図13を参照して、本発明の実施形態における、ファイルを開いた状態の会議画面である会議画面1300、及び、ファイルの縮小表示する際の画面遷移について説明する。図13は、本発明の実施形態における、画面構成及び画面遷移の一例を示す図である。
会議画面1300は、ユーザからファイルアイコンの押下指示を受け付け、ファイルを表示した画面である。開いたファイルはファイル表示部1301に表示される。「閉じる」ボタン1302は、開かれているファイルを閉じて(表示されているファイルを非表示にして)、会議画面を、例えば、会議画面1220に戻すためのボタンである。
また、携帯端末100のCPU201は、会議画面1300において、矢印1303に示すように、表示中のファイルを、子画面が表示されている表示領域(子画面表示領域)にドラッグ&ドロップする操作を受け付けることで、会議画面1310のように、子画面表示領域に、ファイルイメージを縮小表示(サムネイル画像1311を表示)する。
尚、会議画面1220において、ファイルアイコンを、子画面表示領域にドラッグ&ドロップする操作を受け付けた場合も、同様に、当該ドラッグ&ドロップがされたファイルのサムネイル画像を、子画面表示領域に新たに追加する(会議画面1310に画面の表示を遷移させる)ものとする。
会議画面1310は、ファイルが子画面表示領域に縮小表示された会議画面である。個画面表示領域にドロップされたファイルは、BOXにおいては非表示となる(携帯端末100のCPU201が、子画面表示領域にドロップされたファイルのファイルアイコンを非表示にする処理を行う)。
また、BOXボタン1312が押下されると、BOXを閉じ、会議画面1320の状態に表示画面を遷移させる。以上が図13の説明である。
図14の説明に戻る。ステップS1409において、携帯端末100のCPU201は、ステップS1403で受け付けた指示が、図13の会議画面1300における「閉じる」ボタン1302の押下指示か判定する(ステップS1419)。
受け付けた指示が「閉じる」ボタン1302の押下指示であると判定した場合(ステップS1419でYES)、処理をステップS1411に移行する。受け付けた指示が「閉じる」ボタン1302の押下指示でないと判定した場合(ステップS1419でNO)、受け付けた指示が、ファイルのドラッグ&ドロップ指示(移動指示)か判定する(ステップS1420)。
ここでいうドラッグ&ドロップ指示の対象としてのファイルとは、図12の会議画面1220におけるファイルアイコン、又は、図13の会議画面1300のファイル表示部1301に表示されたファイルイメージである。
ステップS1403で受け付けた指示が、ファイルのドラッグ&ドロップ指示でないと判定した場合(ステップS1420でNO)、当該受け付けた指示に従った処理を行い(例えば、ファイル表示部1301に対するピンチイン・ピンチアウトの指示に従った、表示中のファイルの拡大・縮小表示処理を行い)、処理をステップS1403の前に戻す。
受け付けた指示が、ファイルのドラッグ&ドロップ指示であると判定した場合(ステップS1420でYES)、携帯端末100のCPU201は、当該ファイルのドロップ先が、子画面表示領域か、子画面か、を判定する(ステップS1421)。
ファイルのドロップ先が、子画面表示領域であると判定した場合、携帯端末100のCPU201は、図8の画面情報820の画面ID=SC004に示すように、画面情報820に新たなデータ列を挿入する。当該新規のデータ列(新規の画面情報)のユーザID822にはnullを挿入し、また、当該新規のデータ列(新規の画面情報)の会議画像823には、当該ドロップされたファイルのサムネイル画像を記憶する(ステップS1422)。
つまり、新たに子画面を生成し、当該子画面に、子画面表示領域にドロップされたファイルのサムネイル画像を表示する(ステップS1422)。
尚、携帯端末100のCPU201は、ユーザID822=nullの場合、当該ユーザID822に対応する会議画像823は、ファイルのサムネイル画像(静止画)と判断し、所定時間経っても、当該サムネイル画像を削除せずに、ユーザが入室中のルームから退室するまで保持し続ける。
携帯端末100のCPU201は、ステップS1421で、ファイルのドロップ先が子画面であると判定した場合、当該子画面に表示中のユーザのユーザID(画面情報820でいうユーザID822)を特定して(ステップS1423)、当該ユーザIDと、当該子画面にドロップされたファイル名、ファイルが記憶されたBOXのBOX URL722を、サーバ200に送信する(ステップS1424)つまり、他ユーザへのファイルの送信要求を送信する。
サーバ200のCPU201は、当該ファイルの送信要求を受信し(ステップS1425)、当該送信要求に応じて、当該ファイル名のファイルを、当該他のユーザに送信する(ステップS1426/ファイル表示制御手段に該当)。つまり、ステップS1425で受信したユーザIDを入室情報810の入室ユーザID812に有する端末識別情報814を特定し、当該端末識別情報814の示す端末に、ステップS1425で受信したBOX URLに保存された、ステップS1425で受信したファイル名のファイルを表示させるべく送信する。当該ファイルを受信した携帯端末は、当該受信したファイルを、図13の会議画面1300のように表示画面に表示するものとする。以上が図14の説明である。
尚、上述した実施形態においては、図5のステップS501において、BOXの表示指示を受け付けることで、携帯端末100の位置情報を検出し、サーバ200にBOX情報の取得要求を行うものとしたが、例えば、図4のステップS412の入室処理が完了した場合、図5のステップS501をスキップして、ステップS502以降の処理を行うようにしても良い。
つまり、ユーザがルームに入室した場合に、携帯端末100のCPU201が、ユーザからの指示を待つことなく、自動で、BOX情報の取得要求をサーバ200に送信するようにしてもよい。
以上説明したように、本発明の第1の実施形態によれば、クライアント装置の位置情報を用いて、ウェブ会議においてクライアント装置に提供するファイルを容易に特定可能な仕組みを提供することができる。
[第2の実施形態]
尚、第1の実施形態では、クライアント装置として、携帯端末100を例として説明したが、例えば、位置情報の検出や送信ができないクライアント装置や、持ち運びの出来ないクライアント装置(デスクトップ型のPC等)も存在する。
よって第2の実施形態においては、BOX情報の要求元のクライアント装置が、携帯端末か否かをサーバで判定し、当該判定の結果、当該クライアント装置が携帯端末でない場合は、当該クライアント装置からクライアント装置自身の位置情報を取得していなくとも、当該クライアント装置でサーバ200にログインしたログインユーザが閲覧可能なBOX情報を、当該クライアント装置において表示させるべく返信するものとする。
BOX情報の要求元のクライアント装置が、携帯端末の場合には、第1の実施例において記載した処理を行う。
以下、具体的な処理について説明する。尚、第1の実施形態の処理と共通処理については説明を割愛する。
クライアント装置(携帯端末 又は PC)のCPU201は、図5のステップS503において、ログインユーザのユーザID、及び、当該クライアント装置が携帯端末か否かを示す識別情報を含むBOX情報の取得要求を、サーバ200に送信する(ステップS503)。尚、当該クライアント装置が携帯端末である場合、当該取得要求に、当該携帯端末の位置情報を含めてサーバ200に送信するものとする。
当該クライアント装置が携帯端末か否かを示す識別情報は、予め、サーバ200及びクライアント装置において、共通の識別情報が決定され、記憶されているものとする。
サーバ200のCPU201は、当該BOX情報の取得要求を受信し(ステップS504)、当該取得要求に含まれる、当該取得要求の要求元のクライアント装置が携帯端末か否かを示す識別情報を参照して、当該取得要求の要求元のクライアント装置が携帯端末か否かを判定する。
そして、サーバ200のCPU201は、当該BOX情報の取得要求の要求元のクライアント装置が携帯端末でない(例えば、PC)であると判定した場合、受信したBOX情報の取得要求に含まれるユーザIDのユーザが所属するプロジェクトのプロジェクトID(受信した取得要求に含まれるユーザIDをユーザID712に有するプロジェクトID711)を特定し、当該特定したプロジェクトのBOX(当該プロジェクトIDをプロジェクトID723に有するBOX情報)を特定して、処理を図5のステップS509に移行する。
サーバ200のCPU201は、当該BOX情報の取得要求の要求元のクライアント装置が携帯端末であると判定した場合、第1の実施形態に記したように、処理をステップS505〜S508の処理を実行した後、処理をステップS509に移行する。以上が、本発明の第2の実施形態の説明である。
本発明の第2の実施形態によれば、クライアント装置に応じて、位置情報を用いたBOX表示をすべきかを判断することで、位置情報を取得・送信できない、又は、取得・送信する必要のないクライアント装置に対しても、ウェブ会議において使用するファイルを提供することができる。
例えば、携帯端末に対しては、位置情報に基づいて、提供するファイル(BOX)を絞り込んでユーザに提示することができ、且つ、位置情報を取得・送信できないPCに対しても、ファイル(BOX)の情報を提供することができる。
以上説明したように、本発明によれば、クライアント装置の位置情報を用いて、ウェブ会議においてクライアント装置に提供するファイルを容易に特定可能な仕組みを提供することができる。
尚、本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、1つの機器からなる装置に適用してもよい。
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接、或いは遠隔から供給するものを含む。そして、そのシステム或いは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RWなどがある。また、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などもある。
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
尚、前述した実施形態は、本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。