以下、本発明を実施するための形態の一例として、設備予約システム及び設備予約システムが行う情報通知方法について図面を参照しながら説明する。
<事前の登録作業>
まず、空予約を低減することができる設備予約システムが稼動するための事前の登録作業について説明する。
図1は、本実施形態の設備予約システム100に関する事前の登録作業を説明する図の一例である。ネットワークNには、チャットシステムを制御するチャットサーバ10(情報提供装置)、会議室等の設備の予約を管理する予約管理サーバ20(予約管理装置)、及び、会議室で行われる会議の管理を行う会議管理サーバ30が必要に応じて通信できるように接続されている。
チャットシステムとは、リアルタイムにテキスト等の情報の送受信を1対1又はグループで行うシステムである。図1ではAさん、Bさん、Cさん、Dさんのアカウントがグループ1に対応付けられており、Aさん、Bさん、Cさん、Dさんがグループ1を形成している。Aさんが入力したテキストは、Aさんの端末装置60に表示されると共にBさん、Cさん、Dさんそれぞれの端末装置60に送信される。Bさん、Cさん、Dさんが入力したテキストについても同様である。本実施形態ではこのようなチャットシステムを使用して、会議室の予約に関する情報を会議管理サーバ30が参加予定者(Aさん、Bさん、Cさん、Dさん)に通知することが特徴の1つになっている。
予約管理サーバ20はスケジュール全般の管理を行うWebサービスを提供するサーバ(情報処理装置)である。予約管理サーバ20は会議室の予約を受け付け、会議の参加予定者が任意のタイミングで会議の予定を確認できる。全ての会議の参加予定者は会議の予定を確認する等のため予約管理サーバ20のアカウントを有している。設備予約システム100は予約管理サーバ20のアカウントを利用してチャットシステムのグループと会議の参加予定者(予約管理サーバ20に対して会議の予約を行った会議の参加予定者)を対応付けることが本実施形態の特徴の1つとなっている。以下、事前の登録作業の概略を説明する。
(1)設備予約システム100の管理者は登録端末50を操作してチャットサーバ10と通信し、通知ロボットのアカウントを取得する。通知ロボットは慣用的には"ボット"と呼ばれるプログラムであり、通知ロボットはチャットシステムに登録された会議管理サーバ30の代理人としてグループに対し発言する。図1ではグループ1に登録されているが、通知ロボットのアカウントが登録されるグループは会議に参加する参加予定者のグループになる。つまり、グループ1は会議に参加する参加予定者で構成されている。
(2)また、設備予約システム100の管理者は登録端末50を操作して会議管理サーバ30と通信し、テキストなどの情報を通知するドメインを登録する。このドメインは予約管理サーバ20が参加予定者に発行したアカウントに共通のドメイン(アカウントがメールアドレスの場合はメールアドレスのドメイン部分)である。例えば企業ごとにドメインが発行されている。原則的に、このドメインにより会議室の予約情報を検索できる。なお、予約情報の取得にはドメインのみが使用されるのではなく、管理者権限をもつ管理者のアカウント情報(アドレスやパスワード)も使用される。この管理者が権限をもつ範囲の(例えばその管理者がドメイン全体の権限を持っていればドメイン全体)の予約情報を取得する。
(3)次に、参加予定者の一人がグループ1とAさん,Bさん,Cさん,Dさんをそれぞれ対応付ける。具体的には、端末装置60を操作して会議管理サーバ30と通信し、予約管理サーバ20が発行した設備予約システム100のユーザ(参加予定者)のアカウントとグループ1のグループ名(具体的にはグループ名等、チャットシステムにおいてメッセージの通知先を特定する情報。例えばslack(登録商標)ではチャンネル名とチーム名が必要。)を対応付けて登録する。
以上の事前の登録作業で、会議管理サーバ30はチャットサーバ10を使って会議室の予約に関する情報を参加予定者に通知できる。
<通知の概略>
図2は、会議管理サーバ30が参加予定者に会議室の予約に関する情報を通知する手順を説明する図の一例である。
(4)参加予定者の少なくとも一人が端末装置60を使って予約管理サーバ20と通信し、会議室を予約する。会議室の予約に関する予約情報が予約管理サーバ20に記録される。予約情報には少なくとも予約した参加予定者のアカウント(予約者アカウント)が記録される。
(5)会議管理サーバ30は任意のドメインを決定する。このドメインを含むアカウントを有する参加予定者に通知するためである。会議管理サーバ30は予約管理サーバ20と定期的に又は任意に通信して、予約管理サーバ20から予約情報を取得する。
(6)ここでは例えば、Aさんの予約情報が見つかったとする。これにより、Aさんに対応付けられた通知ロボットの発言先を会議管理サーバ30が特定できる。ここではAさんが対応付けられたグループ1が特定されたものとする。
(7)会議管理サーバ30はチャットサーバ10と通信し、グループ1に登録した通知ロボットとして会議室の予約に関する情報をグループ1の参加予定者に通知させる。すなわち、適切なテキストを他の参加予定者に送信させる。
(8)チャットシステムは通知ロボットが入力したテキストをグループ内の全てのメンバに送信する。これにより、参加予定者の全てに会議室の予約に関する情報を通知することができる。
従って、本実施形態の設備予約システム100は、電子メールを使用せずにチャットシステムを使用して会議室の予約に関する情報を参加予定者に通知できる。チャットシステムのテキストは電子メールと比べて閲覧率が高いという統計があり、参加予定者が見落とすおそれを低減できる。また、チャットシステムではグループの作成が容易であり、会議の参加予定者のグループを設備予約システム100の管理者又は参加予定者等が容易に作ることができる。
<用語について>
参加予定者はチェックインすると参加者になるが、特に区別せずに参加予定者という。
設備の予約に関する情報は、設備の予約に付随する情報であればよい。例えば、予約した旨だけでもよいし、予約の対象、設備の利用の開始時刻等を含んでもよい。設備の予約に関する情報を送信することをリマインドという場合がある。
顧客とは設備予約システム100を利用する企業を言い、参加予定者はこの顧客の社員が想定される。しかし、顧客は個人でもよい。
設備とは、ある目的のために必要なものが備え付けられたものである。本実施形態では会議室という用語で説明する。
グループとは、人の集まりをいう。グループに属する対象者はチャットサーバ10において任意のグループに属している者をいう。あるいは、通知情報が通知されるグループのメンバである。グループにより、一般的にルームや部屋等と呼ばれるチャットシステム内のいずれのメンバに通知をおこなうかが特定される。チャットシステムの一例のslack(登録商標)では「グループ」はチャンネルと呼ばれる。また、別のチャットシステムではそのままグループと呼ばれることもある。
通知情報は、会議管理サーバ30がチャットサーバ10に送信する情報であり、グループで共有される情報をいう。
設備端末は設備に配置され、会議管理サーバ30と通信する機能を有する情報処理装置であればよい。好ましくは、ディスプレイ及び端末装置60との通信機能を有する。
<システム構成例>
図3は、設備予約システム100のシステム構成図の一例である。設備予約システム100は、主に社外ネットワークN2と社内ネットワークN1に分けることができる。ここで、社内ネットワークN1はファイアウォールの内側のネットワークを言い、社外ネットワークN2は不特定多数の通信が伝送されるネットワーク(インターネットを含む)である。
社外ネットワークN2には、予約管理サーバ20、会議管理サーバ30、及びチャットサーバ10が接続されており、各サーバは必要に応じて通信することができる。また、社外ネットワークN2には設備予約システム100の管理者が操作する登録端末50、及び、会議の参加予定者が操作する端末装置60が必要に応じて接続される。なお、登録端末50と端末装置60は社内ネットワークN1から社外ネットワークに接続することも可能である。
予約管理サーバ20は、一般的なサーバOSなどが搭載された1台以上の情報処理装置(コンピュータシステム)によって実現できる。予約管理サーバ20が提供する設備の予約に関するシステムを予約管理システムという。予約管理サーバ20はカレンダーシステムを有しており、各種の予定を管理するWebアプリを提供する。具体的には、例えば以下のような機能を有している。
・予定の登録を受け付け、いつでもどこからでも予約者が確認できる
・予定の30分前など、設定した日時に電子メールで通知する
・一人が複数のカレンダー(仕事用、家庭用など)で予定を管理できる
・同じグループの人とカレンダーを共有する
予約管理サーバ20はユーザをアカウントで管理する。アカウントとはユーザがサービスを利用する権利のことである。多くのシステムではユーザはアカウントを使用してシステムにログインする。このため、アカウントはシステムがユーザを一意に特定する機能(識別情報の機能)を有している。本実施形態では、予約管理サーバ20のアカウントを会議管理サーバ30が利用することで会議管理サーバ30が会議室の予約情報を取得できる。なお、アカウントは例えば電子メール、ID、電話番号などでよい。会議管理サーバ30は例えばアカウントとパスワードを使って予約管理サーバ20にログインする。
本実施形態で予定として管理されるのは会議の開催であるが、予約管理サーバ20は会議の開催に限られず各種の予定を管理できる。会議室の他、各種の電子機器のレンタル、駐車場の予約など、各種の設備の予約に利用できる。なお、予約管理システムとしては、G Suite(登録商標)、Office365(登録商標)等が知られているが、本実施形態で説明する機能を有する予約管理サーバであればよい。
また、本実施形態では、社内ネットワークN1の会議室6に関する情報が予約管理サーバ20に予め登録されている。すなわち、設備予約システム100を利用する企業の社内ネットワークにある各会議室6の会議室名、会議室ID、予約可能時間、及び、予約単位等に応じて予約管理サーバ20のWebアプリがカスタマイズされている。従って、設備予約システム100を利用する企業の会議室6と予約情報が結びつけられる。
チャットサーバ10は、一般的なサーバOSなどが搭載された1台以上の情報処理装置(コンピュータシステム)によって実現できる。チャットサーバ10が提供する複数のユーザにおけるテキストなどの情報のリアルタイムな共有システムをチャットシステムという。チャットサーバ10は端末装置60に会議室の予約に関する情報を通知する。
共有される情報には画像や音声等もありテキストに限られないが、本実施形態では説明の便宜上、通知には主にテキストが用いられるとして説明している。例えば、チャットシステムは、グループ間の音声通話機能を提供してよい。音声通話は1対1でも1対N(≧2)でもよい。従って、本実施形態でチャットシステムが会議室の予約に関する情報を通知する際は、テキストの表示の他、音声メッセージの出力でもよい。なお、チャットシステムとしてはLINE(登録商標)、Slack(登録商標)等が知られているが、通知ロボットから1又は複数のユーザに対して通知が可能なチャットシステムであればよい。
チャットサーバ10も同様にアカウント(予約管理サーバのアカウントとは異なる)でユーザを管理するが、会議管理サーバ30はチャットサーバ10のアカウントを意識する必要はない。
会議管理サーバ30は、一般的なサーバOSなどが搭載された1台以上の情報処理装置(コンピュータシステム)によって実現できる。会議管理サーバ30は社外ネットワークN2に関する処理として、予約管理サーバ20から会議室の予約情報を取得し、予約情報の中に参加予定者を検出すると、設定されているタイミングで参加予定者と対応付けられたチャットサーバ10のグループに通知を送信する。また、社内ネットワークN1に関する処理として、会議室へのチェックイン及びチェックアウトを管理したり、予約管理サーバ20から取得した会議室の予約情報に基づいて電子機器70の電源等を制御したりする。
端末装置60と登録端末50は、一般的なOSなどが搭載された1台以上の情報処理装置(コンピュータシステム)によって実現できる。登録端末50は設備予約システム100の管理者が操作する端末であり、端末装置60は参加予定者が操作する装置であると説明したが、両者を明確に区別しいなくてもよい。端末装置60は、例えば、スマートフォン、タブレット端末、PC(Personal Computer)、PDA(Personal Digital Assistant)、ウェアラブルPC(サングラス型、腕時計型など)などである。ただし、通信機能を有しブラウザソフトウェア、又は、チャットサーバ10若しくは予約管理サーバ20に専用のアプリケーションソフトウェアが動作すればよい。例えば、カーナビ、ゲーム機、テレビ受像器なども端末装置60となりうる。
端末装置60ではチャットサーバ10に専用のアプリケーションソフトウェア(以下、チャットアプリという)が動作し、更に、設備予約システム100に専用のアプリケーションソフトウェア(以下、会議アプリという)が動作する。ただし、これらはブラウザソフトウェアで代用されてよい。
社内ネットワークN1には、AP80(アクセスポイント)、会議室端末90、及び電子機器70が接続されており、会議室端末90、及び電子機器70はAP80を介して必要に応じて通信することができる。社内ネットワークN1は例えばLAN(Local Area Network)である。社内ネットワークN1には参加予定者により端末装置60が持ち込まれる。
AP80は、会議室端末90と電子機器70が無線LANで通信するための基地局である。AP80がルータの機能を有していてもよく、AP80は通信の宛先IPアドレスに基づいて宛先が社外ネットワークN2か社内ネットワークN1かを判断して通信の転送先を切り替える。なお、社内ネットワークN1はファイアウォールの内側にあるため、社外ネットワークN2から社内ネットワークN1への直接の通信は困難になっている。
会議室端末90は、会議室を利用する参加予定者が操作する情報処理装置(設備端末)である。会議室端末90は会議室6の机の上に配置されていたり、会議室6の入り口に配置されたりしている。1つの会議室6に会議室端末90が複数、配置されていてもよい。会議室端末90は、一般的なOSなどが搭載された1台以上の情報処理装置(コンピュータシステム)によって実現できる。会議室端末90はチェックイン、チェックアウトなどのためのメニューを表示し、チェックイン又はチェックアウトを会議管理サーバ30に知らせるために会議管理サーバ30と通信する。また例えば、会議管理サーバ30に会議室IDを送信し、現在、会議室で行われている会議室の予約情報などを表示する。また、電子機器70の電源ON、OFF等の制御情報を会議管理サーバ30から取得する。これにより、会議室端末90は電子機器70の電源をON及びOFFする。
端末装置60で動作する会議アプリは一例として近距離無線通信により会議室端末90と通信する。後述するように、端末装置60が取得する会議室の予約に関する情報には会議識別情報が含まれている。会議室端末90は近距離無線通信、手入力、2次元コードなどにより会議識別情報を取得して、会議管理サーバ30に送信する。これにより、会議室端末90は現在時刻から直近の時間帯で会議室を予約した参加予定者がチェックインしたかどうかを判断できる。
会議室端末90は会議識別情報と会議室IDを会議管理サーバ30に送信するので、会議管理サーバ30は会議識別情報と会議室IDにより、会議室を予約した参加予定者又はこの参加予定者と一緒に会議に参加する参加予定者が予約した会議室を使用することを確認できる。
電子機器70は会議室で使用され得る各種のオフィス機器である。例えば、電子黒板、複合機、プロジェクタ、デジタルサイネージ、デジタルカメラ等である。電子黒板とは、タッチパネル付大型ディスプレイを有しユーザが指示した盤面の座標を検出し座標を接続してストロークを表示する。この他、接続されたPCの映像を表示したり、他拠点の電子黒板と通信してストロークを同期したりすることができる。なお、電子黒板は、電子情報ボード、電子ホワイトボードと呼ばれる場合もある。
複合機は、コピー機、スキャナ、プリンタ、ファクス送受信などの機能を有し、会議中の資料の印刷や資料のコピー、資料の電子化、資料の送信などに利用される。プロジェクタは画像を投影する装置である。例えば、端末装置60がディスプレイに表示する映像をスクリーン等に投影することで参加予定者の間で共有することを可能にする。デジタルサイネージは大型のディスプレイであり任意の静止画又は動画を表示するために使用される。デジタルカメラは紙の資料や電子黒板に表示された資料を各参加予定者が撮像して保存するために使用される。
なお、会議室端末90には図3のようにUI(User Interface)なしのタイプとUIありのタイプがある(図4)。UIとはディスプレイを意味する。UIなしとUIありで会議室端末90の機能が若干異なる。例えば、UIなしはユーザの直接の操作を受け付けることができないため、チェックインの方法に制約がある。本実施形態では、説明の便宜上、図4のUIありの会議室端末90を想定して説明する。
<ハードウェア構成>
<<会議管理サーバ30のハードウェア構成>>
図5は、会議管理サーバ30のハードウェア構成図の一例である。会議管理サーバ30の概略的なハードウェア構成図の一例である。会議管理サーバ30は、CPU201と、CPU201が使用するデータの高速アクセスを可能とするメモリ202とを備える。CPU201及びメモリ202は、システム・バス203を介して、会議管理サーバ30の他のデバイス又はドライバ、例えば、グラフィクス・ドライバ204及びネットワーク・ドライバ(NIC)205へと接続されている。
グラフィクス・ドライバ204は、バスを介してLCD(ディスプレイ装置)206に接続されて、CPU201による処理結果をモニタする。また、ネットワーク・ドライバ205は、トランスポート層レベル及び物理層レベルで会議管理サーバ30を社外ネットワークN2へと接続して、他の機器とのセッションを確立させている。
システム・バス203には、更にI/Oバス・ブリッジ207が接続されている。I/Oバス・ブリッジ207の下流側には、PCIなどのI/Oバス208を介して、IDE、ATA、ATAP80I、シリアルATA、SCSI、USBなどにより、HDD(ハードディスクドライブ)209などの記憶装置が接続されている。HDD209は会議管理サーバ30の全体を制御するプログラム209pを記憶している。HDD209はSSD(Solid State Drive)でもよい。プログラム209pは記憶媒体に記憶された状態で配布されてもよいし、プログラム配信用のサーバから配信されてもよい。
また、I/Oバス208には、USBなどのバスを介して、キーボード及びマウス(ポインティング・デバイスと呼ばれる)などの入力装置210が接続され、システム管理者などのオペレータによる入力及び指令を受け付けている。
なお、図示した会議管理サーバ30のハードウェア構成は、会議管理サーバ30が備えていることが好ましいハード的な要素を示す。
予約管理サーバ20、チャットサーバ10、登録端末50、及び、端末装置60のハードウェア構成図は、会議管理サーバ30と同様であるか、又は、異なるとしても本実施形態の設備予約システム100の説明の上で支障はないものとする。また、会議管理サーバ30、予約管理サーバ20、及び、チャットサーバ10はクラウドコンピューティングに対応するため、これらのハードウェア構成は負荷に応じてハード的なリソースが動的に接続・切断されることで構成されてよい。なお、クラウドコンピューティングとは、特定ハードウェア資源が意識されずにネットワーク上のリソースが利用される利用形態をいう。
<<会議室端末90>>
図6は会議室端末90の一例のハードウェア構成図である。なお、図6の会議室端末90はタブレット装置が想定されている。図6の会議室端末90は図4のUIを有するタイプを例にする。会議室端末90は、CPU601、ROM602、RAM603、EEPROM604、CMOSセンサ605、加速度・方位センサ606、メディアドライブ608を備えている。
CPU601は会議室端末90の全体の動作を制御する。ROM602は基本入出力プログラムを記憶している。RAM603はCPU601のワークエリアとして使用される。EEPROM604はCPU601の制御に従ってデータの読み出し又は書き込みを行う。CMOSセンサ605は、CPU601の制御に従って被写体を撮像し画像データを得る。加速度・方位センサ606は地磁気を検知する電子磁気コンパスやジャイロコンパス、加速度センサ等である。
メディアドライブ608は、フラッシュメモリ等のメディア607に対するデータの読み出し又は書き込み(記憶)を制御する。メディアドライブ608は、既に記録されていたデータが読み出され又は新たにデータが書き込まれて記憶するメディア607を着脱自在な構成となっている。
なお、EEPROM604には、CPU601が実行するプログラム604pが記憶されている。プログラム604pは実施形態における各種処理を実行するためのアプリケーションソフトウェアやOS等である。プログラム604pはメディア607などに記憶された状態で配布されてもよいし、プログラム配信用のサーバから配信されてもよい。
また、CMOSセンサ605は光を電荷に変換して被写体の画像を電子化する電荷結合素子である。CMOSセンサ605は被写体を撮像することができるのであれば、例えばCCD(Charge Coupled Device)センサであってもよい。CMOSセンサ605はバーコードや二次元バーコードを読み取ることができる。
更に、会議室端末90は、RFタグリーダ/ライタ622、アンテナI/F623、及び、振動アクチュエータ624を備える。RFタグリーダ/ライタ622は例えばNFC(Near Field Communication)などの規格に従って通信する。
振動アクチュエータ624は、会議室端末90を振動させるモータである。例えば、会議の終了時刻が迫ると会議室端末90が振動することで参加予定者にその旨を知らせることができる。
更に、会議室端末90は音声入力部609、音声出力部610、アンテナ611、通信部612、無線LAN通信部613、近距離無線通信用アンテナ614、近距離無線通信部615、ディスプレイ616、タッチパネル617及びバスライン619を備える。
音声入力部609は音声を音声信号に変換する。音声出力部610は音声信号を音声に変換する。通信部612はアンテナ611を利用して無線通信信号により最寄りの基地局Na装置と通信を行う。無線LAN通信部613はIEEE802.11規格に準拠する無線LAN通信を行う。
近距離無線通信部615は近距離無線通信用アンテナ614を利用して例えばBluetooth(登録商標)、又は、Bluetooth Low Energy(登録商標)の通信規格にしたがった通信装置である。
ディスプレイ616は、被写体の画像や各種アイコン等を表示する液晶や有機EL等である。タッチパネル617は、ディスプレイ616上に載せられ、感圧式又は静電式のパネルによって構成され、指やタッチペン等によるタッチによってディスプレイ616上におけるタッチ位置を検出する。バスライン619は上記各部を電気的に接続するためのアドレスバスやデータバス等である。
また、会議室端末90は専用の電池618を備え、電池618又は商用電源のいずれによっても駆動され得る。なお、音声入力部609は音声を入力するマイクが含まれる。音声出力部610は音声を出力するスピーカが含まれている。
<<電子機器70のハードウェア構成図>>
図7は、電子機器70の一例として電子黒板のハードウェア構成図の一例である。図7に示されているように、電子黒板は、電子黒板全体の動作を制御するCPU101、IPL等のCPUの駆動に用いられるプログラムを記憶したROM102、CPU101のワークエリアとして使用されるRAM103、プログラム104pを記憶するSSD104、社内ネットワークとの通信を制御するネットワークコントローラ105、及び、USBメモリ5との通信を制御する外部記憶コントローラ106を備えている。
また、電子黒板は、P68がPC6のディスプレイに表示している静止画又は動画を取り込む外部ビデオインタフェース111を有する。また、グラフィクス(ディスプレイ3に表示する画面の画像処理)を専門に扱うGPU112、及び、GPU112からの映像をディスプレイ3やテレビ会議端末7へ出力するために画面表示の制御及び管理を行うディスプレイコントローラ113を備えている。
更に、電子黒板は、タッチパネルの処理を制御するセンサコントローラ114、ディスプレイ3に指示体4、手Hが接触したことを検知するタッチパネル115を備えている。また、電子黒板は、電子ペンコントローラ116を備えている。電子ペンコントローラ116は、指示体4と通信することで、ディスプレイ3への指示体4のペン先のタッチやペン尻のタッチの有無を判断する。なお、電子ペンコントローラ116が、ペン先及びペン尻だけでなく、指示体4のユーザが握る部分や、その他の指示体4の部分のタッチの有無や圧力を判断するようにしてもよい。
更に、電子黒板は、CPU101、ROM102、RAM103、ネットワークコントローラ105、外部記憶コントローラ106、外部ビデオインタフェース111、GPU112、センサコントローラ114、及び電子ペンコントローラ116を図7に示されているように電気的に接続するためのアドレスバスやデータバス等のバスライン120を備えている。
<機能について>
図8は、予約管理サーバ20、チャットサーバ10、会議管理サーバ30、及び、端末装置60の機能をブロック状に示す機能ブロック図の一例である。
<<予約管理サーバ20>>
予約管理サーバ20は、通信部21、及び、予約情報管理部22を有する。予約管理サーバ20が有するこれら各機能部は、図5に示された各構成要素のいずれかが、HDD209からメモリ202に展開されたプログラム209pに従ったCPU201からの命令により動作することで実現される機能又は手段である。
通信部21は、会議管理サーバ30と各種の情報を送受信する。本実施形態では会議管理サーバ30から予約情報の要求を受信し、この予約情報を会議管理サーバ30に送信する。通信部21は、図5のCPU201がプログラム209pを実行しネットワーク・ドライバ205を制御すること等により実現される。
予約情報管理部22は、ユーザが登録した予約情報を管理する。予約情報管理部22は会議管理サーバ30から要求された会議室の予約情報を予約情報DB291から読み出して、会議管理サーバ30に送信する。予約管理サーバ20に参加予定者が会議室を予約する方法としては一般的なWebアプリが使用されるものとする。Webアプリが参加予定者の端末装置60に表示する画面例を図10に示す。予約情報管理部22は、図5のCPU201がプログラム209pを実行すること等により実現される。
また、予約管理サーバ20は記憶部29を有している。記憶部29は図5のメモリ202及びHDD209等により実現される。記憶部29には予約情報DB291(Data Base)が記憶されている。
表1は予約情報DB291に記憶されている予約情報の一例を示す。予約情報は会議室の予約状況を管理するための情報である。予約情報には、予約IDに対応付けて予約者アカウント、会議名、会議室ID、開始時刻、終了時刻、及び、参加予定者アカウントの各項目が登録されている。予約IDは予約情報の1レコードを識別する識別情報である。IDはIdentificationの略であり識別子や識別情報という意味である。IDは複数の対象から、ある特定の対象を一意的に区別するために用いられる名称、符号、文字列、数値又はこれらのうち1つ以上の組み合わせをいう。予約ID以外のIDについても同様である。予約者アカウントは会議室を予約した参加予定者のアカウントである。会議名は参加予定者が任意に付与した会議の名称である。会議室IDは社内ネットワークにある会議室を識別する識別情報であり会議管理サーバ30により付与されている。開始時刻は会議室が予約された時間帯の始期(会議が開始される時刻)であり、終了時刻は会議室が予約された時間帯の周期(会議が終わる時刻)である。参加予定者アカウントは会議に参加する予定の参加予定者のアカウントである。なお、表1のアカウントはいずれも予約管理サーバ20が発行したアカウントである。
<<チャットサーバ10>>
チャットサーバ10は、通信部11、及び、テキスト処理部12を有する。チャットサーバ10が有するこれら各機能部は、図5に示された各構成要素のいずれかが、HDD209からメモリ202に展開されたプログラム209pに従ったCPU201からの命令により動作することで実現される機能又は手段である。
通信部11は、会議管理サーバ30と各種の情報を送受信する。本実施形態では会議管理サーバ30から会議室の予約に関する情報、通知ロボットを識別する情報、及び、通知先のグループを特定する情報を受信する(この通知ロボットを識別する情報は、会議管理サーバ30の通知ロボットを作成した際に予めチャットサーバ10から通知ロボットの識別情報として通知される)。参加予定者が会議室の予約に関する情報を既読した旨、又は、表示された会議室の予約に関する情報に対する参加予定者の応答を会議管理サーバ30に送信する。通信部11は、図5のCPU201がプログラム209pを実行しネットワーク・ドライバ205を制御すること等により実現される。
テキスト処理部12は、会議管理サーバ30から通知された通知ロボットを識別する情報及び通知先のグループを特定する情報に基づき表2のグループ情報DB191から通知するグループを特定し、通知ロボットとしてグループに属する参加予定者に会議室の予約に関する情報を送信する。従って、原則的に通知は参加予定者の数だけ行われる。テキスト処理部12はいわゆるプッシュ通知を行うことができる。仕組みとしては、例えば以下のようなものがある。チャットアプリ60aはプッシュ通知用のID(トークン)を、OS(Operating System)のメーカが運営するサーバから受け取る。このサーバではトークンとデバイス(端末装置60)を紐付けておく。チャットアプリ60aはトークンとチャットアプリ60aのアカウントをチャットサーバ10に登録しておく。チャットサーバ10がプッシュ通知を行う場合、チャットアプリ60aのアカウントを特定するので紐付いたトークンを特定できる。チャットシステムはトークンを指定して通知内容をOSのメーカが運営するサーバに送信する。このサーバはトークンに紐付いたデバイス(端末装置60)に対しプッシュ通知する。
また、チャットサーバ10は記憶部19を有している。記憶部19は図5のメモリ202及びHDD209等により実現される。記憶部19にはグループ情報DB191が記憶されている。
表2はグループ情報DB191に記憶されているグループ情報の一例を示す。グループ情報は同じグループに属するメンバのアカウントが登録された情報である。グループ情報には、チームIDに対応付けて、グループ名、メンバアカウント1〜n(表2ではn=4)、及び、通知ロボットアカウントが登録されている。
チームIDはチームを識別するためのIDである。本実施形態では複数のメンバがチーム(例えばA社用のチーム)に所属しており、更にチームは目的等に応じた複数のグループを有し(例えば製品A用のグループ、製品B用のグループ等)、グループにはチームに所属するメンバのうちいずれかのメンバが所属している(グループに所属するメンバは1〜すべてのメンバ)。つまり、通知先はチームIDとグループ名によって特定される。ただし、通知先の特定方法はチャットシステムによって異なるため、グループを一意に特定できる識別情報が存在すれば、その情報のみでも良いし、3つ以上の情報によって特定されてもよい。
グループ名はチャットシステムがテキストを共有するグループの名称であり一意性が保証されている。メンバアカウント1〜nはグループのメンバのアカウントであり、このアカウントはチャットサーバ10により発行されたものである。本実施形態では、会議室の予約に関する情報を通知するためのメンバとして通知ロボットが登録される。通知ロボットはいわば会議管理サーバ30の代理人又は架空のメンバということができる。通知ロボットの発言(テキスト)がメンバアカウント1〜nの端末装置60に送信される。
グループ名とチームIDは、会議管理サーバ30によって管理され、参加予定者が属するグループを識別するための情報になる。
<<会議管理サーバ30>>
会議管理サーバ30は、通信部31、情報対応付部32、予約情報取得部33、通知判断部34、制御情報生成部35、制御情報応答部36、会議情報通知部37、チェックイン管理部38、及び、初期設定部39を有する。会議管理サーバ30が有するこれら各機能部は、図5に示された各構成要素のいずれかが、HDD209からメモリ202に展開されたプログラム209pに従ったCPU201からの命令により動作することで実現される機能又は手段である。このプログラム209pは、プログラム配信用のサーバから配信されるか又は記憶媒体に記憶された状態で配布される。
通信部31は、予約管理サーバ20、チャットサーバ10、登録端末50、及び、端末装置60と各種の情報を送受信する。本実施形態では予約管理サーバ20から予約情報を受信し、チャットサーバ10に会議室の予約に関する情報を送信し、登録端末50から通知ロボットが登録されるグループを受け付け、端末装置60からチャットシステムのグループとアカウントの対応付けを受け付ける。その他、会議室端末90とも通信する。通信部31は、図5のCPU201がプログラム209pを実行しネットワーク・ドライバ205を制御すること等により実現される。
情報対応付部32は、主に事前の登録作業に関する処理を行う。すなわち、登録端末50からドメインの登録を受けつけ顧客ドメインDB495に登録し、端末装置60から送信されたチャットシステムのグループ名と予約管理サーバ20のアカウントを対応付けて対応付情報DB491に登録する。詳細は後述される。情報対応付部32は、図5のCPU201がプログラム209pを実行すること等により実現される。
予約情報取得部33は、設備予約システム100を利用する顧客のアカウントを指定して予約管理サーバ20から予約情報を取得して予約情報DBに登録する。予約管理サーバ20が保持する予約情報のうち現在から所定期間未来の予約情報を取得する。所定期間はどのくらい先の会議まで会議室の予約に関する情報を通知するかによって定まる。予約情報取得部33は、図5のCPU201がプログラム209pを実行すること等により実現される。
通知判断部34は、予約情報の中に通知する条件を満たす開始時刻の予約があるか否かを判断する。例えば、通知設定DB496を参照し、予約の開始時刻から逆算して設定された日時になると通知すると判断する。なお、例えばリマインダー用の通知ロボット、予約受付用の通知ロボット等、役割ごとに通知ロボットが分けられている場合、処理に応じて通知ロボットを特定する。通知判断部34は、図5のCPU201がプログラム209pを実行すること等により実現される。
会議情報通知部37は、通知判断部34が通知すると判断すると、通知ロボットを識別する情報及び通知先のグループを特定する情報を指定して会議室の予約に関する情報を通知することをチャットサーバ10に要求する。なお、通知は何回に分けて行われるが、そのうちの少なくとも1回の通知に会議識別情報を含める。会議識別情報は、予約された会議室を予約した時間帯に参加予定者が使用する権利を有することを会議管理サーバ30が確認するための情報である。会議情報通知部37は、少なくとも最終的な通知の前に会議識別情報を生成する。なお、会議識別情報は会議識別情報DB494に登録される。会議情報通知部37は、図5のCPU201がプログラム209pを実行すること等により実現される。
制御情報生成部35は、予約情報を参照して電子機器70の制御情報を生成し、制御情報を制御情報DB497に登録する。例えば、会議の開始時刻の数分前になると電子機器70の電源をONする制御情報を生成し、チェックアウトを検出すると電子機器70の電源をOFFする制御情報を生成する。制御情報は制御情報DB497に記憶される。制御情報生成部35は、図5のCPU201がプログラム209pを実行すること等により実現される。
制御情報応答部36は、会議室の会議室端末90から制御情報があるかどうかの問い合わせを受け付け、制御情報DB497を参照し、会議室に対応する制御情報を会議室端末90に送信する。制御情報応答部36は、図5のCPU201がプログラム209pを実行すること等により実現される。
チェックイン管理部38は、会議室端末90と通信してチェックインを認めるか否かを判断し、また、会議のステータスを会議管理情報DB493に登録する。チェックインは、会議室IDと会議識別情報の組が会議識別情報DB494に登録されており、予約IDで特定される会議の開始時刻の5〜10分前になると認められる。チェックイン管理部38は、図5のCPU201がプログラム209pを実行すること等により実現される。
初期設定部39は、会議室端末90の初期設定に関する処理を行う。例えば、設備予約システム100の管理者の登録端末50に会議室の一覧を提供し、設備予約システム100の管理者が選んだ会議室の会議室ID、会議室名を特定し、更に、会議管理サーバ30のURL(Uniform Resource Locator。会議管理サーバ30のアドレス情報)を登録端末50に送信する。チェックイン管理部38は、図5のCPU201がプログラム209pを実行すること等により実現される。
また、会議管理サーバ30は記憶部49を有している。記憶部49は図5のメモリ202及びHDD209等により実現される。記憶部49には、対応付情報DB491、会議管理情報DB493、会議識別情報DB494、顧客ドメインDB495、通知設定DB496、及び、制御情報DB497が記憶されている。
表3は対応付情報DB491に記憶されている対応付情報の一例を示す。対応付情報は予約管理システムのアカウントとチャットシステムのグループ名を対応付ける情報である。対応付情報は、グループ名、チームID及びメンバアカウント1〜n(図ではn=4)の各項目を有する。グループ名はチャットシステムのグループ名である。メンバアカウント1〜nには予約管理サーバ20が発行した各参加予定者のアカウントが登録される。また、表3に示すようにチャットシステムのアカウントが登録されてよい。グループに対して通知を行うためには予約管理サーバに対して会議を予約したユーザの予約管理サーバのアカウントと通知先のグループ及びチャンネルを特定するための情報(本実施形態ではチームIDとグループ(チャンネル)名)があればよく、必ずしもグループに所属するすべてのメンバのアカウントが登録されている必要はない。ただし、個人ユーザ宛に通知する場合、それぞれのチャットシステムのアカウント情報が必要なため、表3のように登録されていてもよい。
表4は会議管理サーバ30の会議管理情報DB493が記憶する予約情報の一例を示す。表4では表1の予約情報DB291との相違を説明する。表4の予約情報はステータスの項目を有する。ステータスは、予約の状況を意味する。例えば、会議室の予約に関する情報の通知済み、利用確定、チェックイン済み、チェックアウト、又は、キャンセル(取り消し)等の状況が登録される。
表5は会議識別情報DB494に記憶されている会議識別情報管理情報の一例を示す。会議識別情報管理情報は会議室の予約ごとに会議識別情報を管理する情報である。会議識別情報管理情報は、予約ID、会議室ID、及び、会議識別情報の各項目を有する。これらについては既出であるため説明は省略する。なお、予約IDが登録されているのは、同じ会議室の予約を識別するためである。
表6は顧客ドメインDB495に記憶されている顧客ドメイン情報の一例を示す。顧客ドメイン情報は顧客のドメインと顧客の管理者のアカウントを管理する情報である。顧客ドメイン情報には顧客のドメイン名と顧客の管理者アカウントが対応付けて登録されている。表6の顧客のドメインは予約管理サーバ20が発行したアカウント(メールアドレス)のドメインである。また、管理者アカウントは、顧客の管理者(代表する)のアカウントである。なお、表6のアカウントは予約管理サーバ20が発行したものである。
表7は通知設定DB496に記憶されている通知設定情報の一例を示す。通知設定情報は顧客ごとに通知に関する設定を保持する。通知設定情報には、顧客ドメイン名と通知設定が対応付けて登録されている。通知設定には、会議の開始時刻のどのくらい前に、会議室の予約に関する情報を通知するかのタイミングが設定されている。あるいは決まった日時が設定されていてもよい。また、タイミングは1つである必要はなく、1つの顧客に複数回の通知設定が登録されていてもよい。
表8は制御情報DB497に記憶されている制御情報の一例を示す。制御情報は会議室の電子機器70を制御するための情報である。制御情報は、会議室ID、及び、制御内容の各項目を有する。制御内容は、電子機器70の具体的な制御方法である。会議管理サーバ30は電子機器70ごとに詳細な制御内容を設定できる。また、制御する時刻が登録されないのは、社外ネットワークの会議管理サーバ30から会議室端末90に送信することが困難であり、会議室端末90が会議管理サーバ30にアクセスし、この時、制御情報が生成されていれば制御内容を送信するからである。
<<登録端末50>>
登録端末50は、通信部51、操作受付部52、及び、表示制御部53を有する。登録端末50が有するこれら各機能部は、図5に示された各構成要素のいずれかが、HDD209からメモリ202に展開されたプログラム209pに従ったCPU201からの命令により動作することで実現される機能又は手段である。このプログラム209pは、プログラム配信用のサーバから配信されるか又は記憶媒体に記憶された状態で配布される。
通信部51、操作受付部52、及び、表示制御部53の機能は端末装置60と同様であり、詳細は端末装置60と共に説明する。
<<端末装置60>>
図9は、端末装置60、会議室端末90、及び、電子機器70の機能をブロック状に示す機能ブロック図の一例である。なお、説明の都合上、会議管理サーバ30の機能ブロック図を再掲した。
端末装置60は、通信部61a、操作受付部61b、チャット通信部62、テキスト表示部63、アプリ通信部67、サーバ通信部65、表示制御部66、アプリ通信部67、及び、端末通信部68を有する。端末装置60が有するこれら各機能部は、図5に示された各構成要素のいずれかが、HDD209からメモリ202に展開されたプログラム209pに従ったCPU201からの命令により動作することで実現される機能又は手段である。このプログラム209pは、プログラム配信用のサーバから配信されるか又は記憶媒体に記憶された状態で配布される。端末装置60ではチャットアプリ60aと会議アプリ60bが動作しているので、プログラム209pにはチャットアプリ60aと会議アプリ60bが含まれる。
通信部61aは、会議管理サーバ30と各種の情報を送受信する。通信部61aは、図5のCPU201がプログラム209pを実行しネットワーク・ドライバ205を制御すること等により実現される。
操作受付部61bは、端末装置60に対する参加予定者の各種の操作を受け付ける。操作受付部は、図5のCPU201がプログラム209pを実行し入力装置210を制御すること等により実現される。
チャットアプリ60aのチャット通信部62は、チャットサーバ10と各種の情報の送受信を行う。本実施形態ではチャットサーバ10から会議室の予約に関する情報を受信し、チャットサーバ10に会議室が利用されるかキャンセルされるかを通知する。チャット通信部62は、図5のCPU201がプログラム209pを実行しネットワーク・ドライバ205を制御すること等により実現される。
チャットアプリ60aのテキスト表示部63は、チャットサーバ10から送信されたテキスト(会議室の予約に関する情報)を表示する。例えば、発言元は通知ロボットであり通知ロボットが入力したかのようにテキストを表示する。テキスト表示部63は、図5のCPU201がチャットアプリ60aを実行すること等により実現される。
チャットアプリ60aのアプリ通信部64は、会議アプリ60bを呼び出すと共に会議識別情報を会議アプリ60bに送信する。チャットサーバ10は、会議室の予約に関する情報を通知する際、会議アプリ60bを識別する情報を端末装置60に送信しているので、チャットアプリ60aはOSに対し会議アプリ60bを指定し会議識別情報の通知を依頼する。OSは会議アプリ60bを起動することができる。アプリ通信部64は、図5のCPU201がチャットアプリ60aを実行すること等により実現される。
会議アプリ60bのサーバ通信部65は、会議管理サーバ30と通信する。本実施形態では、会議識別情報を含む2次元コードを会議管理サーバ30から取得する。サーバ通信部65は図5のCPU201が会議アプリ60bを実行すること等により実現される。
会議アプリ60bの表示制御部66は、会議管理サーバ30から通知された上記の2次元コード等をLCD206に表示する。表示制御部66は、図5のCPU201が会議アプリ60bを実行しグラフィクス・ドライバを制御すること等により実現される。
会議アプリ60bのアプリ通信部67は、OSを介して、チャットアプリ60aから各種の情報(会議室の予約に関する情報に含まれる会議識別情報等)を取得する。アプリ通信部67は、図5のCPU201が会議アプリ60bを実行すること等により実現される。
端末通信部68は、会議室端末90と通信し会議識別情報等を送信する。端末通信部68は、Bluetooth(登録商標)などの近距離無線通信で会議室端末90の存在を検出し、会議室端末90を検出すると会議識別情報を送信する。また、会議室端末90に対し2次元コードを表示する機能を提供する。端末通信部68は、図5のCPU201が会議アプリ60bを実行すること等により実現される。
<<会議室端末90>>
会議室端末90はサーバ通信部91、端末装置通信部92、操作受付部93、表示制御部94、及び、電子機器通信部95を有する。会議室端末90が有するこれら各機能部は、図6に示された各構成要素のいずれかが、EEPROM604からRAM603に展開されたプログラム604pに従ったCPU601からの命令により動作することで実現される機能又は手段である。このプログラム604pは、プログラム配信用のサーバから配信されるか又は記憶媒体に記憶された状態で配布される。
サーバ通信部91は、会議管理サーバ30と通信する。会議室端末90は社内ネットワークに存在するため会議管理サーバ30から会議室端末90と通信することは困難である。このため、サーバ通信部91はポーリング(定期的に会議管理サーバ30と通信する)やWebSocketなどの通信技術で会議管理サーバ30と通信する。本実施形態のサーバ通信部91は端末装置通信部92が端末装置60から受信した会議識別情報や会議室IDを会議管理サーバ30に送信する。また、現在時刻や当日の会議室の予約情報等を受信できる。また、サーバ通信部91は会議管理サーバ30から制御情報を受信する。サーバ通信部91は、図6のCPU601がプログラム604pを実行し無線LAN通信部613を制御すること等により実現される。
端末装置通信部92は端末装置60と通信する。本実施形態では会議識別情報等を受信する。端末装置通信部92は、図6のCPU601がプログラム604pを実行し近距離無線通信部615又はRFタグリーダ/ライタ622を制御すること等により実現される。
電子機器通信部95は、電子機器70と通信する。本実施形態ではサーバ通信部91が受信した制御情報を電子機器70に送信する。電子機器通信部95は、図6のCPU601がプログラム604pを実行し無線LAN通信部613を制御すること等により実現される。
表示制御部94はディスプレイ616に端末アプリ90aが生成する画面を表示する。この画面にはチェックイン、チェックアウトなどのメニューが表示される。表示制御部94は、図6のCPU601がプログラム604pを実行しディスプレイ616を制御すること等により実現される。
操作受付部93は会議室端末90に対する各種の操作を受け付ける。操作受付部93は図6のCPU601がプログラム604pを実行しタッチパネル617を制御すること等により実現される。
また、会議室端末90は記憶部99を有している。記憶部99は図6のROM602及びEEPROM604等により実現される。記憶部99には会議室ID、及び電子機器70のIPアドレスが記憶されている。
<<電子機器70>>
電子機器70は、基本機能部71、制御部72、及び、通信部73を有する。電子機器70が有するこれら各機能部は、図7に示された各構成要素のいずれかが、SSD104からRAM103に展開されたプログラム104pに従ったCPU101からの命令により動作することで実現される機能又は手段である。このプログラム104pは、プログラム配信用のサーバから配信されるか又は記憶媒体に記憶された状態で配布される。
通信部73は会議室端末90と通信する。本実施形態では制御情報を受信する。通信部73は、図7のCPU101がプログラム104pを実行しネットワークコントローラ105を制御すること等により実現される。
制御部72は電子機器70の全体を制御する。本実施形態では制御情報に従って、電子機器70の電源をON又はOFFに制御する。制御部72は、図7のCPU101がプログラム104pを実行すること等により実現される。
基本機能部71は、電子機器70の基本的な機能を提供する。すなわち、ユーザの手書きのストロークを表示したり、PCの映像をディスプレイ3に表示したりする。基本機能部71は、図7のCPU101がプログラム104pを実行し図7のハードウェア要素を制御すること等により実現される。
<会議室の予約>
図10を用いて会議室の予約について説明する。図10は予約管理サーバ20が提供し端末装置60が表示する会議室の予約画面401の一例である。予約画面401は、会議名入力欄402、開始時刻入力欄403、終了時刻入力欄404、及び、会議室入力欄405を有する。参加予定は予約管理サーバ20のアカウントで予約管理サーバ20にログインし、予約画面401に必要事項を入力する。会議室入力欄405はプルダウンで選択可能な会議室名と会議室ID等を表示するので、ユーザは会議室名を選択することで会議室を選択できる。
また、予約画面401にはカレンダー選択欄406が表示される。カレンダー選択欄406はグループで共有するカレンダーをユーザが選択する欄である。従って、ユーザはカレンダーを使い分けることができる。
<事前の登録作業の画面例>
図1で説明した事前の登録作業で設備予約システム100の管理者又は参加予定者が入力する画面例について説明する。
図11は、登録端末50又は端末装置60に表示される登録作業初期画面411の一例である。登録作業初期画面411は例えば会議管理サーバ30により提供されるWebページである。登録作業初期画面411は通知ロボットの追加ボタン412、管理者ログインボタン413、及び、予約管理サーバログインボタン414を有する。通知ロボットの追加ボタン412が押下されると図12の通知ロボット登録画面421に遷移し、管理者ログインボタン413が押下されると図13のドメイン管理画面431に遷移し、予約管理サーバログインボタン414が押下されると図14のアカウント対応付画面441に遷移する。
図12は登録端末50に表示される通知ロボット登録画面421の一例を示す。通知ロボット登録画面421はチャットサーバ10により提供される。図12(a)の通知ロボット登録画面421−1はチャットシステムのチームID入力欄422、及び、続くボタン423を有する。設備予約システム100の管理者は通知ロボットの追加先のチームIDをチームID入力欄422に入力し、続くボタン423を押下する。追加先のグループ名とは、会議を行う参加予定者のグループである。
図12(b)の通知ロボット登録画面421−2はアカウント入力欄424、及び、パスワード入力欄425を有する。設備予約システム100の管理者は図12(a)で入力したチームIDに属するメンバのアカウントとパスワードを入力する。すなわち、チームに通知ロボットを追加する権限が認証される。
図12(c)の通知ロボット登録画面421−3は、通知ロボットが通知する通知先アカウント表示欄426と認証ボタン427を有する。通知先アカウント表示欄426には特定のアカウント宛を選択してもよいし、グループを選んでもよい。プルダウンキー426aの押下により、グループの他のメンバのアカウントも表示される。認証ボタン427が押下されると通知ロボットが追加される。
図12(d)の通知ロボット登録画面421−4は、メッセージ入力欄428を有する。メッセージ入力欄428は、通知ロボットが発言するテキストを試験的に設備予約システム100の管理者が入力する欄である。これにより、グループのメンバに通知ロボットが入力したテキストが通知されるかどうかを設備予約システム100の管理者(及び各メンバ)が確認できる。
図13は登録端末50に表示されるドメイン管理画面431の一例を示す。ドメイン管理画面431は会議管理サーバ30により提供される。ドメイン管理画面431は設備予約システム100を利用できる顧客のドメインを設備予約システム100の管理者が設定するための画面である。設備予約システム100は登録されたドメインを一部に含むアカウントを有する顧客が使用する。図13(a)のドメイン管理画面431−1は管理者アカウント入力欄432とパスワード入力欄433を有する。設備予約システム100の管理者は設備予約システム100の管理者アカウントとパスワードで会議管理サーバ30にログインする。
図13(b)と図13(c)はドメイン管理画面431−2であり、図13(c)は図13(b)の拡大図である。ドメイン管理画面431−2は、ドメイン名入力欄435、アカウント入力欄436、及び、登録ボタン437を有する。ドメイン名入力欄435には、予約管理サーバ20を利用する顧客のドメインが入力される。アカウント入力欄436には予約管理サーバ20を利用する顧客の管理者のアカウントが入力される。
つまり、会議管理サーバ30に、顧客の予約管理サーバ20のドメインとアカウントが登録される。顧客はこのアカウント(予約管理サーバ20が発行)を使って会議管理サーバ30にログインし、会議管理サーバ30は登録されたアカウントで予約管理サーバ20にログインして予約情報を取得し、登録されたドメインを含む予約者アカウントを通知の対象とする。
なお、図13(b)(c)ではチェックマークが示すようにドメインはすでに登録された状態となっている。これにより設備予約システム100の管理者はチェックマークをチェックするだけでドメインを登録でき、ドメインのスペルの入力ミスが生じることを回避できる。
図14は端末装置60に表示されるアカウント対応付画面441の一例を示す。アカウント対応付画面441は会議管理サーバ30により提供されるWebページである。アカウント対応付画面441はチャットシステムのグループ名と予約管理システムのアカウントを対応付けるための画面である。図14(a)のアカウント対応付画面441−1には、定のユーザの予約管理システムのアカウントが入力される。このアカウントは予約管理サーバ20が発行したものである。参加予定者は自分が属する企業(顧客)の管理者のアカウントを選択してログインする。
図14(b)のアカウント対応付画面441−2は、ログインした顧客の管理者のアカウント443(予約管理サーバ20のアカウント)、チャットシステム選択欄444、チャットシステムのアカウント入力欄445、チャットシステムのチームIDの入力欄446、及び、チャットシステムのグループ名の選択欄446−2を有する。参加予定者はチャットシステム選択欄444で通知ロボットを追加したチャットシステムを選択する。チャットシステムのアカウント入力欄445にチャットシステムの自分のアカウントを入力する。チャットシステムのチームIDの入力欄446に、通知ロボットを追加したチャットシステムのチームIDを入力し、グループ名の選択欄446−2にグループ名を入力する。
図14(c)のアカウント対応付画面441−3はチャットシステムのグループ名入力画面を示し、図14(d)のアカウント対応付画面441−4はチャットシステムへのログイン画面を示す。参加予定者は図12と同様にグループ名欄447でグループ名を指定し、アカウント入力欄448でチャットシステムのアカウントを入力し、パスワード入力欄449でパスワードを入力してチャットシステムにログインすることで、図14(b)の入力内容が適切であることが確認される。確認できた場合、会議管理サーバ30がグループ名と顧客の管理者のアカウントを対応付けて登録する。
<事前の登録作業のシーケンス>
まず、通知ロボットのトークンについて説明する。通知ロボットは会議管理サーバ上に1つ存在すればよい。会議管理サーバ30は通知ロボットのトークンを取得する処理を会議管理サーバ30の運用が開始される前に行う。
例えば、チャットサーバ10は会議管理サーバ30から通知ロボットの追加要求に対し、通知ロボットを生成しこの通知ロボットに一意のトークンを付与する。チャットサーバ10の通信部11は通知ロボットのトークンを会議管理サーバ30に送信する。会議管理サーバ30の情報対応付部32は通知ロボットのトークンを管理する。これにより、会議管理サーバ30は通知ロボットとして通知を送信できる。
また、このトークンはチャットシステム内で会議管理サーバ30が通知ロボットとして通知を行うための情報であり、通知ロボットの識別情報となる。
図15は、通知ロボットの登録の手順を示すシーケンス図の一例である。
S1:登録端末50のサーバ通信部91は通知ロボットの追加要求を会議管理サーバ30に送信する。この追加要求は会議管理サーバ30が表示する図11の登録作業初期画面411で追加ボタン412が選択されることで送信される。
S2:会議管理サーバ30の通信部31はチームへの通知ロボットの追加要求と共に、通知ロボットの識別情報をチャットサーバ10に送信する。
S3:これにより、チャットサーバ10は登録端末50に通知ロボット登録画面421−1を表示させる。
S4:設備予約システム100の管理者は通知ロボット登録画面421−1にグループ名を入力する。登録端末50の操作受付部52はチームIDの入力を受け付け、通信部51がチャットサーバ10に送信する。
S5:チャットサーバ10はチームIDを受信して、通知ロボット登録画面421−2を登録端末50に送信する。
S6:登録端末50の通信部51は通知ロボット登録画面421−2を受信し、表示制御部53が表示する。設備予約システム100の管理者はチャットシステムのアカウント名とパスワード(グループのメンバのうち誰か一人)を入力する。登録端末50の操作受付部52はチャットシステムのアカウント名とパスワードの入力を受け付け、通信部51がチャットサーバ10に送信する。
S7:チャットサーバ10はチャットシステムのアカウント名とパスワードを受信すると認証して、認証が成立すると通知ロボット登録画面421−3を登録端末50に送信する。
S8:登録端末50の通信部51は通知ロボット登録画面421−3を受信し、表示制御部53が表示する。設備予約システム100の管理者は認証ボタン427を押下する。登録端末50の操作受付部52は認証ボタン427の押下を受け付け、認証OKをチャットサーバ10に送信する。
S9:チャットサーバ10の通信部11は認証OKを受信し、設備予約システム100の管理者が入力したチームIDを会議管理サーバ30に送信する。
S10:会議管理サーバ30の情報対応付部32はチームIDと通知ロボットのトークンを対応付けて管理する。
図16は、顧客の予約管理サーバ20のアカウントを登録する手順を示すシーケンス図の一例である。
S1:設備予約システム100の管理者は登録端末50を操作して会議管理サーバ30にアクセスし、ドメイン管理画面431−1を表示させる。
S2:設備予約システム100の管理者はドメイン管理画面431−1に設備予約システム100の管理者のアカウント名、パスワードを入力する。登録端末50の操作受付部52はこれらの入力を受け付け、通信部51が会議管理サーバ30に送信する。
S3:アカウント名とパスワードによる認証が成立すると、会議管理サーバ30の通信部31はドメイン管理画面431−2を登録端末50に送信する。
S4:登録端末50の通信部51はドメイン管理画面431−2を受信し、表示制御部53が表示する。設備予約システム100の管理者は予約管理サーバ20の顧客のドメイン及び顧客の管理者のアカウントを入力する。登録端末50の操作受付部52は予約管理サーバ20の顧客のドメイン、及びアカウントを受けつけ、通信部51が会議管理サーバ30に送信する。
S5:会議管理サーバ30の通信部31は顧客の予約管理サーバ20のドメイン及びアカウントを受信して、情報対応付部32は顧客ドメインDB495に顧客の予約管理サーバ20のドメインとアカウントを対応付けて登録する。
図17は、チャットシステムのグループと予約管理サーバ20のアカウントを対応付ける手順を示すシーケンス図の一例である。
S1:参加予定者は端末装置60を操作して会議管理サーバ30にアクセスし、アカウント対応付画面441−1を表示させる。
S2:参加予定者は図16で登録されたアカウント名を選択してログインする。従って、顧客の管理者の予約管理サーバ20におけるアカウントが会議管理サーバ30において特定される。
S3:会議管理サーバ30はログインを許可するとアカウント対応付画面441−2を端末装置60に送信する。
S4:参加予定者はアカウント対応付画面441−2にチャットシステムのアカウント名とグループ名を入力する。端末装置60の操作受付部61bはアカウント名、グループ名及びチームIDの入力を受け付け、通信部61aがこれらを会議管理サーバ30に送信する。ステップS2で選択したアカウントによって予約管理サーバ20に対して予約された会議の通知先はグループ名及びチームIDによって特定される。
S5:会議管理サーバ30の通信部31はこれらを受信し、情報対応付部32はアカウント名とグループ名の検証のため、端末装置60をチャットサーバ10にリダイレクトさせる。これにより、端末装置60はアカウント対応付画面441―3を表示する。このアカウント対応付画面441にはチームIDが含まれている。
S6:参加予定者が操作することで端末装置60の操作受付部61bが操作を受け付け、通信部61aがチームIDをチャットサーバ10に送信する。
S7:チャットサーバ10はこのチームIDに含まれるメンバのアカウントを取得するため、アカウント対応付画面441−4を端末装置60に送信する。
S8:参加予定者はチャットシステムのアカウント名とパスワードを入力する。端末装置60の操作受付部61bが入力を受け付け、通信部61aがアカウント名とパスワードをチャットサーバ10に送信する。
S9:チャットサーバ10はチャットシステムのアカウント名とパスワードを認証し、認証が成立すると確認できた旨を会議管理サーバ30に送信する。図ではこの場合のリダイレクトの処理は省略されている。
S10:会議管理サーバ30の情報対応付部32はチームID及びグループ名を含むグループを識別する情報と、ステップS2で特定された予約管理サーバ20のアカウントとを対応付情報DB491に対応付ける。
以上の処理で、顧客が予約管理サーバ20で会議室を予約すると、予約管理サーバ20が会議室の予約に関する情報を、チャットサーバ10を介して参加予定者の各端末装置60に通知できる。
<会議室の予約に関する情報の通知のタイミング>
図18は会議室の予約に関する情報の通知のタイミングを説明する図の一例である。
・タイミング1:通知設定DB496に登録された通知のタイミングになると、まず、会議管理サーバ30の会議情報通知部37が会議室の予約に関する情報を端末装置60に通知する。
・タイミング2:10分間、参加予定者から応答がない場合、会議情報通知部37は予約管理サーバ20に対し自動的にキャンセルする。
・タイミング3:会議室を利用するという応答があった場合、会議の開始時刻の10分前に、会議管理サーバ30の会議情報通知部37は再度、会議室の予約に関する情報を通知する。本実施形態では一例として会議識別情報が送信される。
・タイミング4:会議の開始時刻
・タイミング5:会議管理サーバ30は、開始時刻の経過後10分経っても会議室端末90からチェックインの通知がない場合、会議管理サーバ30のチェックイン管理部38は予約管理サーバ20に対し自動的にキャンセルする。
なお、会議の参加予定者のうち一人でも会議室の予約に関する情報に応答すれば、予約はキャンセルされない。ただし、参加予定者の全員の応答と必要としてもよいし、半分以上の応答を必要としてもよい。
<会議室の予約に関する情報の通知の処理>
図19は、会議管理サーバ30が会議室の予約に関する情報を通知する手順を示すシーケンス図の一例である。
S1:会議管理サーバ30の予約情報取得部33は、顧客ドメインDB495から任意の顧客のドメインを取得する。
S2:次に、予約情報取得部33は通知設定DB496から顧客の通知設定を読み出す。
S3:予約情報取得部33は、図13で入力された顧客ドメインDB495のアカウントでログインして予約管理サーバ20から予約情報を取得する。取得する期間は、通知設定に通知するタイミングとして設定されている期間である。例えば、1ヶ月前に会議室の予約に関する情報を通知する場合、1ヶ月先までの予約情報を取得する。
S4:予約情報取得部33は予約管理サーバ20から取得した予約情報を会議管理情報DB493に記憶させる。
S5:通知判断部34は、予約情報を参照して会議室の予約に関する情報を通知する(リマインドする)タイミングか否かを判断する。詳細を図20のフローチャート図で説明する。
図20は、通知判断部34が会議室の予約に関する情報を通知するか否かを判断する手順のフローチャート図の一例である。
通知判断部34は顧客ドメインDB495の顧客のドメイン名を、予約情報から検索する(S10)。顧客のドメインを指定して予約情報を取得しているので、予約情報の全ての予約者アカウント又は参加予定者アカウントがドメインを含む。しかし、所定期間の任意の予約情報を取得して通知判断部34が顧客のドメインで検索してもよい。ここでは、予約情報に顧客ドメインDB495の顧客のドメイン名を含む予約者アカウント又は参加予定者アカウントが含まれていたとする。
次に、通知判断部34は通知するタイミングの予約情報があるか否かを判断する(S20)。すなわち、会議室の予約の開始時刻から逆算して通知設定と一致する場合(又は経過しているが通知していない場合)は通知すると判断する。ステップS20の判断がNoの場合、通知されないので図20の処理は終了する。
ステップS20の判断がYesの場合、通知判断部34は予約情報から取得した予約者アカウントを対応付情報DB491から検索し、チームIDとグループ名を含むグループを識別する情報を特定する(S30)。会議管理サーバ30は、チームID、グループ名(グループを特定する情報)及び通知ロボットのトークンを指定すれば該グループに対して通知が可能になる。
会議情報通知部37は特定したチームIDとグループ名を含むグループを識別する情報を用いて、通知ロボットとして会議室の予約に関する情報を参加予定者に通知する(S40)。
図21は、会議室の予約に関する情報を会議管理サーバ30が参加予定者に通知するシーケンス図の一例である。
S1:会議情報通知部37は会議管理サーバ30の通知ロボットであることを示すトークンと共に特定されたチームIDとグループ名を指定してメッセージ(会議室の予約に関する情報)をチャットサーバ10に送信する。なお、会議識別情報は会議室の予約に関する情報の通知の前に作成されればよいため、このタイミング(図18のタイミング1)で送信してもよい。また、端末装置60からの応答がどの予約に対するものか特定するために予約IDが含まれている。会議情報通知部37は会議管理情報DB493のステータスに通知済み設定する。
S2:チャットサーバ10のテキスト処理部12は指定されたトークンの通知ロボットで、チームIDとグループ名で特定されるメンバの端末装置60にメッセージを送信する。 S3:端末装置60のチャット通信部62はメッセージを受信し、テキスト表示部63がメッセージを表示する。このメッセージには後述の図22に示すように表示部品として利用するボタンとキャンセルボタンが含まれる。参加予定者がメッセージの利用するボタン又はキャンセルボタンを押下すると、端末装置60の操作受付部61bが押下を受け付ける。
S4:端末装置60の通信部61aは利用するボタンが押下された旨又はキャンセルボタンが押下された旨と予約IDをチャットサーバ10に送信する。
S5:チャットサーバ10の通信部21は利用するボタンが押下された旨又はキャンセルボタンが押下された旨と予約IDを会議管理サーバ30の通知ロボット宛に送信する。会議管理サーバ30の通信部31は利用するボタンが押下された旨及び予約IDを受信し、会議情報通知部37は予約IDで特定される予約が参加予定者により確認されたことを検出する。会議情報通知部37は会議管理情報DB493のステータスに確認済みを設定する。また、キャンセルボタンが押下された場合、会議情報通知部37は会議管理情報DB493のステータスにキャンセルを設定する。
S6:ステップS6は予約がキャンセルされた場合に実行される。会議情報通知部37は予約IDを指定してその旨を予約管理サーバ20へ送信する。これにより空予約が防止される。
更に、会議情報通知部37は予約が確定した旨又はキャンセルされた旨を、通知ロボットを介して参加予定者に通知することができる。
<テキストの表示画面>
図22は、端末装置60に表示される会議室の予約に関する情報の一例を示す。図22(a)は通知設定DB496のタイミングで通知される会議室の予約に関する情報の一例である。このようなメッセージは例えば図18のタイミング1で表示される。
「2017-05-18 20:47:00 会議室Aにて、会議(定例)が予約されています。予約通り利用する場合は"利用する"、利用しない場合は"キャンセルする"を選択してください。10分間返答がない場合、自動的に予約はキャンセルされます。」
参加予定者はメッセージを見て利用するボタン451及びキャンセルボタン452のどちらを押下するか等、適切な対応を取ることができる。また、利用するボタン451及びキャンセルボタン452のどちらも押下しない場合、会議管理サーバ30の会議情報通知部37は10分間で自動的に会議室の予約をキャンセルするので、空予約を低減できる。
なお、利用するボタン451及びキャンセルボタン452の押下は会議管理サーバ30に通知される。利用するボタン451及びキャンセルボタン452にはそれぞれボタンの内容、会議管理サーバ30のURL(アドレス情報)、及び、予約IDが対応付けられており(埋め込まれており、リンクされており)、会議管理サーバ30の会議情報通知部37はどの予約情報に対するどのような応答かを検出できる。
また、参加予定者が利用するボタン451を押下すると、会議情報通知部37がチャットサーバ10を介して確定した旨453を端末装置60のチャットアプリ60aに送信する。参加予定者がキャンセルボタン452を押下すると、会議情報通知部37がチャットサーバ10を介してキャンセルした旨454を端末装置60のチャットアプリ60aに送信する。
図22(b)はキャンセルボタンが押下されずに予約がキャンセルされた旨のメッセージを示す。
「予約した会議室「会議(定例) 2017-05-18 20:47:00 会議室A」は
キャンセルされました。」
参加予定者はメッセージを見て会議室がキャンセルされたことを把握できる。
図22(c)は利用するボタン451が押下され利用が確定された後に、更に、端末装置60に表示される会議室の予約に関する情報を示す。
「会議(定例) 2017-05-18 20:47:00 会議室A」の利用を確定しました。
下記のURLからチェックインしてください。
XXXX://XXX.tk?receptID=NNN…N」
Nは任意の数字又はアルファベットである。このようなメッセージは例えば図18のタイミング3で表示される。すでに利用が確定されている場合、本実施形態ではメッセージに会議識別情報「NNN…N」が含まれる。参加予定者はこの会議識別情報を会議室端末90に入力する(端末装置60が送信する)。なお、会議識別情報「NNN…N」は図22(a)の会議室の予約に関する情報に含めてもよい。また、同じ会議識別情報が複数回、通知されてもよい。
なお、参加予定者は確定後もキャンセルボタン452の押下により予約をキャンセルすることができる。この場合も、会議情報通知部37がチャットサーバ10を介してキャンセルした旨454を端末装置60のチャットアプリ60aに送信する。
図22(c)の「XXXX://XXX.tk」は会議アプリのURLである。このURLがタップされると会議アプリが起動する。パラメータで会議識別情報である「NNN…N」が指定されているので、端末装置60は会議アプリを起動すると共に会議識別情報を会議アプリに通知する。これにより会議アプリは予め保持している会議管理サーバ30のIPアドレス等を用いて会議管理サーバ30と通信し、会議識別情報を含む2次元コードを要求できる。会議管理サーバ30のチェックイン管理部38は「NNN…N」がコード化された2次元コードを生成し、端末装置60に送信する。端末装置60は2次元コードを保持できる。この2次元コードはチェックインに使用される場合がある。
図22(d)はチェックインが受け付けられた旨のメッセージを示す。チェックインについての詳細は後述する。
「予約した会議室「定例会議 2017-05-18 20:47:00 会議室A」
のチェックインを受け付けました。」
参加予定者はメッセージを見て参加予定者の一人以上がチェックインしたことを把握できる。なお、だれがチェックインしたのかを表示してもよい。
<会議管理サーバの動作手順>
図23は、会議管理サーバ30が会議室の予約に関する情報を通知する手順を示すフローチャート図の一例である。
上記のように、まず、会議情報通知部37は会議室の予約に関する情報を通知ロボットから通知する(S10)。
会議情報通知部37は「利用する」又は「キャンセルする」の応答を受信したか否かを判断する(S20)。
キャンセルする旨の応答を受信した場合、会議情報通知部37は、再度、通知ロボットからキャンセルの旨を通知する(S30)。なお、応答に含まれる予約IDにより予約者アカウントを特定でき、予約者アカウントからグループを特定できる。会議管理情報DB493のステータスにはキャンセルが登録される。
利用する旨の応答を受信した場合、会議情報通知部37は、再度、通知ロボットから利用確定の旨を通知する(S40)。会議管理情報DB493のステータスには利用確定が登録される。
次に、会議情報通知部37は開始時刻から所定時間前になったか否かを判断する(S50)。所定時間前になるまでは待機する。
所定時間前になると会議情報通知部37は会議識別情報と会議管理サーバのURLを通知ロボットから通知する(S60)。会議情報通知部37は会議識別情報を生成し、予約ID及び会議室IDと対応付けて会議識別情報DB494に登録する。こうすることで空予約を抑制しやすくなり、2次元コードなどをユーザが取得できる。
一方、「利用する」又は「キャンセルする」の応答を受信しない場合(S20のNo)、会議情報通知部37は通知設定DB496に基づく通知から所定時間が経過したか否かを判断する(S70)。所定時間が経過するまでステップS20とS70の判断を繰り返す。
そして、所定時間が経過しても「利用する」又は「キャンセルする」の応答を受信しない場合(S70のYes)、会議情報通知部37は、通知ロボットからキャンセルの旨を通知する(S80)。会議管理情報DB493のステータスにはキャンセルが登録される。
<個別の参加予定者への通知>
チャットサーバ10の通知ロボットは同じグループのメンバの全員にリアルタイムにメッセージを送信できる。しかしながら、本実施形態の設備予約システム100はメッセージの送信先をグループ内の一部のメンバに制限することもできる。この場合、通知を行いたい参加予定者すべての予約管理サーバ20のアカウントが図10の予約画面401にて指定される必要がある。
<<方法1>>
例えば、会議室の予約に関する情報の通知先が予め定められている場合がある。この場合、会議情報通知部37は定められている参加予定者にだけ会議室の予約に関する情報を通知すればよい。例えば、予約者アカウントの参加予定者に通知することができる。なお、チャットサーバ10では、一般に、通知ロボットがグループのメンバの全員にメッセージを送信してしまうので、会議情報通知部37がチャットサーバ10の通知ロボットに通知させる際は、メンバを指定して通知するように要求する。この場合、会議管理サーバ30は通知を行いたい参加予定者すべてのチャットサーバ10のアカウントと予約管理サーバ20のアカウントを対応付けて記憶している必要がある。
<<方法2>>
設備予約システム100の管理者又は参加予定者が予め通知リストを設定しておく方法がある。
参加予定者がAさん、Bさんの場合の通知リスト:Aさん、Bさん
参加予定者がAさん、Bさん、Cさんの場合の通知リスト:Aさん、Bさん、Cさん
参加予定者がAさん、Bさん、Cさん、Dさんの場合の通知リスト:グループ全体
会議情報通知部37は予約情報に含まれる参加予定者アカウントと予約者アカウントのうち、通知リストに設定された参加予定者に通知すると決定する。
<<方法3>>
チャットシステム側のグループを考慮して、予約情報の予約者アカウントと参加予定者アカウントと最も近いメンバを有するグループのうち、参加予定者にのみ通知する。
・ケース1
チャットシステム側のグループ:Aさん、Bさん
予約情報の参加予定者:Aさん、Bさん
の場合、会議情報通知部37はAさん、Bさんに通知する。
・ケース2
チャットシステム側のグループ1:Aさん、Bさん、
チャットシステム側のグループ2:Aさん、Cさん、Dさん
予約情報の参加予定者:Aさん、Bさん
の場合、グループ1の方が近いので、会議情報通知部37はAさん、Bさんに通知する。この場合、通知ロボットが上記グループ1、グループ2それぞれに追加されている必要があり、会議管理サーバ30は各グループと該グループに所属しているチャットサーバ10のアカウントと予約管理サーバ20のアカウントとを対応付けて記憶している必要がある。
<会議室端末の初期設定>
会議室端末90には会議室ID、会議室名、及び、会議管理サーバ30のURLなどが設定されていることが好ましい。このため、設備予約システム100の管理者は会議室端末90に初期設定を行う。
図24は、会議室端末90の初期設定に関するシーケンス図の一例である。
S1:設備予約システム100の管理者は登録端末50を操作して会議管理サーバ30にログインする。会議管理サーバの初期設定部39はメニュー画面を登録端末50に送信する。
S2:設備予約システム100の管理者はメニュー画面から会議室一覧を押下して、登録端末50の表示制御部53は会議室一覧画面を表示する。
S3:設備予約システム100の管理者は自分がいる(初期設定しようとする)会議室を会議室一覧画面で押下する。登録端末50の通信部51は会議室を特定する情報を会議管理サーバの初期設定部39に送信する。会議管理サーバ30の初期設定部39は2次元コードを生成する。2次元コードには、会議室ID、会議室名、会議管理サーバ30のURLが含まれる。これにより、会議管理サーバ30が管理する会議室IDと会議室名が会議室端末90に登録できるようになる。また、会議管理サーバ30のURLにより会議室端末90から会議管理サーバ30に通信できるようになる。
S4:設備予約システム100の管理者は会議室端末90を操作して端末アプリを起動させる。
S5:次に、端末アプリ90aが表示する設定メニューを押下する。会議室端末90の操作受付部93は押下を受け付け、表示制御部94が操作に応じた画面を表示する。
S6:設備予約システム100の管理者は会議室登録メニューを押下する。操作受付部93は操作を受け付け、会議室端末90の端末装置通信部92は2次元コードの読み取りを開始する。
S7:登録端末50の表示制御部53はステップS3の2次元コードを表示しているので、会議室端末90の端末装置通信部92は2次元コードを読み取る。
S7.1:会議室端末90のサーバ通信部91は会議管理サーバ30のURLで会議管理サーバ30と通信し、接続できるかどうかを検証する。例えばAckが却ってくることを確認する。
S7.1.1:会議室端末90のサーバ通信部91は会議管理サーバ30から最新イベント(現在の時間帯の会議室の予約情報、チェックイン状態、制御情報等)を取得する。チェックインされていない場合、会議室端末90は入室待ち画面を表示する。
S8:チェックインされていない場合、会議室端末90はBluetooth(登録商標) Low Energyのアドバタイズを開始する。これにより、端末装置60は会議室端末90と通信できるようになる。
図25は、一般利用者が予約状況を確認する際のシーケンス図の一例である。一般利用者は会議室を予約しようとする者など、一般的なユーザである。
S1:一般利用者は会議室端末90を操作して予約状況を確認するメニューを表示させる。
S1.1:会議室端末90のサーバ通信部91は初期設定された会議室IDと会議管理サーバ30のURLで会議管理サーバ30に予約状況を問い合わせる。会議管理サーバ30は予約情報DBの予約情報のうち会議室IDで特定される予約情報を会議室端末90に送信する。送信される予約情報は当日分だけでもよいし、1週間先、又は1ヶ月先など、一般利用者が設定できる。これにより、一般利用者は自分がいる会議室の予約状況を確認できる。
<チェックイン>
以下では、いくつかの方法でチェックインする際の手順を説明する。
<<2次元コードを用いたチェックイン>>
図26は、2次元コードを用いたチェックインの手順を示すシーケンス図の一例である。
S1:上記のように、会議管理サーバ30の会議情報通知部37は会議の開始時刻までに会議識別情報を生成する。
S2:図22(c)に示したように、会議管理サーバ30の会議情報通知部37は会議室の予約に関する情報と共に会議識別情報をチャットサーバ10(端末装置60)に送信している。端末装置60は会議識別情報を保持している。
S3:参加予定者は会議室の予約に関する情報に含まれる会議管理サーバ30のURLを押下する。端末装置60の操作受付部61bはURLの押下を受け付ける。端末装置60ではチャットアプリ60aが有するブラウザが起動する。
S3.1:端末装置60の通信部61aはURLで指定される会議管理サーバ30に会議識別情報と共に2次元コードを要求する。会議管理サーバ30のチェックイン管理部38は会議識別情報をコード化した2次元コードを生成し、通信部31が2次元コードを端末装置60に送信する。端末装置60の表示制御部66(ブラウザ)は2次元コードを表示する。この2次元コードには会議識別情報が含まれる。
S3.2:端末装置60のサーバ通信部65は会議識別情報を指定して2次元コードを会議管理サーバ30に要求する。
S4:参加予定者は会議室端末90が表示する2次元コードでチェックインを受けつけるメニューを選択する。会議室端末90の画面例を図32に示す。
S4.1:会議室端末90はカメラを起動する。
S5:参加予定者は端末装置60が表示する2次元コードを会議室端末90のカメラに近づける。
S5.1:会議室端末90の端末装置通信部92は2次元コードを検知し、デコードすることで会議識別情報を取得する。
S5.1.1:会議室端末90のサーバ通信部91は会議室IDと2次元コードに含まれる会議識別情報を会議管理サーバ30に送信する。会議管理サーバ30のチェックイン管理部38は受信した会議識別情報が、直近に予定されている会議の会議識別情報と一致するか否かを判断する。すなわち、会議識別情報は会議室IDに対応付けて会議識別情報DB494に登録されている。しかし、開始時刻のかなり前からチェックインを認めることは適切でないので、会議識別情報DB494の予約IDで会議管理情報DB493を参照して開始時刻を特定する。そして、例えば、現在時刻が会議の開始時刻の5〜10分前くらい(所定時間前)である場合にチェックインを認める。一致する場合には、会議管理サーバ30のチェックイン管理部38は会議室端末90に会議時間と共にチェックイン可又は不可を応答する。なお、5〜10分は一例であって、同じ会議室で予約が入っていなければ5〜10分以上前でもチェックインを認めてもよい。なお、会議管理サーバ30の通信部31は開始時刻を返す。
チェックイン可の場合ステップS6が実行される。
S6:会議室端末90の表示制御部94は、会議室が利用中である旨(利用中画面)を表示する。
チェックイン不可の場合ステップS7が実行される。
S7:会議室端末90の表示制御部94は、エラーメッセージを表示する。例えば、「予約時刻はまだ先です」等を表示する。
S7.1:会議室端末90の表示制御部94は、入室待ち(チェックイン待ち)を表示する。
<<会議識別情報を参加予定者が手入力するチェックイン>>
図27は、参加予定者が端末装置60の携帯を忘れた場合のチェックインの手順を示すシーケンス図の一例である。参加予定者は覚えている又は記録してある会議識別情報を使ってログインする。
S1:上記のように、会議管理サーバ30の会議情報通知部37は会議の開始時刻までに会議識別情報を生成する。
S2:図22(c)に示したように、会議管理サーバ30の会議情報通知部37は会議室の予約に関する情報と共に会議識別情報をチャットサーバ10(端末装置60)に送信している。端末装置60は会議識別情報を保持している。しかし、参加予定者は端末装置60を保持していない。
S3:参加予定者は端末装置60のチャットアプリ60aを操作してアプリ通信部64に会議アプリ60bを起動させる。会議室端末90の画面例を図32に示す。
S3.1:これにより、会議アプリ60bが起動し会議室の予約に関する情報が保持される。
S4:参加予定者は会議識別情報を入力する。会議室端末90の操作受付部93は会議識別情報を受け付ける。
S5:参加予定者はOKボタン(確定ボタン)を押下する。会議室端末90の操作受付部93はOKボタンの押下を受け付ける。
以降の処理は図26と同様になる。このように、端末装置60がなくても会議識別情報を覚えていれば参加予定者がチェックインできる。
<<近距離無線通信によるチェックイン>>
図28は、近距離無線通信で参加予定者がチェックインするシーケンス図の一例である。
S1:上記のように、会議管理サーバ30の会議情報通知部37は会議の開始時刻までに会議識別情報を生成する。
S2:図22(c)に示したように、会議管理サーバ30の会議情報通知部37は会議室の予約に関する情報と共に会議識別情報をチャットサーバ10(端末装置60)に送信している。端末装置60は会議識別情報を保持している。
S3:参加予定者は会議室の予約に関する情報に含まれる会議アプリのURLを押下する。端末装置60の操作受付部61bはURLの押下を受け付ける。
S3.1:チャットアプリは会議アプリを起動する。端末装置60では会議アプリ60bが起動する。会議アプリ60bは会議識別情報を保持する。
S4:参加予定者は端末装置60を会議室端末90に近づける。
S5:端末装置60の端末通信部68は会議室端末90を検出する。例えば、Bluetooth Low Energy(登録商標)では会議室端末90がペリフェラル、端末装置60がセントラルである。
S5.1:端末装置60の端末通信部68はBluetooth Low Energy (登録商標)で会議室端末90と接続する。
S5.2:端末装置60の端末通信部68は会議識別情報の書き込み用のキャラクタリスティックに会議識別情報を書き込んで会議室端末90に送信する。
S6:会議室端末90の端末装置通信部92は会議識別情報を検知する。
S6.1:会議室端末90のサーバ通信部91は会議室IDと会議識別情報を会議管理サーバ30に送信する。会議管理サーバ30のチェックイン管理部38は受信した会議識別情報が、直近に予定されている会議の会議識別情報と一致するか否かを判断する。チェックイン管理部38はチェックイン結果を会議室端末90に送信する。
S6.2:会議室端末90のサーバ通信部91はチェックイン結果を受信し、端末装置通信部92は、チェックイン結果の読み取り用のキャラクタリスティックにチェックイン結果を書き込んで端末装置60に送信する。
S5.3 S5.4:端末装置60の端末通信部68はチェックイン結果の読み取り用のキャラクタリスティックを適宜、会議室端末90から取得することでチェックイン結果を取得する。
S5.5:端末装置60の端末通信部68はBluetooth Low Energy (登録商標)を切断する。
チェックインが可である場合、以下が実行される。
S6.3:会議室端末90の端末装置通信部92はBluetooth Low Energy (登録商標)のアドバタイズを終了する。
S6.4:会議室端末90のサーバ通信部91は会議管理サーバ30と通信し、最新イベントを取得する。
S6.5:会議室端末90の表示制御部94は、会議室が利用中である旨(利用中画面)を表示する。
S6.6:その後、会議の終了時刻が経過する。参加予定者がチェックアウトする。会議室端末90の表示制御部94は、入室待ち(チェックイン待ち)を表示する。チェックアウトの処理は図29にて説明される。
S6.7:会議室端末90の端末装置通信部92はBluetooth Low Energy (登録商標)のアドバタイズを再開する。
チェックイン不可の場合は以下が実行される。
S6.8:会議室端末90の表示制御部94は、エラーメッセージを表示する。例えば、「予約時刻はまだ先です」等を表示する。
S6.8.1:会議室端末90の表示制御部94は、入室待ち(チェックイン待ち)を表示する。
<チェックアウトの手順>
図29は、参加予定者がチェックアウトするシーケンス図の一例である。
S1:参加予定者は会議室端末90が表示するチェックアウトボタンを押下する。
S1.1:会議室端末90の操作受付部93はチェックアウトボタンの押下を受け付け、サーバ通信部91が会議室ID、会議識別情報、及び、チェックアウトされた旨の信号を会議管理サーバ30に送信する。
S1.1.1:会議管理サーバ30のチェックイン管理部38はチェックアウト処理を行う。具体的には、会議管理情報DB493のステータスにチェックアウトを記録する。会議室端末90のサーバ通信部91は最新のイベントとしてチェックアウト状態を会議管理サーバ30から取得するので、会議室端末90の表示制御部94は入室待ち(チェックイン)待ちを表示する。
<会議室端末90の起動の手順>
図30は、会議室端末90の起動時の処理を説明するシーケンス図の一例である。
S1:設備予約システム100の管理者が会議室端末90の電源をONする。
S1.1:会議室端末90が起動して自動的に端末アプリを起動させる。
S1.2:会議室端末90は設定を読み込む。この設定は初期設定された、会議管理サーバ30のURL、会議室名、会議室ID等である。
以下の処理は初期設定が済みの場合に実行される。
S1.2.1:会議室端末90のサーバ通信部91は会議管理サーバ30と通信して最新のイベントを取得する。例えば、現在の時間帯の予約情報、チェックイン済みかどうかなどが送信される。
S1.2.2:チェックイン済みの場合、会議室端末90の表示制御部94は会議室が利用中である旨(利用中画面)を表示する。
S1.2.3:チェックインしていない場合、会議室端末90の表示制御部94は入室待ち(チェックイン)待ちを表示する。
S1.2.4:会議室端末90の端末装置通信部92はBluetooth Low Energy (登録商標)のアドバタイズを再開する。
なお、初期設定が済んでいない場合、図24の初期設定が実行されるがすでに説明したため再度の説明は省略する。
<会議管理サーバの処理手順>
図31(a)は、会議管理サーバ30が自動的に予約をキャンセルする処理に関するフローチャート図の一例である。
まず、上記のように、参加予定者が「利用する」ボタンを押下することで、会議管理情報DB493のステータスに利用確定が登録される。
まず、ステータスが利用確定になる(S10)。すると、会議管理サーバ30のチェックイン管理部38は、現在時刻が開始時刻の経過後10分が経過したか否かを判断する(S20)。
そして、現在時刻が開始時刻の経過後10分が経過すると、チェックイン管理部38はステータスを参照してチェックインされたか否かを判断する(S30)。
10分が経過してもチェックインされない場合(S30のNo)、チェックイン管理部38は予約をキャンセルする(S40)。キャンセルされると、この後、会議識別情報と会議室IDが送信されても、チェックイン管理部38はチェックインを受け付けない。なお、会議管理サーバ30は予約IDを指定して予約がキャンセルされた旨を予約管理サーバ20に通知する。これにより、空予約を低減できる。
図31(b)は、会議管理サーバ30のチェックインとチェックアウトの処理に関するフローチャート図の一例である。なお、例えば、図31の処理は会議管理情報DB493のステータスが利用確定になるとスタートする。
会議管理サーバ30のチェックイン管理部38は会議室端末90から会議室IDと会議識別情報を受信する(S10)。
チェックイン管理部38は会議室IDと会議識別情報で会議識別情報DB494を検索し、予約IDを特定する(S20)。
次に、チェックイン管理部38は予約IDで予約情報を特定し開始時刻を取得する(S30)。
チェックイン管理部38は開始時刻が現在時刻から所定時間内か否かを判断する(S40)。
ステップS40の判断がNoの場合、チェックイン管理部38はチェックインを許可せず、その旨を会議室端末90に送信する(S50)。
ステップS40の判断がYesの場合、チェックイン管理部38はチェックインを許可し、その旨を会議室端末90に送信する(S60)。なお、会議管理情報DB493のステータスにチェックイン済みを設定する。会議室端末90は利用している旨を表示できる。
会議情報通知部37はチェックインした旨を、通知ロボットを介して参加予定者に通知する(S65)。会議識別情報DB494により予約IDが特定できるので、予約情報の予約者アカウントからグループを特定して通知すればよい。
次に、チェックイン管理部38はチェックアウトの信号を受信したか否かを判断する(S70)。チェックアウトの信号を受信するまでチェックイン管理部38は待機する。
チェックアウトの信号を受信するとチェックイン管理部38はチェックアウト処理を行う(S80)。すなわち、会議管理情報DB493のステータスにチェックアウトを設定する。これにより、この予約情報に関する処理は行われなくなる。
チェックイン管理部38はチェックアウトOKを会議室端末90に送信する(S90)。これにより、会議室端末90は入室待ちを表示できる。
<会議室端末の画面例>
図32は、会議室端末90の画面例の一例である。図32(a)は入室待ち(チェックイン待ち)画面の一例であり、図32(b)は利用中画面の一例であり、図32(c)はエラー画面の一例を示す。2次元コードでチェックインする場合、参加予定者は図32(a)のメニュー1を押下し、会議識別情報でチェックインする場合、参加予定者は図32(a)のメニュー2を押下する。近距離無線通信の場合は自動的に端末装置60と会議室端末90が通信するのでメニューはない。チェックインに成功するとチェックアウトまでは図32(b)の利用中画面が表示される。チェックアウトすると図32(a)の入室待ち(チェックイン待ち)画面が表示される。チェックインできなかった場合は図32(c)のエラー画面が表示され、その後、図32(a)の入室待ち(チェックイン待ち)画面に自動的に戻る。
<まとめ>
以上説明したように、本実施形態の設備予約システム100は、電子メールを使用せずにチャットシステムを使用して会議室の予約に関する情報を参加予定者に通知できる。参加予定者は会議室の予約に関する情報を確認するので、会議室の空予約を低減できる。
<その他の適用例>
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
例えば、通知されるメッセージはテキストである必要はなく、音声、静止画、動画、プログラム、アプリケーションなどのファイルでもよい。
また、本実施形態では予約管理サーバ20のアカウントで会議管理サーバ30も参加予定者を識別していたが、予約管理サーバ20のアカウントと会議管理サーバ30の独自のアカウントが対応付けられていれば、会議管理サーバ30が参加予定者を独自のアカウントで識別してもよい。
2次元コードはバーコードなど一次元コードでもよい。また、2次元コードとバーコードは画像コードの一例である。また、端末装置60と会議室端末90はNFCや赤外線通信等で通信してもよい。
アカウントはメールアドレスの他、参加予定者を特定又は識別できる情報であればよい。例えば、電話番号、IPアドレス、MACアドレス、任意のID等でもよい。
なお、会議管理サーバ30は複数、存在してもよいし、会議管理サーバ30の機能が複数のサーバに分散されていてもよい。
また、以上の実施例で示した図8,9などの構成例は、設備予約システム100の処理の理解を容易にするために、主な機能に応じて分割したものである。しかし、各処理単位の分割の仕方や名称によって本願発明が制限されることはない。設備予約システム100は、処理内容に応じて更に多くの処理単位に分割することもできる。また、1つの処理単位が更に多くの処理を含むように分割することもできる。
通知判断部34は通知先特定手段の一例であり、会議情報通知部37は通知手段の一例であり、チェックイン管理部38は設備管理手段の一例である。対象者の識別情報は参加予定者のアカウントの一例であり、チャットシステムのグループ名はグループの識別情報の一例であり、顧客ドメインDB495は対象者情報の一例であり、通知先情報はグループ名とチームIDの一例であり、予約者アカウントは予約用識別情報の一例であり、会議識別情報DBは設備利用登録情報の一例であり、会議識別情報は予約管理情報の一例である。