JP2004102358A - Message switching system - Google Patents

Message switching system Download PDF

Info

Publication number
JP2004102358A
JP2004102358A JP2002259304A JP2002259304A JP2004102358A JP 2004102358 A JP2004102358 A JP 2004102358A JP 2002259304 A JP2002259304 A JP 2002259304A JP 2002259304 A JP2002259304 A JP 2002259304A JP 2004102358 A JP2004102358 A JP 2004102358A
Authority
JP
Japan
Prior art keywords
user
message exchange
message
status
users
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2002259304A
Other languages
Japanese (ja)
Inventor
Atsushi Shima
嶋 敦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cybozu Inc
Original Assignee
Cybozu Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Cybozu Inc filed Critical Cybozu Inc
Priority to JP2002259304A priority Critical patent/JP2004102358A/en
Publication of JP2004102358A publication Critical patent/JP2004102358A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a message switching system grasping a situation of a user to properly start the switching of messages. <P>SOLUTION: This message switching system 10 includes a plurality of clients 14, and comprises a user designating means for designating one or more users, a situation information acquiring means for acquiring the situation information relating to all or a part of the users designated by the user designating means, a determining means for determining at least the user related to the message switching and the message switching starting timing on the basis of the situation information acquired from the situation information acquiring means, and a message switching starting means for starting the message switching in accordance with the contents determined by the determining means. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
本発明はメッセージ交換システム、メッセージ端末及びプログラムに関する。
【0002】
【従来の技術】
従来、例えば電子メール、インターネットリレーチャット(IRC)、電子掲示板等、様々なメッセージ交換システムが利用されている。このうち、インターネットリレーチャット等のリアルタイム性のあるメッセージ交換システムは、複数ユーザで即時に情報共有をするのに大変適している。
【0003】
【発明が解決しようとする課題】
本願発明者は、こうしたリアルタイム性のあるメッセージ交換システムを、例えばオフィス等に敷設されたローカルエリアネットワーク(LAN)に適用し、該LANのユーザ間でオンラインミーティングを行うことについて検討した。そして、従来のメッセージ交換システムを、こうした用途に供すると、各ユーザの状況を十分に把握してからオンラインミーティングを開催することが極めて困難であるという問題点を認識するに至った。
【0004】
本発明は上記課題に鑑みてなされたものであって、その目的は、ユーザの状況を把握して、好適にメッセージ交換を開始することができるメッセージ交換システム、メッセージ端末及びプログラムを提供することにある。
【0005】
【課題を解決するための手段】
上記課題を解決するために、本発明に係るメッセージ交換システムは、複数のメッセージ端末を含んで構成されるメッセージ交換システムにおいて、1以上のユーザを指定するユーザ指定手段と、前記ユーザ指定手段により指定されるユーザのうち全部又は一部に係る状況情報を取得する状況情報取得手段と、前記状況情報取得手段により取得される状況情報に基づき、メッセージ交換に関わるユーザ又はメッセージ交換の開始タイミングのうち少なくとも一方を決定する決定手段と、前記決定手段による決定内容に従ってメッセージ交換を開始するメッセージ交換開始手段と、を含むことを特徴とする。
【0006】
また、本発明に係るメッセージ端末は、1以上のユーザを指定するユーザ指定手段と、前記ユーザ指定手段により指定されるユーザのうち全部又は一部に係る状況情報を取得する状況情報取得手段と、前記状況情報取得手段により取得される状況情報に基づき、メッセージ交換に関わるユーザ又はメッセージ交換の開始タイミングのうち少なくとも一方を決定する決定手段と、前記決定手段による決定内容に従ってメッセージ交換を開始するメッセージ交換開始手段と、を含むことを特徴とする。
【0007】
また、本発明に係るプログラムは、1以上のユーザを指定するユーザ指定手段、前記ユーザ指定手段により指定されるユーザのうち全部又は一部に係る状況情報を取得する状況情報取得手段、前記状況情報取得手段により取得される状況情報に基づき、メッセージ交換に関わるユーザ又はメッセージ交換の開始タイミングのうち少なくとも一方を決定する決定手段、及び、前記決定手段による決定内容に従ってメッセージ交換を開始するメッセージ交換開始手段、としてコンピュータを機能させるためのプログラムである。
【0008】
本発明では、ユーザ指定手段によりユーザを指定すると、そのうち全部又は一部に係る状況情報が取得される。状況情報は、各ユーザがメッセージ交換をすることができる状況にあるか否かを表す。そして、こうして取得される状況情報に基づき、メッセージ交換に関わるユーザが決定され、或いはメッセージ交換の開始タイミングが決定される。そして、その決定内容に従ってメッセージ交換が開始される。本発明によれば、ユーザの状況を把握して、好適にメッセージ交換を開始できるようになる。
【0009】
また、本発明の一態様では、前記状況情報取得手段は、前記ユーザ指定手段により指定されるユーザのうち全部又は一部に係る状況情報を、該ユーザに対応する前記端末の使用状況情報に基づいて取得する。端末の使用状況情報は、例えば1)該端末に接続されているキーボードが所定時間以上にわたって使用(入力)されていないかどうかを表す情報、2)該端末に接続されているマウスが所定時間以上にわたって動かされていないかどうかを表す情報、3)該端末に接続されているクリックされていないかどうかを表す情報、4)該端末に接続されている電話等が通話中であるか否かを表す情報、5)該端末に接続されているキーボードの所定時間あたりの入力文字数が所定値以上であるかを表す情報、6)該端末に接続されているマウス等のポインティングデバイスの、所定時間あたりのクリック数や総移動量等が所定数量以上であるかを表す情報等である。これらの使用状況情報は、例えば各端末に常駐プログラム等を含んで構成される監視手段を備えておくようにすることで容易に取得可能である。端末の使用状況は該端末を使用するユーザの状況(仕事の忙しさ等、メッセージ交換に参加可能であるか否か)に関連すると考えられるので、この態様によれば、適切にユーザの状況を把握することができる。
【0010】
また、本発明の一態様では、各ユーザの予定情報を記憶する予定情報記憶手段をさらに含み、前記状況情報取得手段は、前記ユーザ指定手段により指定されるユーザのうち全部又は一部に係る状況情報を、前記予定情報記憶手段に記憶される該ユーザの予定情報に基づいて取得する。予定情報は、例えばスケジュール情報(日時及び行動予定を対応づけてなる情報)やTODO情報(やるべき仕事及びその期日を対応づけてなる情報)等である。ユーザの予定情報は、該ユーザの状況(仕事の忙しさ等、メッセージ交換に参加可能であるか否か)に関連すると考えられるので、この態様によれば、適切にユーザの状況を把握することができる。
【0011】
また、この態様では、前記ユーザ指定手段により指定されるユーザのうち全部又は一部に係る予定情報に基づき、それらユーザが揃ってメッセージ交換をすることができる日時を検索する日時検索手段と、前記日時検索手段による検索結果を出力する検索結果出力手段と、をさらに含むようにしてもよい。こうすれば、将来のメッセージ交換可能な日時を把握し、好適にメッセージ交換を開始できるようになる。
【0012】
また、本発明の一態様では、各ユーザに届いているメールの処理状況情報を記憶するメール記憶手段をさらに含み、前記状況情報取得手段は、前記ユーザ指定手段により指定されるユーザのうち全部又は一部に係る状況情報を、前記メール記憶手段に記憶される各メールの処理状況情報に基づいて取得する。処理状況情報は、例えば各メールが既にユーザにより読まれたか否か、或いは各メールがユーザにより受信されたか否か、各メールに対して返信されているか等の情報である。メールの処理状況情報は、該メールの宛先であるユーザの状況(仕事の忙しさ等、メッセージ交換に参加可能であるか否か)に関連すると考えられるので、この態様によれば、適切にユーザの状況を把握することができる。
【0013】
また、本発明の一態様では、前記決定手段は、前記状況情報取得手段により取得される状況情報に基づき、メッセージ交換に関わるユーザを決定し、前記メッセージ交換開始手段は、前記決定手段により決定されるユーザによるメッセージ交換を開始する。こうすれば、メッセージ交換に関わるユーザ(参加者等)を適切に決定することができる。
【0014】
また、本発明の一態様では、前記決定手段は、前記状況情報取得手段により取得されるユーザの状況情報に基づき、メッセージ交換の開始タイミングを決定し、前記メッセージ交換開始手段は、前記決定手段により決定される開始タイミングに従ってメッセージ交換を開始する。こうすれば、適切なタイミングでメッセージ交換を開始させることができる。
【0015】
この態様では、前記決定手段は、前記状況情報取得手段により取得されるユーザの状況情報に基づき、前記ユーザ指定手段により指定されるユーザのうち全部又は一部がメッセージ交換をすることができるタイミングを監視し、該タイミングを前記メッセージ交換の開始タイミングとして決定してもよい。こうすれば、指定されるユーザのうち全部又は一部が確実にメッセージ交換できるようになる。
【0016】
また、本発明の一態様では、前記ユーザ指定手段により指定されるユーザのうち前記メッセージ交換の必須参加ユーザを指定する必須参加ユーザ指定手段をさらに含み、前記決定手段は、前記必須参加ユーザ指定手段により指定される必須参加ユーザに係る状況情報に基づき、それら必須参加ユーザが揃ってメッセージ交換をすることができるメッセージ交換の開始タイミングを決定する。こうすれば、必須参加ユーザが揃ってメッセージ交換できるようになる。
【0017】
また、本発明の一態様では、前記ユーザ指定手段により指定されるユーザのうち、前記メッセージ交換開始手段により開始されるメッセージ交換に参加しないユーザを記憶する不参加ユーザ記憶手段と、前記メッセージ交換開始手段により開始されるメッセージ交換の内容の全部又は一部を記憶するメッセージ交換内容記憶手段と、前記メッセージ交換内容記憶手段の記憶内容のうち全部又は一部を前記不参加ユーザ記憶手段に記憶されるユーザの全部又は一部に送信するメッセージ送信手段と、を含む。こうすれば、不参加ユーザの全部又は一部に対して、メッセージ交換の内容の全部又は一部を送信することができる。
【0018】
【発明の実施の形態】
以下、本発明の一実施形態について図面に基づき詳細に説明する。
【0019】
図1は、本発明の実施形態に係るメッセージ交換システムの全体構成を示す図である。同図に示すように、このメッセージ交換システム10は、サーバ12と複数のクライアント(メッセージ端末)14とを含んで構成されている。サーバ12及びクライアント14は、いずれもLAN16に接続されており、相互にデータ通信可能となっている。
【0020】
サーバ12は、例えばCPU等のプログラム実行手段、RAM、ROM、ハードディスク記憶装置等の記憶手段、表示手段及び入力手段を含む公知のサーバコンピュータシステムを含んで構成されている。ここでは、サーバ12にはHTTPD(Hyper Text Transfer Protocol Daemon)及びCGI(Common Gateway Interface)プログラムがインストールされており、HTTP(Hyper Text Transfer Protocol)に則ってクライアント14から要求を受け付け、それに応じた各種データ処理を行い、レスポンスデータ(HTMLデータ)を返信するようになっている。
【0021】
また、クライアント14は、例えばCPU等のプログラム実行手段、RAM、ROM、ハードディスク記憶装置等の記憶手段、表示手段及び入力手段を含む公知のパーソナルコンピュータシステムを含んで構成されている。ここでは、クライアント14にはWebブラウザがインストールされており、該Webブラウザを用いてクライアント14からサーバ12にアクセスして、各種サービスを受けることができるようになっている。さらに、クライアント14にはメッセージ交換アプリケーションプログラムもインストールされており、該プログラムによって他のクライアント14との間でメッセージ交換を行うことができるようになっている。
【0022】
このメッセージ交換システム10では、まずクライアント14のユーザがサーバ12に対してユーザ登録をする。そして、サーバ12にユーザ登録がされたユーザ同士で、メッセージ交換ができるようになっている。図2は、クライアント14のWebブラウザで表示されるユーザ登録画面の一例を示す図である。この画面は、クライアント14からWebブラウザによってサーバ12にアクセスし、該サーバ12からHTMLデータを受信することによって表示されるものである。この画面では、サーバ12において自動採番されたユーザIDが表示されるとともに、パスワード及び氏名を入力するフォームが表示され、さらに部署及び報告方法を選択するプルダウンメニューが表示されている。メニュー内容はサーバ12から受信されるHTMLデータに含まれるものである。同画面において、ユーザがパスワード及び氏名を入力し、自分の所属する部署及び他のユーザから送信されるメッセージや議事録等を受信する方法(例えばオフィスのメールアドレスや携帯電話のメールアドレス等)を選択し、登録ボタンをマウス等のポインティングデバイスでクリックすることにより、その設定内容をサーバ12に送信することができるようになっている。サーバ12では、ユーザ登録画面における設定内容を受信すると、それをデータベース(ユーザ記憶部38)に登録(記憶)する。
【0023】
ユーザ登録を終えたユーザは、メッセージ交換システム10を利用する場合、クライアント14からサーバ12にアクセスし、ログインしなければならない。図3は、クライアント14において表示されるログイン画面を示す図である。同画面は、例えばクライアント14にインストールされているメッセージ交換アプリケーションプログラムによって表示される。この画面は、部署及び氏名を選択するためのプルダウンメニューと、パスワードを入力するためのフォームと、を含んでいる。プルダウンメニューの内容は、サーバ12から予め受信するユーザ情報(ユーザID、氏名、部署及びステータス(後述)を対応づけてなる。)に基づいている。同画面において部署を選択すると、氏名を選択するためのプルダウンメニューの内容が同部署のメンバーに変わるようになっている。こうして、ユーザは部署及び氏名を選択し、さらにキーボード等でパスワードを入力し、ログインボタンをポインティングデバイスでクリックすることで、氏名に対応するユーザIDとパスワードとを含むログイン要求をサーバ12に送信することができるようになっている。サーバでは、ログイン要求に含まれるユーザIDとパスワードとの組合せを、予め記憶しているユーザ情報に照らし合わせて、その真偽を判断する。そして、真正なパスワードを伴うログイン要求であれば、ログイン許可の旨のデータを返信し、逆に虚偽のパスワードを伴うログイン要求であれば、ログイン拒否の旨のデータを返信するようになっている。
【0024】
無事にログインを終えたユーザは、メッセージ交換を開催しようとするとき、図示しないメインメニュー画面において、メッセージ交換を主催するためのメニュー選択を行う。図4は、このメニュー選択に応じてクライアント14に表示される参加者指定画面の一例を示す図である。同図に示す参加者指定画面は、クライアント14にインストールされているメッセージ交換アプリケーションプログラムによって表示されるものであり、サーバ12にユーザ登録されている各ユーザについて、氏名、部署、ステータス及びチェックボックスが表示されている。ステータス(状況情報)は、ユーザの状況を表しており、ここでは「○」は、ログイン済み且つメッセージ交換可の旨のステータス、すなわちメッセージ交換可ステータスを表している。また、「△」は、ログイン済み且つメッセージ交換不可の旨のステータス、すなわちビジーステータスを表している。さらに、「×」は、未だログインしていない旨のステータス、すなわちログオフステータスを表している。この画面は、ログイン画面と同様、予めサーバ12から受信されるユーザ情報に基づいて表示される。
【0025】
同画面において、メッセージ交換を開催しようとするユーザ、すなわち主催者ユーザは、メッセージ交換に参加してもらいたいユーザに対応する各チェックボックスをクリックし、そこにチェックを入れる。そして、「次へ」ボタンをクリックする。このとき、チェックボックスにチェックが入れられた全ユーザがメッセージ交換可ステータスであれば、図5に示すウィンドウ(メッセージ交換画面)が立ち上がる。また、他のメッセージ交換の参加者ユーザが使用するクライアント14においても、図5に示すウィンドウが立ち上がる。
【0026】
図5に示すメッセージ交換画面では、左上にメッセージ表示欄が設けられ、右上に参加者表示欄が設けられている。また、下側にはメッセージ入力欄が設けられている。メッセージ表示欄には、発言順に発言者及びメッセージ(発言内容)が表示される。また、参加者表示欄には、参加者の氏名が表示される。さらに、メッセージ入力欄には、メッセージを入力するためのフォームと、それをLAN16にブロードキャストするための送信ボタンと、が表示されている。ユーザは、メッセージ表示欄に表示される各参加者のメッセージを参照しながら、自分のメッセージをメッセージ入力欄のフォームにキーボード等を利用して入力し、送信ボタンをマウス等でクリックすることにより、自分及び他の参加者に係るメッセージ交換画面において、メッセージ表示欄に、自分の氏名及びメッセージを表示させることができる。
【0027】
図4に示される参加者指定画面において、ビジーステータス又はログオフステータスが付与されているユーザを参加者として指定した場合、直ちに全員でメッセージ交換を開始させることはできない。この場合、本メッセージ交換システム10では、図4に示される画面において「次へ」ボタンが押下されたとき、図6に示す任意参加者(オブザーバ)指定画面を表示させるようにしている。この任意参加者指定画面は、クライアント14においてメッセージ交換アプリケーションプログラムによって表示されるものであり、図4に示される参加者指定画面において指定されたユーザの氏名及びステータスが表示されるとともに、各ユーザに対応づけてチェックボックスが表示される。ユーザは、この画面において任意参加者、すなわちメッセージ交換に必ずしも参加しなくてよいユーザに対応するチェックボックスにチェックを入れて、「次へ」ボタンをクリックすることにより、予めメッセージ交換に参加してもらいたいユーザとして図4に示される参加者指定画面において指定されたユーザについて、必須参加者と任意参加者の別を指定することができる。
【0028】
次に、クライアント14では、図7に示されるメニュー画面が表示される。このメニュー画面も、メッセージ交換アプリケーションプログラムによって表示されるものである。この画面では、「メッセージ交換可能時間を検索」、「参加困難なユーザにはメッセージを残し、セッションをスタート」、「必須参加者が揃ったらセッションをスタート」の3つの選択肢に対し、それぞれラジオボタンが表示されている。また、「参加困難なユーザにはメッセージを残し、セッションをスタート」の選択肢に対応づけて、メッセージを入力するためのフォームが表示されている。さらに、「必須参加者が揃ったらセッションをスタート」の選択肢に対応づけて、セッション(メッセージ交換)における主催者からの第一声を入力するためのフォームが表示されている。
【0029】
主催者ユーザが「メッセージ交換可能時間を検索」を選択し、OKボタンをクリックすると、サーバ12に対して全参加者がメッセージ交換することができる日時を検索する要求、すなわちメッセージ交換可能時間検索要求を送信する。この要求には、図4において指定したユーザのユーザIDが含まれる。クライアント14では、その検索結果を受信すると、それを図8に示すようにして表示する。なお、必須参加者、すなわち図6に示される任意参加者指定画面において任意参加者に指定されていないユーザの間でメッセージ交換が可能な時間を検索するようにしてもよい。この場合、サーバ12への検索要求には、図6において指定したユーザ以外のユーザ、すなわち必須参加ユーザのユーザIDが含まれる。また、検索範囲は、当日に限ってもよいし所定期間にわたってもよい。さらに、以上のような検索条件は、ユーザが指定可能としてもよい。
【0030】
また、主催者ユーザが「参加困難なユーザにはメッセージを残し、セッションをスタート」を選択するとともに、その選択肢に対応するフォームにメッセージを入力し、OKボタンをクリックすると、図5に示すメッセージ交換画面が、図4に示される参加者指定画面において設定されたユーザのうちセッションに参加可能な、すなわちメッセージ交換可ステータスが付与されているユーザのクライアント14において表示される。さらに、セッションに参加不能な、すなわちビジーステータス又はログオフステータスが付与されているユーザのクライアント14に宛てて、図7のメニュー画面において入力されたメッセージが送信される。このメッセージは、図2のユーザ登録画面において設定された報告方法に従って送信される。このとき、メッセージが直ちに送信先に届くようにしてもよいし、送信先のユーザのステータスがメッセージ交換可ステータスとなるのを待って、該送信先に届くようにしてもよい。この場合、送信元のクライアント14において送信タイミングを制御してもよいし、メッセージを一旦サーバ12に送信して、該サーバ12においてメッセージを一時的に保存しておき、サーバ12において送信タイミングを制御してもよい。さらに、送信先のクライアント14において、該メッセージの表示又は到着報知をユーザのステータスがメッセージ交換可ステータスとなるまで待つようにしてもよい。
【0031】
さらに、ユーザが「必須参加者が揃ったらセッションをスタート」を選択するとともに、対応するフォームに第一声を入力し、OKボタンをクリックすると、図4の参加者指定画面において設定されたユーザのうち、図6の任意参加者指定画面において指定されていないユーザ、すなわち必須参加ユーザが全員メッセージ交換可ステータスとなるタイミングを監視し、そのタイミングが到来すれば、図4の参加者指定画面において設定されたユーザのうち、そのタイミングにおいてメッセージ交換可ステータスである全てのユーザにおいてメッセージ交換を開始させる。このため、それらユーザに宛ててセッション開始要求を送信する。セッション開始要求を受信したクライアント14、及び主催者のクライアント14では、図5のメッセージ交換画面を起動する。
【0032】
図8は、図7に示されるメニュー画面において、ユーザが「メッセージ交換可能時間を検索」を選択し、OKボタンをクリックした場合にクライアント14において表示される、検索結果表示画面の一例を示す図である。同図に示す検索結果画面においては、サーバ12において検索されたメッセージ交換可能日時が表示されるとともに、「この時間にセッションをスタート」及び「メッセージを残す」の選択肢が表示される。各選択肢にはラジオボタンが対応づけて表示されており、これによりユーザが各選択肢を指定できるようになっている。また、「この時間にセッションをスタート」に対応づけて、セッション開始時の主催者からの第一声を入力するためのフォームが表示され、さらに、「メッセージを残す」に対応づけて、メッセージを入力するためのフォームが表示されている。
【0033】
ユーザが、「この時間にセッションをスタート」を選択するとともに、第一声を入力し、OKボタンをクリックすると、クライアント14ではその日時、すなわちメッセージ交換可能日時まで待機し、その日時が到来すれば、図4の参加者指定画面において設定されたユーザに対して、セッション開始要求を送信する。このとき、実際には全部又は一部のユーザがメッセージ交換不可であれば、再び図6乃至図8の画面を主催者ユーザのクライアント14において表示し、以上説明した処理を繰り返す。
【0034】
次に、以上のように動作するメッセージ交換システム10の具体的処理について説明する。
【0035】
図9は、クライアント14からサーバ12にログイン後、ログオフするまでの間、定期的にクライアント14からLAN16に対してブロードキャストされるステータス報知データを示す図である。同図に示すように、クライアント14では、同クライアント14に係るユーザのステータスを、同ユーザがログインしているサーバのサーバID及び同ユーザのユーザIDと共にブロードキャストするようにしている。こうして、同じサーバにログインしている他のユーザに係るクライアント14では、新たにログインしてきたユーザのステータスを把握し、それによりユーザ情報を更新することができる。
【0036】
図10は、セッションの主催者が、参加者に対して送信するセッション開始要求を示す図である。同図に示すように、セッション開始要求(データ)は、サーバIDとセッションIDとメッセージ交換の参加者に係るユーザID群とを含んでいる。サーバIDは、サーバ12を識別する情報であり、サーバ12がLAN16に複数接続されている場合に、クライアント14では、どのサーバ12に関連してセッション開始が要求されているかを判断することができる。また、セッションIDは、各セッションを識別する情報であり、さらに詳細には主催者のユーザIDと同主催者が保持するセッションカウンタとから構成されている。主催者ユーザは、セッションを主催し、他のユーザにセッション開始要求をするとき、セッションカウンタをインクリメントさせるようにしており、これによってセッションIDは、LAN16において各セッションに対してユニークに付与されるようになっている。
【0037】
セッション開始要求はLAN16に対してブロードキャストされるようになっており、各クライアント14のメッセージ交換アプリケーションプログラムでは、このセッション開始要求に含まれるユーザID群に自機を利用するユーザのユーザIDが含まれているか否かを監視するようにしている。そして、含まれている場合には、同クライアント14においてメッセージ交換画面を起動させ、メッセージ交換を開始させるようにしている。このとき、各クライアント14では、参加中のセッションに係るサーバID、セッションID及びユーザID群を、例えばセッション終了まで保存するようにしている。
【0038】
図11は、メッセージ交換データを示す図である。同図に示すデータは、メッセージ交換画面において、メッセージ入力欄にメッセージを入力し、送信ボタンをクリックしたときにLAN16に対してブロードキャストされるものである。メッセージ交換データは、具体的にはサーバIDとセッションIDとメッセージIDとメッセージとを含んでいる。サーバIDとセッションIDは、上記セッション開始要求に含まれているものと同じである。メッセージIDは、さらに詳細には発言者のユーザIDとクライアント14において保持されている同発言者のメッセージカウンタとを含んで構成されている。各クライアント14は、各セッションにおいてメッセージを送受信する毎に、メッセージカウンタをインクリメントさせるようになっており、これによりメッセージIDは、各セッションにおいてメッセージを識別することができるものとなっている。また、メッセージは、図5のメッセージ交換画面において、メッセージ入力欄に入力されたデータである。いずれかのセッションに参加しているクライアント14では、同機に記憶されている参加中のセッションに係るサーバID及びセッションIDを含むメッセージ交換データがLAN16にブロードキャストされているか否かを監視するようになっており、こうしたメッセージ交換データがブロードキャストされていれば、それを受信し、メッセージ及び発言者名(発言者のユーザIDに基づいてユーザ情報(図19)から取得される)をメッセージ交換画面に表示する。さらに、その内容をメッセージログ(図22)に追加記憶する。
【0039】
ここで、サーバ12の構成について説明する。
【0040】
図12は、サーバ12の機能ブロック図である。同図に示すように、サーバ12で実現される機能には、スケジュール記憶部32と、TODO記憶部34と、メール記憶部36と、ユーザ記憶部38と、ステータス監視/更新部40と、ユーザ登録部42と、ログイン/ログアウト処理部44と、メッセージ交換可能時間検索部48と、ステータス調査部49と、が含まれている。これらの機能は、サーバ12において、CGIプログラムや常駐プログラム等が実行されることによって実現される。
【0041】
ここで、スケジュール記憶部32は、例えばハードディスク記憶装置等を含んで構成されるものであり、各ユーザのスケジュール(予定情報)を記憶するものである。また、TODO記憶部34は、例えばハードディスク記憶装置等を含んで構成されるものであり、各ユーザのTODO(予定情報)を記憶するものである。また、メール記憶部36は、例えばハードディスク記憶装置等を含んで構成されるものであり、各ユーザが送受信したメール及びその処理状況(未読又は既読の別や返信の有無等)を蓄積記憶するものである。これらの情報は、CGIプログラム群である図示しないグループウェアプログラムによって管理されており、同プログラムはクライアント14のWebブラウザから送信される要求に応じて、これらの情報を新規登録・更新したり、ユーザに内容確認させたりするようになっている。
【0042】
また、ユーザ記憶部38は、例えばハードディスク記憶装置等を含んで構成されるものであり、メッセージ交換システム10の登録ユーザに関するデータ、すなわちユーザ情報を記憶するものである。ステータス監視/更新部40は、例えば常駐プログラム等によって実現されるものであり、LAN16にブロードキャストされているステータス報知データ(図9参照)を監視・受信し、その内容に応じて、ユーザ記憶部38に記憶される各ユーザのステータスを更新する。ユーザ登録部42は、例えばCGIプログラム等によって実現されるものであり、クライアント14からの要求に応じてユーザ登録画面を表示するためのHTMLデータを返信し、さらに該画面によってユーザ登録要求がクライアント14から送信されてきた場合には、その要求に含まれるユーザID、氏名、パスワード、報告方法等の情報をユーザ記憶部38に登録する。
【0043】
ログイン/ログアウト処理部44は、例えばCGIプログラムによって実現されるログイン処理機能と、例えば常駐プログラム及びCGIプログラムによって実現されるログアウト処理機能と、を担うものである。ログイン処理においては、クライアント14からのログイン要求に応じてユーザ記憶部38に記憶されるユーザ情報を返信し、それを利用して返信される認証要求に応じてユーザ認証処理を実行し、認証可であればログインを許可するとともに、ユーザ記憶部38にその旨のログインフラグ(後述)を記憶し、一方、不可であればログインを拒絶する。ログアウト処理では、クライアント14からログアウト要求が送信されると、同ログアウト要求に係るユーザIDに対応づけて、ユーザ記憶部38にログアウトの旨のログインフラグを記憶する。さらに、所定時間にわたって、あるユーザに係るステータス報知データ等のデータ送信がされていない場合、そのユーザがログアウトしたと判断し、そのユーザに対応づけてログアウトの旨のログインフラグをユーザ記憶部38に記憶する。
【0044】
メッセージ交換可能時間検索部48では、クライアント14から1以上のユーザIDを含むメッセージ交換可能時間検索要求を受信すると、それらユーザIDに係るユーザのスケジュールをスケジュール記憶部32から取得し、それらに基づいて全員でメッセージ交換をすることができる時間帯を検索する。メッセージ交換可能時間検索部48では、検索範囲となる時間範囲や日付範囲等の検索条件を含むメッセージ交換可能時間検索要求をクライアント14から受信し、該検索条件に従ってメッセージ交換可能時間を検索するようにしてもよい。さらに、ステータス調査部49は、例えば常駐プログラムによって実現されるものであり、クライアント14からユーザIDを含むステータス調査要求を受信した場合に、該ユーザIDに対応するスケジュール情報、TODO情報、メールの処理状況をスケジュール記憶部32、TODO記憶部34、メール記憶部36からそれぞれ読み出し、それらの情報に基づいて、該ユーザIDにより識別されるユーザのステータスを判断し、その判断結果を返信する。
【0045】
図13は、ユーザ記憶部38に記憶されるユーザ情報の一例を示す図である。同図に示すように、ユーザ情報は、ユーザIDと、該ユーザIDに対応するユーザの氏名、部署、ステータス、同ユーザが指定するメッセージ報告方法、パスワード、及びログイン中であるか否かを表すフラグ(ログインフラグ)を対応づけてなる。このうち、ユーザID、氏名、部署、報告方法及びパスワードには、図2に示されるユーザ登録画面においてユーザが入力又は指定したデータが格納される。また、ステータスは、各クライアント14から送信されるステータス報知データに従ってステータス監視/更新部40により更新される。ステータスは、さらにログイン/ログアウト処理部44により、ログインフラグの値に応じて更新される。また、ログインフラグは、ログイン/ログアウト処理部44により更新される。
【0046】
図14は、スケジュール記憶部32に記憶されるスケジュール情報を示す図である。同図に示すように、スケジュール情報は、スケジュールIDと日時とスケジュール内容とスケジュールメンバーとを対応づけてなる。スケジュールIDは、サーバ12において各スケジュールを識別する情報である。日時は、スケジュールの日時である。スケジュール内容は、例えば会議や出張等の区別、その開催場所、重要度等である。スケジュールメンバーは、同スケジュールに関係する1以上のユーザのユーザIDである。メッセージ交換可能時間検索部48では、クライアント14から1以上のユーザIDを含むメッセージ交換可能時間検索要求を受信したとき、そのユーザIDがスケジュールメンバー欄に含まれているスケジュールの日時及び内容をスケジュール記憶部32から読み出し、その内容に基づいてメッセージ交換可能時間を探し出す。例えば、クライアント14から受信するユーザIDに係る全てのユーザについて、スケジュールが何も入っていない日時を検索し、それをメッセージ交換可能時間としてクライアント14に返信する。また、ステータス調査部49は、クライアント14からユーザIDを含むステータス調査要求を受信したとき、該ユーザIDをスケジュールメンバー欄に含むスケジュールの日時及び内容を読み出し、それに基づいて、同ユーザIDに係るユーザの現在のステータスを判断する。そして、その判断結果をクライアント14に返信する。
【0047】
また、サーバ12は、例えばCGIプログラム等によって実現される図示しないスケジュール管理機能(グループウェア機能)を備えており、クライアント14からの要求に応じて、スケジュール記憶部32にアクセスして、スケジュールを新規登録したり修正したり読み出したりできるようになっている。
【0048】
図15は、TODO記憶部34に記憶されるTODO情報を示す図である。同図に示すように、TODO情報は、ユーザIDと、該ユーザIDに対応するユーザが処理しなければならない仕事内容(TODO内容)と、その期限(TODO期限)と、を対応づけてなる。ステータス調査部49では、クライアント14からユーザIDを含むステータス調査要求を受信した場合、同ユーザIDに対応するTODO期限を読み出し、その日がTODO期限となっているTODO内容が所定数以上であれば、ビジーステータスを返信する。また、サーバ12は、例えばCGIプログラム等によって実現される図示しないTODO管理機能(グループウェア機能)を備えており、クライアント14からの要求に応じて、TODO記憶部34にアクセスして、TODO情報を新規登録したり修正したり読み出したりできるようになっている。
【0049】
図16は、メール記憶部36に記憶されるメール情報を示す図である。同図に示すように、メール情報は、ユーザIDと、メール内容(ヘッダ情報や本文等)と、受信日時と、既読又は未読を示す既読フラグ(処理状況)と、を対応づけてなる。ステータス調査部49では、クライアント14からユーザIDを含むステータス調査要求を受信した場合、同ユーザIDに対応するメールのうち、その既読フラグに未読の旨を表す値が設定されたものの数を調べ、その数が所定数以上であれば、ビジーステータスを返信する。また、サーバ12は、例えばCGIプログラム等によって実現される図示しないメール送受信/閲覧機能(グループウェア機能)を備えており、クライアント14からの要求に応じて、メール記憶部36にアクセスして、メールを送受信したり、既に着信しているメールを閲覧させたりすることができるようになっている。
【0050】
次に、クライアント14の構成について説明する。
【0051】
図17は、クライアント14の機能ブロック図である。同図に示すように、クライアント14で実現される機能には、ステータス監視/更新部62と、セッション処理部64と、セッションカウンタ記憶部66と、ユーザ記憶部68と、メッセージ交換可能タイミング監視部70と、現在ステータス判断部71と、メッセージログ記憶部72と、セッション参加者記憶部74と、セッション参加者更新部75と、メッセージ交換報告部76と、ログイン/ログアウト処理部77と、が含まれている。これらの機能は、クライアント14において、メッセージ交換アプリケーションプログラムが実行されることによって実現される。
【0052】
ここで、ステータス監視/更新部62は、LAN16にブロードキャストされているステータス報知データ(図9参照)を受信し、該ステータス報知データに基づいてユーザ記憶部68に記憶されるユーザ情報に含まれるステータスを更新する。セッション処理部64は、LAN16にブロードキャストされているセッション開始要求データに当該クライアント14を利用中のユーザのユーザIDが含まれていれば、メッセージ交換画面を表示する。また、クライアント14においてメッセージ交換画面が表示されているとき、LAN16にブロードキャストされているメッセージ交換データ(図11)のうち、当該クライアント14において現在参加中のセッションに係るセッションIDが含まれているものを受信し、それに基づいてメッセージ交換画面を更新する。その他、セッション処理部64は、メッセージ交換を主催するユーザのための各種処理、セッションを離脱するユーザのための各種処理を行うようになっている(後述)。
【0053】
セッションカウンタ記憶部66は、各ユーザのセッションカウンタの値を記憶する。ユーザ記憶部68は、サーバ12から受信するユーザ情報を記憶する。メッセージ交換可能タイミング監視部70は、ユーザが指定したメッセージ交換の参加者のステータスを監視して、それが全てメッセージ可ステータスとなったタイミングにて、それら参加者のユーザIDを含むメッセージ交換開始要求データをLAN16にブロードキャストする。現在ステータス判断部71は、例えば常駐プログラムによって実現されるものであり、所定時間前から現在までの入力装置(キーボードやマウス)の入力量を監視し、その量が所定量以上であればビジーステータスであると判断する。また、所定量未満であれば、サーバ12にステータス調査要求を送信して、その応答に従ってステータスを判断する。そして、こうして判断したステータスをユーザ記憶部68に当該クライアント14に対応するユーザのユーザIDに対応づけて記憶するとともに、ステータス報知データとしてLAN16にブロードキャストする。
【0054】
メッセージログ記憶部72は、クライアント14においてメッセージ交換画面が表示され、メッセージ交換が行われている間、メッセージ表示欄に表示される各参加者ユーザのメッセージ(発言)を記憶する。セッション参加者記憶部74は、セッションに参加中のユーザに関する情報を記憶する。セッション参加者更新部75は、LAN16にブロードキャストされるセッション離脱データ(サーバID、セッションID及びユーザIDを含む)を受信し、それに基づいてセッション参加者記憶部74の記憶内容を更新する。また、セッションに途中参加するユーザからセッション参加通知データを受信し、それに基づいてセッション参加者記憶部74の記憶内容を更新する。
【0055】
メッセージ交換報告部76は、ユーザがセッションを最後に離脱するとき、メッセージログ記憶部72に記憶されるメッセージログに基づいて議事録を生成し、それをセッションに不参加であった、又は途中離脱したユーザに対して送信する。ログイン/ログアウト処理部77は、ログイン画面を表示し、ユーザ認証可であればステータスデータをLAN16にブロードキャストする。また、ログアウト時、ログアウト通知データをLAN16にブロードキャストする。
【0056】
セッション処理部64は、メッセージ交換を主催するユーザのために各種処理を行うようになっている(後に詳述)。すなわち、図18に示すように、セッション処理部64は、ユーザ指定部64a、ステータス取得部64b、決定部64c、メッセージ交換開始部64d、必須参加者/任意参加者指定部64e、メッセージ交換可能日時出力部64f及び不参加ユーザ記憶部64gを含んでいる。
【0057】
ここで、ユーザ指定部64aは、図4に示す参加者指定画面をクライアント12から送信されるユーザ情報に基づいて表示し、主催者ユーザに1以上のユーザを指定させるものである。また、ステータス取得部64bは、ユーザ指定部64aにより指定されるユーザのステータスをユーザ記憶部68から取得するものである。また、決定部64cは、ステータス取得部64bにより取得されるステータスに基づき、メッセージ交換に実際に参加させるユーザ又はメッセージ交換の開始タイミングのうち少なくとも一方を決定するものである。また、メッセージ交換開始部64dは、決定部64cによる決定内容に従ってメッセージ交換を開始するものである。
【0058】
特に、決定部64cは、ステータス取得部64bにより取得されるステータスに基づき、実際にメッセージ交換に参加させるユーザを決定する機能を含んでおり、メッセージ交換開始部64dは、決定部64cにより決定されるユーザによるメッセージ交換を開始する。
【0059】
また、決定部64cは、ステータス取得部64bにより取得されるユーザのステータスに基づき、メッセージ交換の開始タイミングを決定する機能を含んでおり、メッセージ交換開始部64dは、決定部64cにより決定される開始タイミングに従ってメッセージ交換を開始する。例えば、決定部64cは、ステータス取得部64bにより取得されるユーザのステータスに基づき、ユーザ指定部64aにより指定されるユーザのうち全部又は一部がメッセージ交換をすることができるタイミングを監視し、該タイミングを前記メッセージ交換の開始タイミングとして決定する。
【0060】
また、必須参加者/任意参加者指定部64eは、例えば図6に示す任意参加者指定画面を表示して、ユーザ指定手段により指定されるユーザのうちメッセージ交換の必須参加ユーザ及び任意参加ユーザを指定するものである。決定部64cでは、この機能を活用して、必須参加者/任意参加者指定部64eにより指定される必須参加ユーザに係るステータスに基づき、それら必須参加ユーザが揃ってメッセージ交換をすることができるメッセージ交換の開始タイミングを決定するようにしてもよい。
【0061】
また、メッセージ交換可能日時出力部64fは、サーバ12のメッセージ交換可能日時検索部48にメッセージ交換可能日時検索要求を送信し、サーバ12に対して、ユーザ指定部64aにより指定されるユーザのうち全部又は一部に係るスケジュール情報に基づいて、それらユーザが揃ってメッセージ交換をすることができる日時を検索させる。そして、メッセージ交換日時出力部64fは、その検索結果を受信し、例えば図8に示すようにして表示出力する。
【0062】
また、不参加ユーザ記憶部64gは、ユーザ指定部64aにより指定されるユーザのうち、メッセージ交換開始部64dにより開始されるメッセージ交換に実際には参加させない、すなわちメッセージ交換開始要求を送信しないユーザについて、ユーザIDを記憶する。この不参加ユーザ記憶部64gは、メッセージログ記憶部72の記憶内容に基づいてメッセージ交換報告部76が議事録を送付するとき、その送付先を特定するために用いられる。
【0063】
図19は、ユーザ記憶部68に記憶されるユーザ情報を示す図である。同図に示すように、クライアント14において記憶されるユーザ情報は、ユーザIDと、氏名と、部署と、ステータスと、報告方法と、を対応づけてなる。これらの情報は、クライアント14からサーバ12にユーザがログインするとき、サーバ12のユーザ記憶部38からダウンロードされる。そして、ステータス監視/更新部62は、LAN16にブロードキャストされるステータス報知データを監視し、該ステータス報知データに含まれるユーザIDに対応づけてユーザ記憶部38に記憶されているステータスを、同ステータス報知データに含まれるステータスに基づいて更新する。
【0064】
図20は、セッションカウンタ記憶部66に記憶されるセッションカウンタリストを示す図である。同図に示すように、セッションカウンタリストは、サーバIDと、ユーザIDと、セッションカウンタ値と、を対応づけてなる。セッションカウンタ値は、サーバIDにより識別されるサーバ12に関連して開催されるメッセージ交換において、ユーザIDにより識別されるユーザがメッセージ交換(セッション)を開始する度に1ずつ増加させる数値である。そして、各クライアント14では、サーバ12にログインするとき、自機を利用するユーザに係るユーザIDに対応するセッションカウンタ値を同ユーザIDと共にLAN16にブロードキャストするようになっている。他のクライアント14では、このセッションカウンタ値及びユーザIDを受信し、それにより自機に記憶されているセッションカウンタリストを更新するようにしている。こうして、全てのクライアント14において同じセッションカウンタリストが記憶されるようになっている。そして、このセッションカウンタリストにより、クライアント14では、LAN16にブロードキャストされているメッセージ交換開始要求データが新規のものであるか否かを判断するようにしている。
【0065】
図21は、セッション参加者記憶部74に記憶されるセッション参加者リストの一例を示す図である。同図に示すセッション参加者リストは、クライアント14においてセッションが継続している間に生成・更新され、セッション参加者記憶部74に記憶されるものであり、セッションに参加中のユーザのユーザID、同ユーザIDに係るユーザが任意参加者であるか必須参加者であるかを表す任意参加者フラグ、同ユーザの発言数を表すメッセージカウンタ値、同ユーザが主催者であるか否かを表す主催者フラグ、及び同ユーザがセッションに参加しているか既に離脱してしまったかを表す参加者ステータスを対応づけてなる。クライアント14では、このセッション参加者リストに含まれるメッセージカウント値に基づき、LAN16にブロードキャストされるメッセージデータが最新のメッセージであるか否かを判断することができるようにしている。また、セッション処理部46では、メッセージ交換画面において入力されたメッセージを他のセッション参加者に送信するため、セッション参加者リストに含まれているユーザIDのうち、それに対応する参加者ステータスがセッション中であることを示しているものを、メッセージ交換データに含めるようにしている。
【0066】
図22は、メッセージログ記憶部72に記憶されるメッセージログの一例を示す図である。同図に示すメッセージログは、クライアント14においてセッションが継続している間に記憶・更新されるものであり、セッションに関連するサーバのサーバID、該セッションのセッションID、各メッセージのメッセージID、及びメッセージを対応づけてなる。各レコードは、LAN16にブロードキャストされ、クライアント14により受信されるメッセージデータに基づいて追加記憶されるものである。
【0067】
ここで、クライアント14のメッセージ交換アプリケーションプログラムの処理についてフロー図に基づいて説明する。
【0068】
図23は、メッセージ交換アプリケーションプログラムに基づき、クライアント14のログイン/ログアウト処理部77によって実行されるログイン処理を示すフロー図である。同図に示すように、ログイン処理では、まずクライアント14はサーバ12に対してログイン要求を送信する(S101)。サーバ12のログイン/ログアウト処理部44では、この要求を受信すると、ユーザ記憶部38からパスワード及びログインフラグを除くユーザ情報を読み出し、その情報を返信する。クライアント14では、この情報をサーバ12から受信し(S102)、それに基づいて図3に示すログイン画面を表示する(S103)。次に、同ログイン画面におけるユーザの設定内容に基づき、ユーザID及びパスワードを含む認証要求データをサーバ12に送信する(S104)。サーバ12のログイン/ログアウト処理部44では、この認証要求データを受信すると、ユーザ記憶部38に記憶されるユーザ情報と照らし合わせ、その真偽を判断するとともに、判断結果をクライアント14に返信する。クライアント14では、認証データが真正なものであると認められれば(S105)、現在の当該クライアント14のステータスを調べる(S106)。このステータス調査処理は、現在ステータス判断部71により実行されるものであり、図24に基づいて後に詳述する。クライアント14は、サーバ12のサーバID、S106で得られたステータス、セッションカウンタ記憶部66から読み出されたログインユーザに係るセッションカウンタ値を、LAN16にブロードキャストし(S107)、ログイン処理を終了する。この場合は、例えばメインメニューをクライアント14において表示して、メッセージ交換の開催等をユーザが選択指定できるようにする。
【0069】
一方、S105において、サーバ12において認証データが真正なものであると認められなければ、クライアント14においてエラーメッセージを表示し(S108)、ログイン処理を終了する。この場合は、例えば再度ログイン要求をサーバ12に送信するためのダイアログをクライアント14に表示する。
【0070】
図24は、メッセージ交換アプリケーションプログラムに基づき、クライアント14の現在ステータス判断部71により実行されるステータス判断処理を示すフロー図である。同図に示す処理は、クライアント14がサーバ12にログインするときに実行され、さらにログイン後もログアウトするまで定期的に実行される。この処理では、まずクライアント14において、キーボードやマウス等の入力装置が使用量を判断する(S201)。そして、入力装置の使用量が所定基準以上であれば(例えば所定時間あたりの入力文字数やクリック数が所定基準値以上であるとき等)、ユーザの現在のステータスが、ビジーステータスであると決定する(S204)。
【0071】
一方、入力装置の使用量が所定基準未満であれば、次にサーバ12に対してユーザIDを含むステータス調査要求を送信する(S202)。サーバ12のステータス調査部49では、この要求を受信すると、スケジュール記憶部32、TODO記憶部34及びメール記憶部36の記憶内容に基づき、受信したユーザIDにより識別されるユーザが現在メッセージ交換可能であるか否かを判断する。そして、その判断結果であるステータスをクライアント14に返信するとともに、その内容をユーザ記憶部38に反映させる。クライアント14では、サーバ12から判断結果であるステータスを受信し(S203)、その内容に従ってユーザの現在のステータスを決定する(S204)。
【0072】
以上のようにすれば、各ユーザがメッセージ交換可能であるか否かを好適に判断することができる。なお、クライアント14に電話機等の外部機器が接続されていれば、その装置の使用状況により、ユーザのステータスを判断するようにしてもよい。例えば、クライアント14に接続されている電話機が話し中であれば、ユーザの現在のステータスがビジーステータスであると決定するようにしてもよい。
【0073】
図25は、メッセージ交換アプリケーションプログラムに基づき、クライアント14のセッション処理部64により実行されるセッション離脱処理を示すフロー図である。同図に示す処理は、メッセージ交換の参加者ユーザがセッションを途中で抜けるとき、すなわちクライアント14においてユーザがセッション離脱操作を行ったときに実行されるものである。この処理では、まずセッション離脱操作を行ったユーザがセッションの主催者であるか否かを判断する(S301)。クライアント14のユーザがセッションの主催者であるか否かは、クライアント14のセッション参加者記憶部74に記憶されるセッション参加者リストのうち、同ユーザのユーザIDに対応づけて記憶されている主催者フラグを参照することによって判断することができる。そして、セッション離脱操作を行ったユーザがセッションの主催者でなければ、同ユーザのユーザIDを含むセッション離脱通知データをLAN16にブロードキャストする(S304)。このセッション離脱通知データは、他のクライアント14により受信される。そして、セッション離脱通知データを受信したクライアント14では、セッション参加者記憶部74に記憶されるセッション参加者リストにおいて、該セッション離脱通知データに含まれるユーザIDに対応する参加者ステータスに、セッションから離脱した旨を設定する。その後、セッション参加者リストにおいてセッション中の旨の参加者ステータスに対応づけられているユーザによってセッションは続行される。
【0074】
S301において、セッション離脱操作を行ったユーザがセッションの主催者であると判断されると、次に、セッション処理部64では、同セッションに他のユーザが未だ参加しているか否かを判断する(S302)。すなわち、セッション参加者記憶部74に記憶されるセッション参加者リストを参照して、当該クライアント14のユーザ以外のユーザに係るレコードであって、参加者ステータスにセッション中の旨が設定されているものがまだ含まれているか否かにより、セッションに参加しているユーザがまだ他にいるか否かを判断する。そして、他にユーザがいると判断すると、そのうち1人を所定基準に従って選択し、そのユーザに対し、メッセージログ記憶部72に記憶されているメッセージログと共に、該メッセージログに基づく議事録データの送付先である1又は複数のユーザのユーザIDを送信する(S305)。メッセージログの送付先であるユーザは、セッションを開催するとき、参加者指定画面(図4)において指定したものの、そのときステータスがビジー又はログオフステータスであったために実際にはセッションに参加しなかったユーザであり、セッション開始時は、主催者ユーザのクライアント14に議事録送付先として不参加ユーザ記憶部64gに記憶される。そして、主催者ユーザがセッションから離脱するとき、他のユーザに対し、主催者ユーザのクライアント14において蓄積されているメッセージログが、該議事録送付先(1又は複数のユーザID)と共に送信される。
【0075】
メッセージログ及び議事録送付先を受信するユーザは、主催者としての地位を引き継ぐ。このため、クライアント14では、S305の処理においてメッセージログ及び議事録送付先の送信先を決定したとき、そのユーザIDが次の主催者であることを報知する主催者交代報知データをLAN16にブロードキャストする。クライアント14では、主催者交代報知データを受信すると、該データに含まれるユーザIDに対応づけてセッション参加者リストに記憶されている主催者フラグに、同ユーザIDに係るユーザがセッション主催者である旨を記憶させる。また、新主催者ユーザのクライアント14では、不参加ユーザ記憶部64gに議事録送付先であるユーザIDを記憶するとともに、メッセージログ記憶部72の内容を旧主催者ユーザから送信されてきたメッセージログに書き換える。旧主催者ユーザのクライアント14においては、メッセージログ及び議事録送付先を送信し終えると、セッション処理部64が、セッション離脱操作を行ったユーザのユーザIDを含むセッション離脱通知データをLAN16にブロードキャストする(S304)。
【0076】
一方、セッションに参加しているユーザが他にいないと判断されると(S302)、クライアント14では、メッセージログ記憶部72記憶されるメッセージログに基づいて議事録データを生成し、それを議事録送付先に送信する(S303)。このとき、各議事録送付先には、そのユーザIDに対応づけてユーザ記憶部68に記憶されている報告方法に従って議事録が送信される。また、議事録データには、セッション中、メッセージ交換画面に表示されたメッセージのうち全部又は一部が含まれる。
【0077】
なお、セッション参加者記憶部74に記憶されるセッション参加者リストにおいて、各参加者ステータスがセッション離脱済みの旨に変わったタイミング(例えばメッセージIDや時刻等)を記憶しておき、そのタイミングに基づいて、議事録送付先となるユーザを、実際にセッションに参加しながらも途中で離脱したユーザの中から選択するようにしてもよい。さらに、このとき各議事録送付先であるユーザの参加者ステータスがセッション離脱済みの旨に変わったタイミングに基づいて議事録の一部を抽出し、そのユーザに該一部だけを送信するようにしてもよい。
【0078】
また、主催者ユーザが使用するクライアント14では、他のユーザがセッション離脱通知データをLAN16にブロードキャストしてセッションから離脱したとき、そのユーザのユーザIDを議事録送付先に加えるようにしてもよい。このとき、同ユーザが離脱するとき最後にメッセージ交換画面に現れていたメッセージのメッセージIDを、その議事録送付先に加えるユーザIDに対応づけて記憶しておくようにすれば、後に同ユーザに対して議事録を送信するとき、該メッセージID以降のメッセージIDに係る議事録、すなわち議事録の一部だけを送信することができるようになる。
【0079】
以上説明したメッセージ交換アプリケーションプログラムによれば、ユーザの状況を把握して好適にメッセージ交換を開始することができ、例えばイントラネット等において好適にオンラインミーティングを開催することができる。
【0080】
なお、本発明は上記実施形態に限定されるものではない。
【0081】
例えば、以上の説明ではサーバ12を用いてユーザ管理するようにしたが、クライアント14だけでメッセージ交換システムを構成するようにしてもよい。また、以上の説明では、メッセージ交換データ等をLAN16にブロードキャストさせるようにしたが、メッセージ交換の参加者アドレスを相互に取得可能としておき、ブロードキャストによらずにメッセージ交換データを送受信するようにしてもよい。
【図面の簡単な説明】
【図1】本発明の実施形態に係るメッセージ交換システムの全体構成を示す図である。
【図2】ユーザ登録画面の一例を示す図である。
【図3】ログイン画面の一例を示す図である。
【図4】参加者指定画面の一例を示す図である。
【図5】メッセージ交換画面の一例を示す図である。
【図6】任意参加者設定画面の一例を示す図である。
【図7】指定ユーザが全員参加可能でないときに表示されるメニュー画面の一例を示す図である。
【図8】図7に示されるメニュー画面において「メッセージ交換可能時間を検索」を選択した場合に表示される検索結果表示画面の一例を示す図である。
【図9】ステータス報知データの構成を示す図である。
【図10】メッセージ交換開始要求データの構成を示す図である。
【図11】メッセージ交換データの構成を示す図である。
【図12】サーバの機能ブロック図である。
【図13】サーバに記憶されるユーザ情報を示す図である。
【図14】サーバに記憶されるスケジュール情報を示す図である。
【図15】サーバに記憶されるTODO情報を示す図である。
【図16】サーバに記憶されるメール情報を示す図である。
【図17】クライアントの機能ブロック図である。
【図18】セッション処理部の機能ブロック図である。
【図19】クライアントに記憶されるユーザ情報を示す図である。
【図20】クライアントに記憶されるセッションカウンタリストを示す図である。
【図21】クライアントに記憶されるセッション参加者リストを示す図である。
【図22】クライアントに記憶されるメッセージログを示す図である。
【図23】クライアントで実行されるログイン処理を示すフロー図である。
【図24】クライアントで実行されるステータス判断処理を示すフロー図である。
【図25】クライアントで実行されるセッション終了処理を示すフロー図である。
【符号の説明】
10 メッセージ交換システム、12 サーバ、14 クライアント、16 LAN(ローカルエリアネットワーク)、32 スケジュール記憶部、34 TODO記憶部、36 メール記憶部、38,68 ユーザ記憶部、40,62 ステータス監視/更新部、42 ユーザ登録部、44,77 ログイン/ログアウト処理部、48 メッセージ交換可能時間検索部、49 ステータス調査部、64 セッション処理部、64a ユーザ指定部、64b ステータス取得部、64c 決定部、64d メッセージ交換開始部、64e 必須参加者/任意参加者指定部、64f メッセージ交換日時出力部、64g 不参加ユーザ記憶部、66 セッションカウンタ記憶部、70 メッセージ交換可能タイミング監視部、71 現在ステータス判断部、72 メッセージログ記憶部、74 セッション参加者記憶部、75 セッション参加者更新部、76 メッセージ交換報告部。
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a message exchange system, a message terminal, and a program.
[0002]
[Prior art]
Conventionally, various message exchange systems such as e-mail, Internet Relay Chat (IRC), and electronic bulletin boards have been used. Among them, a real-time message exchange system such as an internet relay chat is very suitable for instantaneous information sharing among a plurality of users.
[0003]
[Problems to be solved by the invention]
The inventor of the present application examined applying such a real-time message exchange system to, for example, a local area network (LAN) laid in an office or the like, and holding an online meeting between users of the LAN. Then, when the conventional message exchange system is used for such a purpose, it has been recognized that it is extremely difficult to hold an online meeting after sufficiently understanding the situation of each user.
[0004]
The present invention has been made in view of the above problems, and an object of the present invention is to provide a message exchange system, a message terminal, and a program capable of grasping the situation of a user and appropriately starting message exchange. is there.
[0005]
[Means for Solving the Problems]
In order to solve the above-mentioned problems, a message exchange system according to the present invention provides a message exchange system including a plurality of message terminals, a user designation unit for designating one or more users, and a designation by the user designation unit. Status information obtaining means for obtaining status information pertaining to all or some of the users to be performed, based on the status information obtained by the status information obtaining means, based on at least one of the users involved in the message exchange or the start timing of the message exchange It is characterized by including a determining means for determining one of them, and a message exchange starting means for starting a message exchange in accordance with the content of the determination by the determining means.
[0006]
Further, the message terminal according to the present invention, a user designation means for designating one or more users, a situation information acquisition means for acquiring status information pertaining to all or some of the users designated by the user designation means, Deciding means for deciding at least one of a user involved in message exchange or start timing of message exchange based on the situation information acquired by the situation information acquiring means, and message exchange for starting message exchange according to the decision made by the deciding means Starting means.
[0007]
Further, a program according to the present invention includes a user designating means for designating one or more users, a situation information acquiring means for acquiring situation information on all or a part of the users designated by the user designating means, Deciding means for deciding at least one of a user involved in message exchange or a message exchange start timing based on the situation information acquired by the acquiring means, and message exchange starting means for starting message exchange according to the decision made by the deciding means Is a program for causing a computer to function as.
[0008]
In the present invention, when a user is designated by the user designating means, status information relating to all or a part of the user is acquired. The status information indicates whether each user is in a status where messages can be exchanged. Then, based on the status information thus obtained, the user involved in the message exchange is determined, or the start timing of the message exchange is determined. Then, message exchange is started according to the determined content. ADVANTAGE OF THE INVENTION According to this invention, it becomes possible to grasp | ascertain a user's situation and to start a message exchange suitably.
[0009]
Further, in one aspect of the present invention, the status information obtaining means may determine status information relating to all or a part of the users specified by the user specifying means based on usage status information of the terminal corresponding to the user. To get. The usage status information of the terminal includes, for example, 1) information indicating whether a keyboard connected to the terminal has not been used (input) for a predetermined time or more, and 2) a mouse connected to the terminal for a predetermined time or more. 3) Information indicating whether or not a click is connected to the terminal, 4) Whether or not a telephone or the like connected to the terminal is busy. 5) Information indicating whether the number of input characters per predetermined time of a keyboard connected to the terminal is equal to or more than a predetermined value, 6) Information pertaining to a predetermined time of a pointing device such as a mouse connected to the terminal. Is information indicating whether or not the number of clicks, the total movement amount, and the like are equal to or more than a predetermined amount. Such usage status information can be easily obtained by providing each terminal with a monitoring unit including a resident program and the like. Since the usage status of the terminal is considered to be related to the status of the user who uses the terminal (whether or not he / she can participate in message exchange such as busy work), according to this aspect, the status of the user is appropriately determined. I can figure it out.
[0010]
Further, according to one aspect of the present invention, the apparatus further includes a schedule information storage unit that stores schedule information of each user, wherein the status information obtaining unit includes a status related to all or a part of the users specified by the user specification unit. Information is acquired based on the user's schedule information stored in the schedule information storage means. The schedule information is, for example, schedule information (information associating date and time and action schedule) and TODO information (information associating work to be done and its due date). Since the schedule information of the user is considered to be related to the situation of the user (whether or not he / she can participate in message exchange such as busy work), according to this aspect, it is necessary to appropriately grasp the situation of the user. Can be.
[0011]
Further, in this aspect, based on schedule information relating to all or a part of the users specified by the user specifying means, date and time searching means for searching for a date and time at which the users can exchange messages together, And a search result output means for outputting a search result by the date and time search means. In this way, it is possible to grasp the date and time when future message exchange is possible and to start message exchange suitably.
[0012]
Further, according to one aspect of the present invention, the information processing apparatus further includes a mail storage unit that stores processing status information of a mail reaching each user, wherein the status information obtaining unit includes all or all of the users specified by the user specifying unit. Partial status information is obtained based on processing status information of each mail stored in the mail storage unit. The processing status information is, for example, information as to whether or not each mail has already been read by the user, whether or not each mail has been received by the user, and whether or not each mail has been returned. Since the processing status information of the mail is considered to be related to the status of the user who is the destination of the mail (whether or not he / she can participate in message exchange such as busy work), according to this aspect, the user is appropriately Situation can be grasped.
[0013]
In one aspect of the present invention, the determining means determines a user involved in message exchange based on the situation information acquired by the situation information acquiring means, and the message exchange starting means is decided by the determining means. Initiate a message exchange with another user. By doing so, it is possible to appropriately determine the users (participants and the like) involved in the message exchange.
[0014]
Further, in one aspect of the present invention, the determining means determines a message exchange start timing based on the situation information of the user acquired by the situation information acquiring means, and the message exchange start means is configured by the decision means Message exchange is started according to the determined start timing. In this way, message exchange can be started at an appropriate timing.
[0015]
In this aspect, the determining unit determines a timing at which all or some of the users specified by the user specifying unit can exchange messages, based on the status information of the user obtained by the status information obtaining unit. Monitoring may be performed and the timing may be determined as the start timing of the message exchange. This ensures that all or some of the designated users can exchange messages.
[0016]
In one aspect of the present invention, the system further includes a mandatory participant user designating means for designating a mandatory participant user for the message exchange among the users designated by the user designating means, wherein the determining means comprises the mandatory participant user designating means. The start timing of message exchange in which the essential participating users can exchange messages together is determined based on the status information on the essential participating users specified by (1). In this way, the essential participating users can exchange messages together.
[0017]
Further, in one aspect of the present invention, a non-participant user storage unit that stores a user who does not participate in a message exchange started by the message exchange start unit among users specified by the user designation unit, and the message exchange start unit Message exchange contents storage means for storing all or a part of the contents of the message exchange started by the message exchange means, and a user who stores all or a part of the contents of the message exchange contents storage means in the non-participant user storage means. Message transmitting means for transmitting the message to all or a part thereof. In this way, all or part of the contents of the message exchange can be transmitted to all or some of the non-participating users.
[0018]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings.
[0019]
FIG. 1 is a diagram showing an overall configuration of a message exchange system according to an embodiment of the present invention. As shown in FIG. 1, the message exchange system 10 includes a server 12 and a plurality of clients (message terminals) 14. The server 12 and the client 14 are both connected to the LAN 16 and can communicate with each other.
[0020]
The server 12 includes, for example, a known server computer system including a program execution unit such as a CPU, a storage unit such as a RAM, a ROM, and a hard disk storage device, a display unit, and an input unit. Here, an HTTPD (Hyper Text Transfer Protocol Daemon) and a CGI (Common Gateway Interface) program are installed in the server 12, and various requests received from the client 14 in accordance with HTTP (Hyper Text Transfer Protocol) are received in accordance with HTTP (Hyper Text Transfer Protocol). Data processing is performed, and response data (HTML data) is returned.
[0021]
The client 14 includes a known personal computer system including a program execution unit such as a CPU, a storage unit such as a RAM, a ROM, and a hard disk storage device, a display unit, and an input unit. Here, a Web browser is installed in the client 14, and the client 14 can access the server 12 using the Web browser and receive various services. Further, a message exchange application program is also installed in the client 14, so that the client 14 can exchange messages with other clients 14.
[0022]
In the message exchange system 10, first, a user of the client 14 performs user registration with the server 12. The users registered in the server 12 can exchange messages. FIG. 2 is a diagram illustrating an example of a user registration screen displayed on the Web browser of the client 14. This screen is displayed by accessing the server 12 from the client 14 by a Web browser and receiving HTML data from the server 12. On this screen, a user ID automatically assigned by the server 12 is displayed, a form for inputting a password and a name is displayed, and a pull-down menu for selecting a department and a report method is displayed. The menu contents are included in the HTML data received from the server 12. On the same screen, the user inputs a password and a name, and specifies a method of receiving a message, minutes, or the like transmitted from a department to which the user belongs and other users (for example, an e-mail address of an office or an e-mail address of a mobile phone). By selecting and clicking the registration button with a pointing device such as a mouse, the setting contents can be transmitted to the server 12. Upon receiving the setting contents on the user registration screen, the server 12 registers (stores) the setting contents in the database (user storage unit 38).
[0023]
When using the message exchange system 10, a user who has completed user registration must access the server 12 from the client 14 and log in. FIG. 3 is a diagram illustrating a login screen displayed on the client 14. This screen is displayed by, for example, a message exchange application program installed in the client 14. This screen includes a pull-down menu for selecting a department and a name, and a form for inputting a password. The content of the pull-down menu is based on the user information (user ID, name, department, and status (described later) that is received in advance from the server 12). When a department is selected on the screen, the contents of a pull-down menu for selecting a name are changed to members of the department. Thus, the user selects a department and a name, inputs a password with a keyboard or the like, and clicks a login button with a pointing device, thereby transmitting a login request including a user ID and a password corresponding to the name to the server 12. You can do it. The server determines the authenticity of the combination of the user ID and the password included in the login request by referring to the user information stored in advance. In the case of a login request with a genuine password, data indicating that the login is permitted is returned. On the other hand, in the case of a login request with a false password, data of a login rejection is returned. .
[0024]
The user who has successfully logged in performs a menu selection for hosting a message exchange on a main menu screen (not shown) when attempting to hold a message exchange. FIG. 4 is a diagram showing an example of the participant designation screen displayed on the client 14 in response to the menu selection. The participant designation screen shown in FIG. 3 is displayed by a message exchange application program installed in the client 14, and the name, department, status, and check box are displayed for each user registered in the server 12. Is displayed. The status (status information) indicates the status of the user. In this case, “ス テ ー タ ス” indicates a status indicating that the user is logged in and message exchange is possible, that is, a message exchange enable status. “△” indicates a status indicating that the user has logged in and cannot exchange messages, that is, a busy status. Further, “x” represents a status indicating that the user has not logged in yet, that is, a logoff status. This screen is displayed based on the user information received from the server 12 in advance, like the login screen.
[0025]
On the same screen, the user who intends to hold the message exchange, that is, the organizer user, clicks each check box corresponding to the user who wants to participate in the message exchange, and puts a check there. Then, click the “Next” button. At this time, if all the users whose check boxes are checked have the message exchange enabled status, a window (message exchange screen) shown in FIG. 5 is activated. The window shown in FIG. 5 also starts up in the client 14 used by another message exchange participant user.
[0026]
In the message exchange screen shown in FIG. 5, a message display column is provided at the upper left, and a participant display column is provided at the upper right. Further, a message input field is provided on the lower side. In the message display column, a speaker and a message (contents of speech) are displayed in the order of speech. In the participant display column, the names of the participants are displayed. Further, a form for inputting a message and a transmission button for broadcasting the form to the LAN 16 are displayed in the message input field. The user inputs his / her own message in the form of the message input field using a keyboard or the like while referring to the message of each participant displayed in the message display field, and clicks the send button with a mouse or the like, On the message exchange screen relating to the user and other participants, his / her name and message can be displayed in the message display column.
[0027]
In the participant designation screen shown in FIG. 4, when a user to whom a busy status or a logoff status is assigned is designated as a participant, message exchange cannot be immediately started by all the members. In this case, in the message exchange system 10, when the "next" button is pressed on the screen shown in FIG. 4, an optional participant (observer) designation screen shown in FIG. 6 is displayed. This optional participant designation screen is displayed by the message exchange application program on the client 14, and displays the name and status of the user designated on the participant designation screen shown in FIG. Check boxes are displayed in association with each other. The user checks the check box corresponding to the optional participant on this screen, that is, the user who does not necessarily need to participate in the message exchange, and clicks the “Next” button to participate in the message exchange in advance. Regarding the user specified on the participant specification screen shown in FIG. 4 as the user to be given, it is possible to specify the required participant and the optional participant.
[0028]
Next, the client 14 displays the menu screen shown in FIG. This menu screen is also displayed by the message exchange application program. On this screen, radio buttons are displayed for each of the three options of "Search for message exchange time", "Leave a message for users who are difficult to participate and start a session", and "Start session when required participants are available". Is displayed. In addition, a form for inputting a message is displayed in association with the option of “leave a message to a user who has difficulty participating and start a session”. Further, a form for inputting the first voice from the organizer in the session (message exchange) is displayed in association with the option of “start session when required participants are available”.
[0029]
When the organizer user selects “search for message exchange time” and clicks the OK button, a request to search the server 12 for a date and time when all participants can exchange messages, that is, a message exchange time search request Send This request includes the user ID of the user specified in FIG. Upon receiving the search result, the client 14 displays it as shown in FIG. It is also possible to search for a time during which a message can be exchanged between essential participants, that is, users who are not designated as optional participants on the optional participant designation screen shown in FIG. In this case, the search request to the server 12 includes a user other than the user specified in FIG. 6, that is, a user ID of a mandatory participating user. Further, the search range may be limited to the current day or may extend over a predetermined period. Furthermore, the above search conditions may be specified by the user.
[0030]
When the host user selects “leave a message to users who have difficulty participating and start a session”, inputs a message in a form corresponding to the option, and clicks an OK button, the message exchange shown in FIG. The screen is displayed on the client 14 of a user who can participate in the session among the users set on the participant designation screen shown in FIG. Further, the message input on the menu screen in FIG. 7 is transmitted to the client 14 of the user who cannot participate in the session, that is, has been given the busy status or the logoff status. This message is transmitted according to the report method set on the user registration screen of FIG. At this time, the message may reach the destination immediately, or may wait until the status of the user of the destination becomes the message exchangeable status before reaching the destination. In this case, the transmission timing may be controlled by the transmission source client 14, or the message is temporarily transmitted to the server 12, the message is temporarily stored in the server 12, and the transmission timing is controlled by the server 12. May be. Furthermore, the display or arrival notification of the message may be waited for at the transmission destination client 14 until the status of the user becomes the message exchangeable status.
[0031]
Further, when the user selects “Start session when required participants are prepared”, inputs the first voice in the corresponding form, and clicks the OK button, the user enters the first voice in the participant designation screen shown in FIG. The users who are not designated on the optional participant designation screen of FIG. 6, that is, all the mandatory participants monitor the timing at which all the messages can be exchanged, and when the timing comes, the setting is made on the participant designation screen of FIG. The message exchange is started in all the users who have the message exchange enabled status at that timing among the users who have been exchanged. Therefore, a session start request is transmitted to those users. The client 14 receiving the session start request and the host client 14 start the message exchange screen of FIG.
[0032]
FIG. 8 is a view showing an example of a search result display screen displayed on the client 14 when the user selects “search for possible message exchange times” and clicks the OK button on the menu screen shown in FIG. It is. In the search result screen shown in the figure, the message exchangeable date and time searched in the server 12 are displayed, and options of “start a session at this time” and “leave a message” are displayed. Each option is displayed in association with a radio button, so that the user can specify each option. In addition, a form for inputting the first voice from the organizer at the start of the session is displayed in association with "Start the session at this time", and a message is displayed in association with "Leave a message". The form for input is displayed.
[0033]
When the user selects “Start session at this time”, inputs the first voice, and clicks the OK button, the client 14 waits until that date and time, that is, the date and time when the message can be exchanged. A session start request is transmitted to the user set on the participant designation screen of FIG. At this time, if all or some of the users cannot actually exchange messages, the screens of FIGS. 6 to 8 are displayed again on the host user's client 14 and the processing described above is repeated.
[0034]
Next, specific processing of the message exchange system 10 that operates as described above will be described.
[0035]
FIG. 9 is a diagram illustrating status notification data that is periodically broadcast from the client 14 to the LAN 16 after logging in from the client 14 to the server 12 until logging off. As shown in the figure, the client 14 broadcasts the status of the user associated with the client 14 together with the server ID of the server to which the user has logged in and the user ID of the user. Thus, the client 14 relating to another user who has logged in to the same server can grasp the status of the newly logged-in user and update the user information accordingly.
[0036]
FIG. 10 is a diagram showing a session start request transmitted from a session organizer to a participant. As shown in the figure, the session start request (data) includes a server ID, a session ID, and a group of user IDs related to the participants of the message exchange. The server ID is information for identifying the server 12. When a plurality of servers 12 are connected to the LAN 16, the client 14 can determine which server 12 is requested to start a session. . The session ID is information for identifying each session. More specifically, the session ID includes a user ID of the host and a session counter held by the host. When the host user hosts a session and requests another user to start a session, the session counter is incremented, so that the session ID is uniquely assigned to each session in the LAN 16. It has become.
[0037]
The session start request is broadcast to the LAN 16. In the message exchange application program of each client 14, the group of user IDs included in the session start request includes the user ID of the user who uses the own device. It monitors whether or not there is. If the message is included, the message exchange screen is activated on the client 14 to start the message exchange. At this time, each client 14 stores a server ID, a session ID, and a user ID group relating to the session in which the client 14 is participating, for example, until the end of the session.
[0038]
FIG. 11 is a diagram showing message exchange data. The data shown in the figure is broadcast on the LAN 16 when a message is entered in the message input field on the message exchange screen and the send button is clicked. The message exchange data specifically includes a server ID, a session ID, a message ID, and a message. The server ID and the session ID are the same as those included in the session start request. More specifically, the message ID includes the user ID of the speaker and the message counter of the speaker held in the client 14. Each client 14 increments the message counter each time a message is transmitted / received in each session, so that the message ID can identify the message in each session. The message is data input in the message input field on the message exchange screen of FIG. The client 14 participating in one of the sessions monitors whether the message exchange data including the server ID and the session ID related to the participating session stored in the machine is broadcast to the LAN 16 or not. If such message exchange data is broadcast, it is received, and the message and the name of the speaker (obtained from the user information (FIG. 19) based on the user ID of the speaker) are displayed on the message exchange screen. I do. Further, the contents are additionally stored in the message log (FIG. 22).
[0039]
Here, the configuration of the server 12 will be described.
[0040]
FIG. 12 is a functional block diagram of the server 12. As shown in the figure, functions realized by the server 12 include a schedule storage unit 32, a TODO storage unit 34, a mail storage unit 36, a user storage unit 38, a status monitoring / updating unit 40, A registration unit 42, a login / logout processing unit 44, a message exchangeable time search unit 48, and a status investigation unit 49 are included. These functions are realized by the server 12 executing a CGI program, a resident program, and the like.
[0041]
Here, the schedule storage unit 32 is configured to include, for example, a hard disk storage device or the like, and stores a schedule (schedule information) of each user. The TODO storage unit 34 includes, for example, a hard disk storage device and the like, and stores TODO (schedule information) of each user. The mail storage unit 36 is configured to include, for example, a hard disk storage device, and stores and stores mail transmitted and received by each user and the processing status (unread or read, presence or absence of reply, etc.). Things. These pieces of information are managed by a groupware program (not shown), which is a group of CGI programs. The program newly registers and updates these pieces of information in response to a request transmitted from the Web browser of the client 14, and updates the user information. Or to check the contents.
[0042]
The user storage unit 38 is configured to include, for example, a hard disk storage device and the like, and stores data relating to registered users of the message exchange system 10, that is, user information. The status monitoring / updating unit 40 is realized by, for example, a resident program or the like, monitors and receives status notification data (see FIG. 9) broadcast on the LAN 16, and according to the content thereof, a user storage unit 38. Update the status of each user stored in. The user registration unit 42 is realized by, for example, a CGI program or the like, and returns HTML data for displaying a user registration screen in response to a request from the client 14. When the information is transmitted from the user, information such as a user ID, a name, a password, and a report method included in the request is registered in the user storage unit 38.
[0043]
The login / logout processing unit 44 has a login processing function realized by, for example, a CGI program, and a logout processing function realized by, for example, a resident program and a CGI program. In the login process, the user information stored in the user storage unit 38 is returned in response to the login request from the client 14, and the user information is used to execute the user authentication process in response to the returned authentication request. If so, the login is permitted, and a login flag (described later) to that effect is stored in the user storage unit 38. On the other hand, if the login is not possible, the login is rejected. In the logout process, when a logout request is transmitted from the client 14, a logout flag indicating logout is stored in the user storage unit 38 in association with the user ID associated with the logout request. Further, if data such as status notification data relating to a certain user has not been transmitted for a predetermined period of time, it is determined that the user has logged out, and a login flag indicating that the user has been logged out is stored in the user storage unit 38 in association with the user. Remember.
[0044]
When the message exchange available time search unit 48 receives a message exchange available time search request including one or more user IDs from the client 14, the message exchange available time search unit 48 acquires the user's schedule associated with those user IDs from the schedule storage unit 32, and Search for a time when everyone can exchange messages. The message exchangeable time search unit 48 receives a message exchangeable time search request including search conditions such as a time range and a date range serving as a search range from the client 14, and searches for a message exchangeable time according to the search conditions. You may. Further, the status investigation unit 49 is realized by, for example, a resident program, and when receiving a status investigation request including a user ID from the client 14, processes the schedule information, the TODO information, and the mail corresponding to the user ID. The status is read from each of the schedule storage unit 32, the TODO storage unit 34, and the mail storage unit 36, and the status of the user identified by the user ID is determined based on the information, and the determination result is returned.
[0045]
FIG. 13 is a diagram illustrating an example of the user information stored in the user storage unit 38. As shown in the figure, the user information indicates a user ID, a name, a department, a status of the user corresponding to the user ID, a message reporting method designated by the user, a password, and whether or not the user is logged in. Flags (login flags) are associated with each other. Among these, the user ID, name, department, report method, and password store data input or specified by the user on the user registration screen shown in FIG. The status is updated by the status monitoring / updating unit 40 according to the status notification data transmitted from each client 14. The status is further updated by the login / logout processing unit 44 according to the value of the login flag. The login flag is updated by the login / logout processing unit 44.
[0046]
FIG. 14 is a diagram showing schedule information stored in the schedule storage unit 32. As shown in the figure, the schedule information associates the schedule ID, date and time, schedule content, and schedule member. The schedule ID is information for identifying each schedule in the server 12. The date and time is the date and time of the schedule. The schedule content includes, for example, the distinction between a meeting and a business trip, the place where the meeting is held, the degree of importance, and the like. The schedule member is a user ID of one or more users related to the schedule. When a message exchange possible time search request including one or more user IDs is received from the client 14, the message exchange available time search unit 48 stores the date and time and contents of the schedule whose user ID is included in the schedule member column. The message is read out from the unit 32 and a message exchange available time is searched based on the contents. For example, for all the users related to the user IDs received from the client 14, a date and time when no schedule is included is retrieved, and the retrieved date and time is returned to the client 14 as a message exchangeable time. Further, when receiving a status investigation request including the user ID from the client 14, the status investigation unit 49 reads the date and time and the content of the schedule including the user ID in the schedule member column, and based on the read, reads the user associated with the user ID. Determine the current status of. Then, the result of the determination is returned to the client 14.
[0047]
The server 12 also has a schedule management function (groupware function) (not shown) realized by, for example, a CGI program or the like, and accesses the schedule storage unit 32 in response to a request from the client 14 to update a schedule. It can be registered, modified and read.
[0048]
FIG. 15 is a diagram showing the TODO information stored in the TODO storage unit 34. As shown in the figure, the TODO information associates the user ID, the work content (TODO content) that must be processed by the user corresponding to the user ID, and the time limit (TODO time limit). When receiving the status investigation request including the user ID from the client 14, the status investigation unit 49 reads the TODO expiration date corresponding to the user ID, and if the TODO content whose date is the TODO expiration date is equal to or more than the predetermined number, Reply busy status. The server 12 also has a not-shown TODO management function (groupware function) realized by, for example, a CGI program or the like, and accesses the TODO storage unit 34 in response to a request from the client 14 to store TODO information. It can be newly registered, modified, and read.
[0049]
FIG. 16 is a diagram showing the mail information stored in the mail storage unit 36. As shown in the figure, the mail information is obtained by associating a user ID, mail contents (header information, text, etc.), a reception date and time, and a read flag (processing status) indicating read or unread. . When receiving a status investigation request including the user ID from the client 14, the status investigation unit 49 examines the number of e-mails corresponding to the user ID whose read flag is set to a value indicating unread in the e-mail. If the number is equal to or more than a predetermined number, a busy status is returned. In addition, the server 12 has a mail transmission / reception / browsing function (groupware function) (not shown) realized by, for example, a CGI program or the like. Can be sent and received, and mail that has already arrived can be viewed.
[0050]
Next, the configuration of the client 14 will be described.
[0051]
FIG. 17 is a functional block diagram of the client 14. As shown in the figure, functions realized by the client 14 include a status monitoring / updating unit 62, a session processing unit 64, a session counter storage unit 66, a user storage unit 68, a message exchangeable timing monitoring unit. 70, a current status determination unit 71, a message log storage unit 72, a session participant storage unit 74, a session participant update unit 75, a message exchange report unit 76, and a login / logout processing unit 77. Have been. These functions are realized by the client 14 executing the message exchange application program.
[0052]
Here, the status monitoring / updating unit 62 receives the status notification data broadcasted to the LAN 16 (see FIG. 9), and receives the status information included in the user information stored in the user storage unit 68 based on the status notification data. To update. If the session start request data broadcast on the LAN 16 includes the user ID of the user using the client 14, the session processing unit 64 displays a message exchange screen. When the message exchange screen is displayed on the client 14, the message exchange data (FIG. 11) broadcast on the LAN 16 includes the session ID of the session currently participating in the client 14. And the message exchange screen is updated based on the received message. In addition, the session processing unit 64 performs various processes for a user who hosts a message exchange and various processes for a user who leaves a session (described later).
[0053]
The session counter storage unit 66 stores the value of the session counter of each user. The user storage unit 68 stores user information received from the server 12. The message exchange possible timing monitoring unit 70 monitors the status of the participants of the message exchange designated by the user, and, at the timing when all of them become the message possible status, the message exchange start request including the user IDs of those participants. The data is broadcast to the LAN 16. The current status determination unit 71 is realized by, for example, a resident program, monitors the input amount of an input device (keyboard or mouse) from a predetermined time before to the present, and if the input amount is equal to or more than the predetermined amount, a busy status Is determined. If it is less than the predetermined amount, a status check request is transmitted to the server 12, and the status is determined according to the response. Then, the status determined in this way is stored in the user storage unit 68 in association with the user ID of the user corresponding to the client 14, and is broadcast to the LAN 16 as status notification data.
[0054]
The message log storage unit 72 stores a message (speech) of each participant user displayed in the message display column while the message exchange screen is displayed on the client 14 and the message exchange is being performed. The session participant storage unit 74 stores information on users who are participating in the session. The session participant updating unit 75 receives the session leaving data (including the server ID, the session ID, and the user ID) broadcasted on the LAN 16, and updates the storage contents of the session participant storage unit 74 based on the data. In addition, it receives the session participation notification data from the user who participates in the session, and updates the storage contents of the session participant storage unit 74 based on the data.
[0055]
When the user finally leaves the session, the message exchange report unit 76 generates a minutes based on the message log stored in the message log storage unit 72, and did not participate in the session or left the session in the middle. Send to user. The login / logout processing unit 77 displays a login screen and broadcasts status data to the LAN 16 if user authentication is possible. Also, at the time of logout, logout notification data is broadcast to the LAN 16.
[0056]
The session processing unit 64 performs various processes for a user who hosts a message exchange (detailed later). That is, as shown in FIG. 18, the session processing unit 64 includes a user designation unit 64a, a status acquisition unit 64b, a determination unit 64c, a message exchange start unit 64d, a mandatory participant / arbitrary participant designation unit 64e, a message exchange possible date and time. It includes an output section 64f and a non-participating user storage section 64g.
[0057]
Here, the user designation unit 64a displays the participant designation screen shown in FIG. 4 based on the user information transmitted from the client 12, and allows the sponsor user to designate one or more users. The status acquisition unit 64b acquires the status of the user designated by the user designation unit 64a from the user storage unit 68. The determining unit 64c determines at least one of a user who actually participates in the message exchange and a message exchange start timing based on the status acquired by the status acquiring unit 64b. The message exchange start unit 64d starts message exchange in accordance with the content determined by the determination unit 64c.
[0058]
In particular, the determining unit 64c includes a function of determining a user to actually participate in the message exchange based on the status acquired by the status acquiring unit 64b, and the message exchange starting unit 64d is determined by the determining unit 64c. Initiate a message exchange with the user.
[0059]
The deciding unit 64c has a function of deciding the start timing of the message exchange based on the status of the user acquired by the status acquiring unit 64b. The message exchanging start unit 64d starts the message exchange by the deciding unit 64c. Start message exchange according to timing. For example, the determining unit 64c monitors the timing at which all or some of the users specified by the user specifying unit 64a can exchange messages based on the status of the user obtained by the status obtaining unit 64b. The timing is determined as the start timing of the message exchange.
[0060]
Further, the mandatory participant / optional participant designation unit 64e displays, for example, an arbitrary participant designation screen shown in FIG. 6, and among the users designated by the user designation means, the mandatory participant user and the optional participant user of the message exchange. It is specified. The deciding unit 64c utilizes this function to make it possible for all the required participants to exchange messages based on the status of the required participants specified by the required / optional participant specifying unit 64e. The start timing of the exchange may be determined.
[0061]
Further, the message exchange possible date / time output unit 64f transmits a message exchange available date / time search request to the message exchange available date / time search unit 48 of the server 12, and sends all of the users designated by the user designation unit 64a to the server 12. Alternatively, based on part of the schedule information, a date and time at which the users can exchange messages together are searched. Then, the message exchange date / time output unit 64f receives the search result, and displays and outputs the result as shown in FIG. 8, for example.
[0062]
In addition, the non-participating user storage unit 64g stores, among the users specified by the user specifying unit 64a, those who do not actually participate in the message exchange started by the message exchange starting unit 64d, that is, those who do not transmit the message exchange start request, The user ID is stored. The non-participating user storage unit 64g is used to specify the destination when the message exchange report unit 76 sends the minutes based on the contents stored in the message log storage unit 72.
[0063]
FIG. 19 is a diagram showing the user information stored in the user storage unit 68. As shown in the figure, the user information stored in the client 14 is associated with a user ID, a name, a department, a status, and a reporting method. These pieces of information are downloaded from the user storage unit 38 of the server 12 when the user logs in to the server 12 from the client 14. Then, the status monitoring / updating unit 62 monitors status notification data broadcast to the LAN 16 and associates the status stored in the user storage unit 38 with the user ID included in the status notification data to the status notification. Update based on the status contained in the data.
[0064]
FIG. 20 is a diagram showing a session counter list stored in the session counter storage unit 66. As shown in the drawing, the session counter list associates server IDs, user IDs, and session counter values. The session counter value is a numerical value that is increased by one each time a user identified by a user ID starts a message exchange (session) in a message exchange held in association with the server 12 identified by the server ID. Then, when logging in to the server 12, each client 14 broadcasts a session counter value corresponding to a user ID of a user using the own device to the LAN 16 together with the user ID. The other client 14 receives the session counter value and the user ID, and updates the session counter list stored in the client 14 accordingly. Thus, the same session counter list is stored in all the clients 14. Then, based on the session counter list, the client 14 determines whether the message exchange start request data broadcast on the LAN 16 is new.
[0065]
FIG. 21 is a diagram illustrating an example of the session participant list stored in the session participant storage unit 74. The session participant list shown in FIG. 3 is generated and updated while the session is continued in the client 14, and is stored in the session participant storage unit 74. An optional participant flag indicating whether the user associated with the user ID is an optional participant or a mandatory participant, a message counter value indicating the number of utterances of the user, and a host indicating whether the user is the host And a participant status indicating whether the user has participated in the session or has already left the session. The client 14 can determine whether the message data broadcast to the LAN 16 is the latest message based on the message count value included in the session participant list. In addition, the session processing unit 46 transmits the message input on the message exchange screen to another session participant, and therefore, among the user IDs included in the session participant list, the corresponding participant status is “in-session”. Is included in the message exchange data.
[0066]
FIG. 22 is a diagram illustrating an example of a message log stored in the message log storage unit 72. The message log shown in FIG. 3 is stored and updated while a session continues in the client 14, and includes a server ID of a server associated with the session, a session ID of the session, a message ID of each message, and Make the messages correspond. Each record is additionally stored based on message data broadcasted to the LAN 16 and received by the client 14.
[0067]
Here, the processing of the message exchange application program of the client 14 will be described based on a flowchart.
[0068]
FIG. 23 is a flowchart showing a login process executed by the login / logout processing unit 77 of the client 14 based on the message exchange application program. As shown in the figure, in the login processing, first, the client 14 transmits a login request to the server 12 (S101). Upon receiving this request, the login / logout processing unit 44 of the server 12 reads the user information excluding the password and the login flag from the user storage unit 38, and returns the information. The client 14 receives this information from the server 12 (S102) and displays the login screen shown in FIG. 3 based on the information (S103). Next, the authentication request data including the user ID and the password is transmitted to the server 12 based on the setting contents of the user on the login screen (S104). Upon receiving the authentication request data, the login / logout processing unit 44 of the server 12 compares the authentication request data with the user information stored in the user storage unit 38, determines the authenticity thereof, and returns the determination result to the client 14. If it is determined that the authentication data is authentic (S105), the client 14 checks the current status of the client 14 (S106). This status check process is executed by the current status determination unit 71, and will be described later in detail with reference to FIG. The client 14 broadcasts the server ID of the server 12, the status obtained in S106, and the session counter value of the login user read from the session counter storage unit 66 to the LAN 16 (S107), and ends the login process. In this case, for example, a main menu is displayed on the client 14 so that the user can select and designate the holding of message exchange and the like.
[0069]
On the other hand, if the authentication data is not found to be authentic in the server 12 in S105, an error message is displayed on the client 14 (S108), and the login process ends. In this case, for example, a dialog for transmitting a login request to the server 12 again is displayed on the client 14.
[0070]
FIG. 24 is a flowchart showing a status determination process executed by the current status determination unit 71 of the client 14 based on the message exchange application program. The process shown in FIG. 3 is executed when the client 14 logs in to the server 12, and is also executed periodically after logging in until the client logs out. In this process, first, in the client 14, an input device such as a keyboard or a mouse determines the usage amount (S201). If the usage of the input device is equal to or more than a predetermined reference (for example, when the number of input characters or the number of clicks per predetermined time is equal to or more than a predetermined reference value), it is determined that the current status of the user is a busy status. (S204).
[0071]
On the other hand, if the used amount of the input device is less than the predetermined reference, a status investigation request including the user ID is transmitted to the server 12 (S202). Upon receiving this request, the status checking unit 49 of the server 12 allows the user identified by the received user ID to exchange a message based on the contents stored in the schedule storage unit 32, the TODO storage unit 34, and the mail storage unit 36. It is determined whether or not there is. Then, the status as the determination result is returned to the client 14, and the content is reflected in the user storage unit 38. The client 14 receives the status as the determination result from the server 12 (S203), and determines the current status of the user according to the content (S204).
[0072]
In this way, it is possible to appropriately determine whether each user can exchange messages. If an external device such as a telephone is connected to the client 14, the status of the user may be determined based on the usage status of the device. For example, if the telephone connected to client 14 is busy, the current status of the user may be determined to be busy status.
[0073]
FIG. 25 is a flowchart showing a session leaving process executed by the session processing unit 64 of the client 14 based on the message exchange application program. The process shown in the figure is executed when a participant user of the message exchange leaves the session halfway, that is, when the user performs a session leaving operation in the client 14. In this process, first, it is determined whether or not the user who has performed the session leaving operation is the host of the session (S301). Whether the user of the client 14 is the host of the session or not is determined in the session participant list stored in the session participant storage unit 74 of the client 14 in association with the user ID of the user. It can be determined by referring to the person flag. If the user who has performed the session leaving operation is not the host of the session, the server broadcasts session leaving notification data including the user ID of the user to the LAN 16 (S304). This session leaving notification data is received by another client 14. Then, the client 14 that has received the session leaving notification data sets the participant status corresponding to the user ID included in the session leaving notification data in the session participant list stored in the session participant storage unit 74 to leave the session. Set that you have done. Thereafter, the session is continued by the user associated with the participant status indicating that the session is in progress in the session participant list.
[0074]
In S301, when it is determined that the user who has performed the session leaving operation is the host of the session, the session processing unit 64 determines whether another user is still participating in the session (S301). S302). That is, a record related to a user other than the user of the client 14 with reference to the session participant list stored in the session participant storage unit 74, in which the session status is set to the participant status. It is determined whether or not there is still another user participating in the session based on whether or not is included. When it is determined that there is another user, one of them is selected according to a predetermined standard, and the user is sent to the user with the message log stored in the message log storage unit 72 and the minutes data based on the message log. The user ID of one or a plurality of previous users is transmitted (S305). When holding the session, the user who is the destination of the message log specified on the participant designation screen (FIG. 4), but did not actually participate in the session because the status was busy or logoff status at that time. At the start of the session, the host is stored in the non-participating user storage unit 64g as a destination of minutes in the client 14 of the host user. When the host user leaves the session, a message log stored in the host user's client 14 is transmitted to other users together with the minutes destination (one or more user IDs). .
[0075]
The user receiving the message log and the minutes destination takes over the status as the organizer. Therefore, when the client 14 determines the transmission destination of the message log and the minutes transmission destination in the process of S305, the client 14 broadcasts, to the LAN 16, the organizer change notification data for notifying that the user ID is the next organizer. . When the client 14 receives the organizer change notification data, the user associated with the user ID is the session organizer in the organizer flag stored in the session participant list in association with the user ID included in the data. To the effect. Further, the client 14 of the new host user stores the user ID, which is the destination of the minutes, in the non-participating user storage unit 64g, and stores the contents of the message log storage unit 72 in the message log transmitted from the old host user. rewrite. In the client 14 of the former host user, when the transmission of the message log and the minutes destination is completed, the session processing unit 64 broadcasts the session leaving notification data including the user ID of the user who performed the session leaving operation to the LAN 16. (S304).
[0076]
On the other hand, when it is determined that there is no other user participating in the session (S302), the client 14 generates minutes data based on the message log stored in the message log storage unit 72, and generates the minutes data. The data is transmitted to the destination (S303). At this time, the minutes are transmitted to each minutes destination according to the reporting method stored in the user storage unit 68 in association with the user ID. The minutes data includes all or some of the messages displayed on the message exchange screen during the session.
[0077]
In the session participant list stored in the session participant storage unit 74, the timing (for example, message ID, time, etc.) at which each participant status changes to a session withdrawal state is stored, and based on the timing. The user to whom the minutes should be sent may be selected from the users who have left during the session while actually participating in the session. Furthermore, at this time, a part of the minutes is extracted based on the timing at which the participant status of the user to whom the minutes are sent is changed to the session exit, and only the part is transmitted to the user. You may.
[0078]
In the client 14 used by the host user, when another user broadcasts the session leaving notification data to the LAN 16 and leaves the session, the user ID of the user may be added to the minutes destination. At this time, if the message ID of the last message that appeared on the message exchange screen when the user leaves is stored in association with the user ID to be added to the destination of the minutes, the user can be stored later. When the minutes are transmitted, the minutes related to the message IDs subsequent to the message ID, that is, only a part of the minutes can be transmitted.
[0079]
According to the message exchange application program described above, it is possible to start the message exchange suitably by grasping the situation of the user, and to suitably hold an online meeting on an intranet or the like.
[0080]
Note that the present invention is not limited to the above embodiment.
[0081]
For example, in the above description, user management is performed using the server 12, but a message exchange system may be configured with only the client 14. Further, in the above description, the message exchange data and the like are broadcast on the LAN 16, but the participant addresses of the message exchange can be mutually acquired, and the message exchange data may be transmitted and received without using the broadcast. Good.
[Brief description of the drawings]
FIG. 1 is a diagram showing an overall configuration of a message exchange system according to an embodiment of the present invention.
FIG. 2 is a diagram illustrating an example of a user registration screen.
FIG. 3 is a diagram illustrating an example of a login screen.
FIG. 4 is a diagram showing an example of a participant designation screen.
FIG. 5 is a diagram showing an example of a message exchange screen.
FIG. 6 is a diagram showing an example of an optional participant setting screen.
FIG. 7 is a diagram showing an example of a menu screen displayed when all designated users cannot participate.
8 is a diagram showing an example of a search result display screen displayed when “search for message exchange available time” is selected on the menu screen shown in FIG. 7;
FIG. 9 is a diagram showing a configuration of status notification data.
FIG. 10 is a diagram showing a configuration of message exchange start request data.
FIG. 11 is a diagram showing a configuration of message exchange data.
FIG. 12 is a functional block diagram of a server.
FIG. 13 is a diagram showing user information stored in a server.
FIG. 14 is a diagram showing schedule information stored in a server.
FIG. 15 is a diagram showing TODO information stored in a server.
FIG. 16 is a diagram showing mail information stored in a server.
FIG. 17 is a functional block diagram of a client.
FIG. 18 is a functional block diagram of a session processing unit.
FIG. 19 is a diagram showing user information stored in a client.
FIG. 20 is a diagram showing a session counter list stored in the client.
FIG. 21 is a diagram showing a session participant list stored in the client.
FIG. 22 is a diagram showing a message log stored in a client.
FIG. 23 is a flowchart showing a login process executed by a client.
FIG. 24 is a flowchart showing a status determination process executed by a client.
FIG. 25 is a flowchart showing a session termination process executed by the client.
[Explanation of symbols]
10 message exchange system, 12 servers, 14 clients, 16 LAN (local area network), 32 schedule storage, 34 TODO storage, 36 mail storage, 38, 68 user storage, 40, 62 status monitoring / updating, 42 User registration unit, 44, 77 Login / logout processing unit, 48 Message exchange available time search unit, 49 Status investigation unit, 64 Session processing unit, 64a User designation unit, 64b Status acquisition unit, 64c determination unit, 64d Message exchange start Part, 64e mandatory participant / optional participant designation part, 64f message exchange date and time output part, 64g non-participant user storage part, 66 session counter storage part, 70 message exchangeable timing monitoring part, 71 current status judgment part, 72 message log record Storage unit, 74 session participant storage unit, 75 session participant update unit, 76 message exchange report unit.

Claims (13)

複数のメッセージ端末を含んで構成されるメッセージ交換システムにおいて、
1以上のユーザを指定するユーザ指定手段と、
前記ユーザ指定手段により指定されるユーザのうち全部又は一部に係る状況情報を取得する状況情報取得手段と、
前記状況情報取得手段により取得される状況情報に基づき、メッセージ交換に関わるユーザ又はメッセージ交換の開始タイミングのうち少なくとも一方を決定する決定手段と、
前記決定手段による決定内容に従ってメッセージ交換を開始するメッセージ交換開始手段と、
を含むことを特徴とするメッセージ交換システム。
In a message exchange system including a plurality of message terminals,
User designating means for designating one or more users;
Status information obtaining means for obtaining status information relating to all or some of the users specified by the user specifying means,
Determining means for determining at least one of a user involved in message exchange or a message exchange start timing based on the situation information acquired by the situation information acquisition means,
Message exchange start means for starting message exchange according to the content of the determination by the determination means,
A message exchange system comprising:
請求項1に記載のシステムにおいて、
前記状況情報取得手段は、前記ユーザ指定手段により指定されるユーザのうち全部又は一部に係る状況情報を、該ユーザに対応する前記端末の使用状況情報に基づいて取得する、ことを特徴とするシステム。
The system according to claim 1,
The status information obtaining means obtains status information relating to all or some of the users specified by the user specification means based on usage status information of the terminal corresponding to the user. system.
請求項1又は2に記載のシステムにおいて、
各ユーザの予定情報を記憶する予定情報記憶手段をさらに含み、
前記状況情報取得手段は、前記ユーザ指定手段により指定されるユーザのうち全部又は一部に係る状況情報を、前記予定情報記憶手段に記憶される該ユーザの予定情報に基づいて取得する、ことを特徴とするシステム。
The system according to claim 1 or 2,
Further comprising schedule information storage means for storing schedule information of each user,
The situation information acquiring means acquires situation information relating to all or a part of the users designated by the user designation means based on the schedule information of the user stored in the schedule information storage means. Features system.
請求項1乃至3のいずれかに記載のシステムにおいて、
各ユーザに届いているメールの処理状況情報を記憶するメール記憶手段をさらに含み、
前記状況情報取得手段は、前記ユーザ指定手段により指定されるユーザのうち全部又は一部に係る状況情報を、前記メール記憶手段に記憶される各メールの処理状況情報に基づいて取得する、ことを特徴とするシステム。
The system according to any one of claims 1 to 3,
Further comprising a mail storage means for storing processing status information of the mail reaching each user,
The status information obtaining unit obtains status information relating to all or a part of the users specified by the user specifying unit based on processing status information of each mail stored in the mail storage unit. Features system.
請求項1乃至4のいずれかに記載のシステムにおいて、
前記決定手段は、前記状況情報取得手段により取得される状況情報に基づき、メッセージ交換に関わるユーザを決定し、
前記メッセージ交換開始手段は、前記決定手段により決定されるユーザによるメッセージ交換を開始する、
ことを特徴とするシステム。
The system according to any one of claims 1 to 4,
The determining means determines a user involved in message exchange based on the situation information acquired by the situation information acquiring means,
The message exchange start means starts a message exchange by the user determined by the determination means,
A system characterized in that:
請求項1乃至4のいずれかに記載のシステムにおいて、
前記決定手段は、前記状況情報取得手段により取得されるユーザの状況情報に基づき、メッセージ交換の開始タイミングを決定し、
前記メッセージ交換開始手段は、前記決定手段により決定される開始タイミングに従ってメッセージ交換を開始する、
ことを特徴とするシステム。
The system according to any one of claims 1 to 4,
The determining means determines the start timing of the message exchange based on the situation information of the user acquired by the situation information acquiring means,
The message exchange start means starts message exchange according to a start timing determined by the determination means,
A system characterized in that:
請求項6に記載のシステムにおいて、
前記決定手段は、前記状況情報取得手段により取得されるユーザの状況情報に基づき、前記ユーザ指定手段により指定されるユーザのうち全部又は一部がメッセージ交換をすることができるタイミングを監視し、該タイミングを前記メッセージ交換の開始タイミングとして決定する、ことを特徴とするシステム。
The system according to claim 6,
The determining means monitors timing at which all or some of the users specified by the user specifying means can exchange messages based on the status information of the user obtained by the status information obtaining means, A system wherein timing is determined as a start timing of said message exchange.
請求項1乃至7のいずれかに記載のシステムにおいて、
前記ユーザ指定手段により指定されるユーザのうち前記メッセージ交換の必須参加ユーザを指定する必須参加ユーザ指定手段をさらに含み、
前記決定手段は、前記必須参加ユーザ指定手段により指定される必須参加ユーザに係る状況情報に基づき、それら必須参加ユーザが揃ってメッセージ交換をすることができるメッセージ交換の開始タイミングを決定する、
ことを特徴とするシステム。
The system according to any one of claims 1 to 7,
A mandatory participant user designating means for designating a mandatory participant user of the message exchange among the users designated by the user designating means,
The determining unit determines a message exchange start timing at which the essential participating users can exchange messages together based on the status information on the essential participating users specified by the mandatory participating user specifying unit.
A system characterized in that:
請求項3に記載のシステムにおいて、
前記ユーザ指定手段により指定されるユーザのうち全部又は一部に係る予定情報に基づき、それらユーザが揃ってメッセージ交換をすることができる日時を検索する日時検索手段と、
前記日時検索手段による検索結果を出力する検索結果出力手段と、
をさらに含むことを特徴とするシステム。
The system according to claim 3,
Based on schedule information pertaining to all or some of the users specified by the user specifying unit, based on date and time searching means for searching for a date and time at which the users can exchange messages together;
Search result output means for outputting a search result by the date and time search means,
A system further comprising:
請求項1乃至9のいずれかに記載のシステムにおいて、
前記状況情報は、各ユーザがメッセージ交換をすることができる状況にあるか否かを表す、ことを特徴とするシステム。
The system according to any one of claims 1 to 9,
The system according to claim 1, wherein the status information indicates whether each user is in a status where a message can be exchanged.
請求項1乃至10のいずれかに記載のシステムにおいて、
前記ユーザ指定手段により指定されるユーザのうち、前記メッセージ交換開始手段により開始されるメッセージ交換に参加しないユーザを記憶する不参加ユーザ記憶手段と、
前記メッセージ交換開始手段により開始されるメッセージ交換の内容の全部又は一部を記憶するメッセージ交換内容記憶手段と、
前記メッセージ交換内容記憶手段の記憶内容のうち全部又は一部を前記不参加ユーザ記憶手段に記憶されるユーザの全部又は一部に送信するメッセージ送信手段と、
を含むことを特徴とするシステム。
The system according to any one of claims 1 to 10,
Non-participating user storage means for storing users who do not participate in the message exchange started by the message exchange starting means among the users specified by the user specifying means,
Message exchange content storage means for storing all or a part of the content of the message exchange started by the message exchange start means,
Message transmitting means for transmitting all or a part of the stored contents of the message exchange content storing means to all or a part of the users stored in the non-participating user storing means,
A system comprising:
1以上のユーザを指定するユーザ指定手段と、
前記ユーザ指定手段により指定されるユーザのうち全部又は一部に係る状況情報を取得する状況情報取得手段と、
前記状況情報取得手段により取得される状況情報に基づき、メッセージ交換に関わるユーザ又はメッセージ交換の開始タイミングのうち少なくとも一方を決定する決定手段と、
前記決定手段による決定内容に従ってメッセージ交換を開始するメッセージ交換開始手段と、
を含むことを特徴とするメッセージ端末。
User designating means for designating one or more users;
Status information obtaining means for obtaining status information relating to all or some of the users specified by the user specifying means,
Determining means for determining at least one of a user involved in message exchange or a message exchange start timing based on the situation information acquired by the situation information acquisition means,
Message exchange start means for starting message exchange according to the content of the determination by the determination means,
A message terminal comprising:
1以上のユーザを指定するユーザ指定手段、
前記ユーザ指定手段により指定されるユーザのうち全部又は一部に係る状況情報を取得する状況情報取得手段、
前記状況情報取得手段により取得される状況情報に基づき、メッセージ交換に関わるユーザ又はメッセージ交換の開始タイミングのうち少なくとも一方を決定する決定手段、及び、
前記決定手段による決定内容に従ってメッセージ交換を開始するメッセージ交換開始手段、
としてコンピュータを機能させるためのプログラム。
A user designating means for designating one or more users;
Status information obtaining means for obtaining status information relating to all or some of the users specified by the user specifying means,
Determining means for determining at least one of a user involved in message exchange or a message exchange start timing based on the situation information acquired by the situation information acquisition means, and
Message exchange starting means for starting message exchange according to the content determined by the determining means,
Program to make a computer function as a computer.
JP2002259304A 2002-09-04 2002-09-04 Message switching system Pending JP2004102358A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002259304A JP2004102358A (en) 2002-09-04 2002-09-04 Message switching system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002259304A JP2004102358A (en) 2002-09-04 2002-09-04 Message switching system

Publications (1)

Publication Number Publication Date
JP2004102358A true JP2004102358A (en) 2004-04-02

Family

ID=32260368

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002259304A Pending JP2004102358A (en) 2002-09-04 2002-09-04 Message switching system

Country Status (1)

Country Link
JP (1) JP2004102358A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007193794A (en) * 2006-01-19 2007-08-02 Internatl Business Mach Corp <Ibm> Method of scheduling calendar entry via instant messaging interface
JP2010224842A (en) * 2009-03-23 2010-10-07 Sony Computer Entertainment Inc Client device, image display method, image processing program, storage medium storing the same
JP2013077059A (en) * 2011-09-29 2013-04-25 Ricoh Co Ltd Dialogue system
JP7260206B1 (en) 2022-01-19 2023-04-18 Necプラットフォームズ株式会社 Information processing device, information processing method and program for information processing device

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007193794A (en) * 2006-01-19 2007-08-02 Internatl Business Mach Corp <Ibm> Method of scheduling calendar entry via instant messaging interface
US8972494B2 (en) 2006-01-19 2015-03-03 International Business Machines Corporation Scheduling calendar entries via an instant messaging interface
JP2010224842A (en) * 2009-03-23 2010-10-07 Sony Computer Entertainment Inc Client device, image display method, image processing program, storage medium storing the same
JP2013077059A (en) * 2011-09-29 2013-04-25 Ricoh Co Ltd Dialogue system
JP7260206B1 (en) 2022-01-19 2023-04-18 Necプラットフォームズ株式会社 Information processing device, information processing method and program for information processing device
JP2023105451A (en) * 2022-01-19 2023-07-31 Necプラットフォームズ株式会社 Information processing apparatus, information processing method of information processing apparatus, and program

Similar Documents

Publication Publication Date Title
US9425973B2 (en) Resource-based synchronization between endpoints in a web-based real time collaboration
US7174364B1 (en) Collaborative browsing
US8370432B2 (en) Initiating an on-line meeting via a web page link
US8201241B2 (en) Method and system for publishing presence information
US6212548B1 (en) System and method for multiple asynchronous text chat conversations
US8005896B2 (en) System for controlled distribution of user profiles over a network
JP2000092153A (en) Communication method and communication network
JP2000066982A (en) Communicating method and communication network
US20080005119A1 (en) Remotely updating a user status on a presence server
US20020090996A1 (en) Game machine, server system, information service method and recording medium
JP2000066981A (en) Communicating method and communication network
US20090254616A1 (en) Simultaneous Instant Messaging In Single Window
JP2000076307A (en) Communicating method and communication network
WO2017172650A1 (en) Portal for provisioning autonomous software agents
WO1997032256A1 (en) Method for creating peer-to-peer connections over an interconnected network to facilitate conferencing among users
WO2017172654A1 (en) Making a dialogue available to an autonomous software agent
WO2017172652A1 (en) Supplying context data to a servicing entity
JP2004102358A (en) Message switching system
US20030009525A1 (en) Message exchanging system and monitoring system
KR20050114624A (en) Method for managing selective presence for an instantaneous messaging service in a telecommunication network such as an internet network
CN113132745B (en) Live broadcast service system, method and server
JP3885753B2 (en) Terminal URI discovery system and method, and terminal
KR100568154B1 (en) system for portal service and method thereof
JP2001167175A (en) Computer terminal capable of confirming presence/ absence state and presence/absence state confirmation system
JP2003044419A (en) Chat server device, chat program, and chat method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050830

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080226

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080624