(57)【特許請求の範囲】
【請求項１】
一の情報処理装置及び他の情報処理装置と接続可能になされ、前記一または他の情報処理装置と接続した場合に、当該接続された一または他の情報処理装置の状態をログイン中に設定して登録し、前記一の情報処理装置から他の情報処理装置への所定のメッセージを受信し、当該他の情報処理装置へ前記所定のメッセージを送信するサーバ装置において、
前記一の情報処理装置から、前記他の情報処理装置の宛先に関する情報を受信する受信手段と、
前記宛先に関する情報を受信した後に、当該宛先に関する情報に対応する前記他の情報処理装置の状態がログイン中であるか否かを判断する判断手段と、
前記他の情報処理装置がログイン中であると前記判断手段が判断した場合に、前記所定のメッセージが送信されてくる旨の送信予告を前記他の情報処理装置に対して通知する送信予告通知手段と、
前記送信予告通知手段が前記送信予告を通知した後に、前記一の情報処理装置から前記所定のメッセージを受信して、前記所定のメッセージに付加されている宛先に対応する前記他の情報処理装置に対して、前記所定のメッセージを送信するメッセージ送信手段と
を備えるサーバ装置。
【請求項２】
前記送信予告通知手段が前記送信予告を通知した後に前記一の情報処理装置から受信した前記所定のメッセージを、宛先としての前記他の情報処理装置の情報と、差出人としての前記一の情報処理装置の情報とともにログとして記憶する記憶手段をさらに備える
請求項１に記載のサーバ装置。
【請求項３】
前記判断手段は、さらに、前記所定のメッセージのログが前記記憶手段により記憶された後に、前記所定のメッセージの宛先に関する情報に対応する前記他の情報処理装置の状態がログイン中であるか否かを判断し、
前記メッセージ送信手段は、前記他の情報処理装置がログイン中であると前記判断手段が判断した場合に、前記所定のメッセージを前記他の情報処理装置に送信する
請求項２に記載のサーバ装置。
【請求項４】
前記記憶手段は、ログに記憶した前記所定のメッセージの削除の指令が前記一の情報処理装置からあった場合、前記所定のメッセージを削除する
請求項２に記載のサーバ装置。
【請求項５】
前記記憶手段により記憶された前記他の情報処理装置を宛先とするログを、前記他の情報処理装置と接続したときに送信するログ送信手段をさらに備える
請求項２に記載のサーバ装置。
【請求項６】
一の情報処理装置及び他の情報処理装置と接続可能になされ、前記一または他の情報処理装置と接続した場合に、当該接続された一または他の情報処理装置の状態をログイン中に設定して登録し、前記一の情報処理装置から他の情報処理装置への所定のメッセージを受信し、当該他の情報処理装置へ前記所定のメッセージを送信するサーバ装置の情報処理方法において、
前記一の情報処理装置から、前記他の情報処理装置の宛先に関する情報を受信し、
前記宛先に関する情報を受信した後に、当該宛先に関する情報に対応する前記他の情報処理装置の状態がログイン中であるか否かを判断し、
前記他の情報処理装置がログイン中であると判断した場合に、前記所定のメッセージが送信されてくる旨の送信予告を前記他の情報処理装置に対して通知し、
前記送信予告を通知した後に、前記一の情報処理装置から前記所定のメッセージを受信して、前記所定のメッセージに付加されている宛先に対応する前記他の情報処理装置に対して、前記所定のメッセージを送信する
情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバ装置、情報処理方法に関し、特に、例えば、電子メールや、チャットシステム、メッセンジャ等を利用して、メッセージ等のやりとりをする場合に、ユーザどうしが、スムーズにコミュニケーションを図ることができるようにするサーバ装置、情報処理方法に関する。
【背景技術】
【０００２】
近年においては、世界規模で発展しているインターネット（Internet）においいて提供されているサービスを利用して、遠隔地にいるユーザどうしが、容易にコミュニケーションを図ることができるようになっている。即ち、インターネットにおいては、遠隔地にいるユーザどうしは、例えば、E-mailと呼ばれる電子メールをやりとりするためのメーラ（mailer）や、ＩＲＣ（Internet Relay Chat）と呼ばれるチャット等を行うためのツール、さらに最近では、ＩＣＱ社が提供するＩＣＱ（I Seek You）や、AOL社が提供するインスタントメッセンジャ、ヤフージャパン社が提供するYahoo!ページャ等のメッセンジャ（messager）を利用して、コミュニケーションを図ることができる。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ところで、例えば、メーラやメッセンジャでは、電子メールを受信した相手が、返信メッセージを作成し、送信しようとしていることは分からない。このため、メーラや、メッセンジャ等によるメッセージを受信した相手が、差出人宛への返信メッセージを作成し、送信しようとしているときに、その差出人が、返事を催促するメッセージを送信しようとすることがある。
【０００４】
即ち、差出人宛への返信メッセージを、まさに送信しようとしている直前に、その差出人からの催促のメッセージが送信されてくることがあり、この場合、差出人宛への返信メッセージを送信しようとしているユーザに煩わしさを感じさせることになる。さらに、この場合、差出人は、催促のメッセージを送信した直後に、返信メッセージを受信することになり、いわばばつが悪い。
【０００５】
また、差出人からのメッセージを受け取ったユーザが、差出人宛への返信メッセージを送信した直後に、差出人からの催促のメッセージが送信されてくることもあり、この場合、行き違いでメッセージのやりとりが行われることになって、差出人による催促のメッセージは無駄である。
【０００６】
以上のように、従来においては、ユーザどうしで、スムーズなコミュニケーションを図ることができないことがある。
【０００７】
本発明は、このような状況に鑑みてなされたものであり、ユーザどうしが、スムーズなコミュニケーションを図ることができるようにするものである。
【課題を解決するための手段】
【０００８】
本発明のサーバ装置は、一の情報処理装置及び他の情報処理装置と接続可能になされ、前記一または他の情報処理装置と接続した場合に、当該接続された一または他の情報処理装置の状態をログイン中に設定して登録し、前記一の情報処理装置から他の情報処理装置への所定のメッセージを受信し、当該他の情報処理装置へ前記所定のメッセージを送信するサーバ装置において、前記一の情報処理装置から、前記他の情報処理装置の宛先に関する情報を受信する受信手段と、前記宛先に関する情報を受信した後に、当該宛先に関する情報に対応する前記他の情報処理装置の状態がログイン中であるか否かを判断する判断手段と、前記他の情報処理装置がログイン中であると前記判断手段が判断した場合に、前記所定のメッセージが送信されてくる旨の送信予告を前記他の情報処理装置に対して通知する送信予告通知手段と、前記送信予告通知手段が前記送信予告を通知した後に、前記一の情報処理装置から前記所定のメッセージを受信して、前記所定のメッセージに付加されている宛先に対応する前記他の情報処理装置に対して、前記所定のメッセージを送信するメッセージ送信手段とを備える。
【０００９】
前記送信予告通知手段が前記送信予告を通知した後に前記一の情報処理装置から受信した前記所定のメッセージを、宛先としての前記他の情報処理装置の情報と、差出人としての前記一の情報処理装置の情報とともにログとして記憶する記憶手段をさらに設けることができる。
【００１０】
前記判断手段には、さらに、前記所定のメッセージのログが前記記憶手段により記憶された後に、前記所定のメッセージの宛先に関する情報に対応する前記他の情報処理装置の状態がログイン中であるか否かを判断させ、前記メッセージ送信手段には、前記他の情報処理装置がログイン中であると前記判断手段が判断した場合に、前記所定のメッセージを前記他の情報処理装置に送信させることができる。
【００１１】
前記記憶手段には、ログに記憶した前記所定のメッセージの削除の指令が前記一の情報処理装置からあった場合、前記所定のメッセージを削除させることができる。
【００１２】
前記記憶手段により記憶された前記他の情報処理装置を宛先とするログを、前記他の情報処理装置と接続したときに送信するログ送信手段をさらに設けることができる。
【００１３】
本発明の情報処理方法は、一の情報処理装置及び他の情報処理装置と接続可能になされ、前記一または他の情報処理装置と接続した場合に、当該接続された一または他の情報処理装置の状態をログイン中に設定して登録し、前記一の情報処理装置から他の情報処理装置への所定のメッセージを受信し、当該他の情報処理装置へ前記所定のメッセージを送信するサーバ装置の情報処理方法において、前記一の情報処理装置から、前記他の情報処理装置の宛先に関する情報を受信し、前記宛先に関する情報を受信した後に、当該宛先に関する情報に対応する前記他の情報処理装置の状態がログイン中であるか否かを判断し、前記他の情報処理装置がログイン中であると判断した場合に、前記所定のメッセージが送信されてくる旨の送信予告を前記他の情報処理装置に対して通知し、前記送信予告を通知した後に、前記一の情報処理装置から前記所定のメッセージを受信して、前記所定のメッセージに付加されている宛先に対応する前記他の情報処理装置に対して、前記所定のメッセージを送信する。
【００１４】
本発明のサーバ装置または情報処理方法においては、一の情報処理装置から、他の情報処理装置の宛先に関する情報が受信され、前記宛先に関する情報が受信された後に、当該宛先に関する情報に対応する前記他の情報処理装置の状態がログイン中であるか否かが判断される。前記他の情報処理装置がログイン中であると判断された場合に、前記所定のメッセージが送信されてくる旨の送信予告が前記他の情報処理装置に対して通知され、前記送信予告が通知された後に、前記一の情報処理装置から前記所定のメッセージが受信されて、前記所定のメッセージに付加されている宛先に対応する前記他の情報処理装置に対して、前記所定のメッセージが送信される。
【発明の効果】
【００１５】
本発明によれば、スムーズなコミュニケーションを図ることが可能となる。
【発明を実施するための最良の形態】
【００１６】
図１は、本発明を適用したリアルタイムチャットシステム（システムとは、複数の装置が論理的に集合した物をいい、各構成の装置が同一筐体中にあるか否かは問わない）の一実施の形態の構成例を示している。
【００１７】
このリアルタイムチャットシステムは、いわゆるテキストチャットを行うためのチャットクライアントとチャットサーバをベースに構成されており、リアルタイムでチャットを行うことができる他、各チャットクライアントに対して、そのチャットクライアント宛のメッセージが送信されてくる旨が報知されたり、さらには、チャットクライアントが、チャットサーバにログインする前に行われた他のユーザによるチャットの内容が、そのチャットクライアントがログインしてきたときに送信されるようになっている。
【００１８】
即ち、図１の実施の形態においては、３台のパーソナルコンピュータ（以下、適宜、パソコンという）１−１乃至１−３、１台のロケーションサーバ３、並びに２台のチャットサーバ４−１および４−２が、例えば、インターネット等のネットワーク２を介して相互に接続されている。
【００１９】
パソコン１−１乃至１−３（パソコン１−１乃至１−３を区別する必要がない場合は、以下、適宜、パソコン１と記述する）は、後述するようなチャットクライアントプログラムを実行することにより、チャットクライアントとして機能し、後述するようなチャットクライアント処理等を行うようになっている。
【００２０】
ロケーションサーバ３は、パソコン１（チャットクライアント）に対して、チャットサーバ４−１や４−２（チャットサーバ４−１および４−２を区別する必要がない場合は、以下、適宜、チャットサーバ４と記述する）のロケーション（ドメイン名等）を教えたり、さらには、パソコン１がネットワーク２に接続しているかどうかの管理等を行うようになっている。即ち、ロケーションサーバ３は、後述するようなクライアントステータス管理プログラムや、クライアントステータス報知プログラムを行うことで、同じく後述するようなクライアントステータス管理処理や、クライアントステータス報知処理等を行うようになっている。
【００２１】
チャットサーバ４は、後述するチャットサーバプログラムを実行することで、チャットサーバとして機能し、これにより、チャットクライアントどうしがチャットを行うためのチャット環境を、複数のチャットクライアントに提供するようになっている（従って、チャットサーバ４は、マルチユーザサーバである）。
【００２２】
以上のように構成されるリアルタイムチャットシステムにおいては、パソコン１−１乃至１−３それぞれの間で、次のようにしてチャット（メッセージのやりとり）が行われる。
【００２３】
即ち、例えば、いま、パソコン１−１において、ネットワーク２への接続が行われ、チャットクライアントプログラムが実行されると、ロケーションサーバ３に対して、チャットサーバ４のロケーションが要求される。ロケーションサーバ３は、ネットワーク２上にあるチャットサーバ４や、図示せぬその他のチャットサーバのロケーションが登録されたロケーションＤＢ（database）を有しており、そのロケーションＤＢを参照することで、所定のチャットサーバのロケーションとしての、例えばＩＰ（Internet Protocol）アドレス、その他のチャットサーバにアクセスするための情報を、パソコン１−１に送信する。
【００２４】
パソコン１−１は、ロケーションサーバ３からのロケーションを受信し、そのロケーションによって表されるチャットサーバ（例えば、チャットサーバ４−１や４−２など）にログインし、これにより、チャットが可能な状態となる。
【００２５】
一方、例えば、パソコン１−２や１−３において、ネットワーク２への接続が行われ、チャットクライアントプログラムが実行されると、上述した場合と同様にして、チャットが可能な状態となる。
【００２６】
以上のようにして、パソコン１−１乃至１−３のすべてが、チャットサーバ４にログインすると、それらの間では、チャットサーバ４を介して、テキストデータをやりとりすることによるチャットを行うことができる。即ち、例えば、パソコン１−１において、テキストデータが入力されると、そのテキストデータは、ネットワーク２を介して、チャットサーバ４に送信される。チャットサーバ４は、パソコン１−１からのテキストデータを、パソコン１−２や１−３に送信し、パソコン１−２や１−３では、そのテキストデータが受信されて表示される。パソコン１−２や１−３が送信したテキストデータも、同様に、チャットサーバ４を介して、他のパソコン（チャットクライアント）に送信される。
【００２７】
以上のようにして、パソコン１−１乃至１−３それぞれの間では、チャットサーバ４を介して、チャットが行われる。
【００２８】
なお、チャットサーバ４は、チャットクライアントとしてのパソコン１から送信されてきたテキストデータを記憶するログＤＢを有しており、このログＤＢに記憶されたテキストデータ（チャットの内容）は、後述するように、必要に応じて、他のチャットクライアントに送信されるようになっている。
【００２９】
次に、図２は、図１のパソコン１のハードウェア構成例を示している。
【００３０】
通信Ｉ／Ｆ（Interface）２１は、例えば、モデムや、ターミナルアダプタ、ネットワークカード等でなり、ネットワーク２を介しての通信制御を行うようになされている。ＣＰＵ（Central Processing Unit）２２は、ＨＤ（Hard Disk）２４に記憶されているＯＳ（Operating System）のプログラムを実行し、そのＯＳの制御の下、同じくＨＤ２４に記憶されているチャットクライアントプログラム等のアプリケーションプログラムを実行することで、パソコン１をチャットクライアントとして機能させるためのチャットクライアント処理等を行うようになっている。メモリ２３は、例えば、ＲＯＭ（Read Only Memory）やＲＡＭ（Random Access Memory）等で構成され、ＣＰＵ２２が実行するプログラムや、その必要なデータを記憶するようになっている。
【００３１】
ＨＤ２４は、上述したように、ＯＳのプログラムや、チャットクライアントプログラム等のアプリケーションプログラム等を記憶している。さらに、ＨＤ２４は、ＣＰＵ２２の動作上必要なデータを記憶するようにもなっている。
【００３２】
入力部２５は、例えば、キーボードやマウス等で構成され、必要なコマンドやデータを入力するときに操作される。出力部２６は、例えば、ディスプレイ等で構成され、ＣＰＵ２２の制御の下、所定の情報を表示するようになっている。
【００３３】
以上のように構成されるパソコン１では、ＣＰＵ２２において、ＨＤ２４に記憶されたＯＳのプログラムが、メモリ２３に展開されて実行される。さらに、ＣＰＵ２２において、ＯＳのプログラムの制御の下、ＨＤ２４に記憶されたチャットクライアントプログラム等のアプリケーションプログラムが実行されることで、チャットクライアント処理等が行われる。
【００３４】
次に、図３は、図１のロケーションサーバ３のハードウェア構成例を示している。
【００３５】
図３に示すように、ロケーションサーバ３は、パソコン１を構成する通信Ｉ／Ｆ２１乃至出力部２６とそれぞれ同様の通信Ｉ／Ｆ３１乃至出力部３６から構成されている。但し、ＨＤ３４には、クライアントステータス管理プログラムや、クライアントステータス報知プログラム等の、ロケーションサーバ３がクライアントステータス管理処理や、クライアントステータス報知処理を行うためのアプリケーションプログラムが記憶されている。さらに、ＨＤ３４には、図１で説明したロケーションＤＢも記憶されている。また、ＨＤ３４には、後述するような管理情報やクライアントのステータス等も記憶されるようになっている。なお、メモリ３３やＨＤ３４は、パソコン１を構成するメモリ２３やＨＤ２４よりも、大容量で高速のものが使用されている。
【００３６】
以上のように構成されるロケーションサーバ３では、ＣＰＵ３２において、ＨＤ３４に記憶されたアプリケーションプログラムが実行されることで、クライアントステータス管理処理や、クライアントステータス報知処理が行われる。
【００３７】
次に、図４は、図１のチャットサーバ４のハードウェア構成例を示している。
【００３８】
チャットサーバ４は、ロケーションサーバ３を構成する通信Ｉ／Ｆ３１乃至出力部３６とそれぞれ同様の通信Ｉ／Ｆ４１乃至出力部４６から構成されている。但し、ＨＤ４４には、クライアントサーバプログラム等の、チャットサーバ４が、チャットサーバとして機能するためのアプリケーションプログラムが記憶されている。さらに、ＨＤ４４には、図１に示したログＤＢも記憶されるようになっている。なお、このログＤＢには、後述するチャットログが記憶される。
【００３９】
以上のように構成されるチャットサーバ３では、ＣＰＵ４２において、ＨＤ４４に記憶されたアプリケーションプログラムが実行されることで、クライアントサーバ処理が行われる。
【００４０】
次に、図５のフローチャートを参照して、図２のパソコン１においてチャットクライアントプログラムが実行されることにより行われるチャットクライアント処理について説明する。なお、図１においては図示を省略してあるが、パソコン１は、必要に応じて、プロバイダを介して、ネットワーク２に接続される。
【００４１】
パソコン１がネットワーク２に接続され、パソコン１のユーザが、チャットクライアントプログラムを実行するように操作を行うと、パソコン１のＣＰＵ２２では、チャットクライアントプログラムが実行されることにより、次のようなチャットクライアント処理が行われる。
【００４２】
即ち、チャットクライアント処理では、まず最初に、ステップＳ１において、ネットワーク２を介して、ロケーションサーバ３にアクセスがなされ、ログインが要求される。
【００４３】
この場合、ロケーションサーバ３では、後述するように、ログインを要求してきたパソコン１が、既に登録されているものかどうかを検索し、その検索結果としての既登録／未登録通知を送信してくるので、パソコン１では、ステップＳ２において、その既登録／未登録通知が受信される。
【００４４】
ここで、ロケーションサーバ３は、パソコン１等のクライアントが、ネットワーク２に接続しているかどうかというクライアントのステータス（状態）の管理を行うようになっている。このステータスの管理は、例えば、ロケーションサーバ３に対して、その管理のための情報（以下、適宜、管理情報という）を登録したクライアントのみを対象に行われるようになされており、既登録／未登録通知は、そのような登録が行われているかどうかを表す。
【００４５】
パソコン１において、既登録／未登録通知が受信されると、ステップＳ３に進み、その既登録／未登録通知を参照することにより、パソコン１の管理情報が、ロケーションサーバ３に、既に登録されているかどうかが判定される。ステップＳ３において、パソコン１の管理情報が登録されていないと判定された場合、ステップＳ４に進み、その登録を行うための登録画面が受信されて表示される。
【００４６】
即ち、ロケーションサーバ３では、パソコン１の管理情報が登録されていない場合、その旨を表す既登録／未登録通知が送信される他、管理情報を入力するための登録画面も送信される。ステップＳ４では、その登録画面が受信されて表示される。
【００４７】
パソコン１のユーザは、登録画面に対して、例えば、電子メールアドレスや、ニックネーム、ＩＰアドレス、ＩＤおよびパスワード等のロケーションサーバ３がパソコン１（のユーザ）を識別するための識別情報その他を、入力部２５を操作することで入力する。そして、パソコン１のユーザが、情報の送信を要求する操作を行うと、パソコン１では、ステップＳ５において、登録画面に入力された情報が、管理情報として送信され、ステップＳ６に進む。なお、ロケーションサーバ３では、後述するように、この管理情報が受信されて登録される。
【００４８】
ここで、以上のようにして管理情報が登録されたクライアント（ここでは、パソコン１）においては、例えば、その管理情報のうちの識別情報が記憶され、次に、ロケーションサーバ３にアクセスが行われる際に、記憶されている識別情報が、ロケーションサーバ３に送信されるようになっており、ロケーションサーバ３では、この識別情報によって、アクセスしてきたクライアントを認識するようになっている。
【００４９】
一方、ステップＳ３において、パソコン１の管理情報が、ロケーションサーバ３に、既に登録されていると判定された場合、ステップＳ４およびＳ５をスキップして、ステップＳ６に進み、メッセージのやりとりを行うのにログインすべきチャットサーバのロケーションが、ロケーションサーバ３に対して要求される。
【００５０】
この場合、ロケーションサーバ３は、ログインすべきチャットサーバのロケーションを、パソコン１に送信してくるので、パソコン１では、ステップＳ７において、そのロケーションが受信され、さらに、そのロケーションで表されるチャットサーバ（ここでは、チャットサーバ４とする）へのログインが行われる。
【００５１】
そして、ステップＳ８に進み、ログインしたチャットサーバ４から、チャットログが送信されてきたかどうかが判定される。即ち、チャットサーバ４は、後述するように、チャットクライアントがログイン（接続）してきた場合、そのチャットクライアント宛のメッセージとしてのチャットログを記憶しているときには、そのチャットログを、そのログインしてきたチャットクライアントに送信するようになっており、ステップＳ８では、このようにしてチャットログが送信されてきたか否かが判定される。ステップＳ８において、チャットログが送信されてきたと判定された場合、ステップＳ９に進み、パソコン１では、そのチャットログが受信されて表示され、ステップＳ１０に進む。
【００５２】
ここで、従来のチャットシステムでは、あるチャットクライアントが、チャットサーバに、新たにログインしてきた場合には、そのチャットクライアントは、それまでにやりとりされたメッセージ（チャットの内容）を知ることはできない。これに対して、本実施の形態では、チャットサーバ４が、受信したメッセージをチャットログとして記憶しておき、新たなチャットクライアントがログインしてきた場合に、その新たなチャットクライアントに対して、必要に応じて、チャットログが送信されるので、新たなチャットクライアントは、ログインする前にチャットサーバ４で受信されたメッセージを知ることができる。
【００５３】
なお、チャットクライアント処理が開始されると、パソコン１では、出力部２６において、例えば、図６に示すようなチャットウインドウ５１が表示されるようになっており、このチャットウインドウ５１は、宛先入力エリア５２、チャット文字／ログ表示エリア５３、およびチャット文字／メッセージ入力エリア５４から構成されている。そして、宛先入力エリア５２には、入力部２５の操作に対応して、チャット文字／メッセージ入力エリア５４に入力されたメッセージ（またはチャット文字）としてのテキストデータを送信する相手の宛先が入力されるようになっている。また、チャット文字／ログ表示エリア５３には、チャットサーバ４から送信されてくるメッセージやチャットログ、チャット文字／メッセージ入力エリア５４に入力されたメッセージが表示されるようになっている。さらに、チャット文字／メッセージ入力エリア５４には、入力部２５の操作に対応して、他のチャットクライアントに送信するメッセージが入力されるようになっている。従って、ステップＳ９では、チャットサーバ４から送信されてきたメッセージ（チャットログ）は、チャットウインドウ５１のチャット文字／ログ表示エリア５３に表示される。
【００５４】
図５に戻り、ステップＳ８において、チャットサーバ４からチャットログが送信されてきていないと判定された場合、即ち、チャットサーバ４において、パソコン１のユーザ宛のメッセージが記憶されていない場合、ステップＳ９をスキップして、ステップＳ１０に進む。ステップＳ１０では、チャットウインドウ５１（図６）の宛先入力エリア５２に、チャット文字／メッセージ入力エリア５４に入力された（入力される）メッセージを送信する相手の宛先（例えば、上述したような識別情報）が入力されたか否かが判定される。
【００５５】
ステップＳ１０において、宛先が入力されたと判定された場合、即ち、ユーザが入力部２５を操作することにより、宛先入力エリア５２に宛先が入力され、さらに、入力部２５が有する図示せぬ確定キー（リターンキー）が操作された場合、ステップＳ１１に進み、その宛先が、チャットサーバ４に送信され、ステップＳ１２に進む。以上のように、パソコン１では、チャット文字／ログ表示エリア５３に入力されるメッセージを送信する相手の宛先が、宛先入力エリア５２に入力された場合、その入力された宛先が、チャットサーバ４に送信される。
【００５６】
一方、ステップＳ１０において、宛先が入力されていないと判定された場合、ステップＳ１１をスキップして、ステップＳ１２に進み、チャット文字／メッセージ入力エリア５４に、メッセージが入力されたか否かが判定される。ステップＳ１２において、チャット文字／メッセージ入力エリア５４に、メッセージが入力されたと判定された場合、即ち、ユーザが入力部２５を操作することにより、チャット文字／メッセージ入力エリア５４に、メッセージが入力され、さらに、入力部２５が有する確定キーが操作された場合、ステップＳ１３に進み、そのメッセージに対して、宛先入力エリア５２に入力されている宛先、現在の日時および時刻を表すタイムスタンプ、並びにそのメッセージの差出人としてのパソコン１のユーザのニックネーム等が付加され、チャットサーバ４に送信されて、ステップＳ１４に進む。
【００５７】
なお、宛先入力エリア５２に宛先が入力されていない場合には、例えば、宛先の入力を要求するメッセージが表示され、ユーザによって、宛先の入力があった後に、上述したようにしてメッセージが送信される。
【００５８】
また、ステップＳ１２において、チャット文字／メッセージ入力エリア５４に、メッセージが入力されていないと判定された場合、ステップＳ１３をスキップして、ステップＳ１４に進み、チャットサーバ４からメッセージが送信されてきたか否かが判定される。ステップＳ１４において、チャットサーバ４からメッセージが送信されてきたと判定された場合、ステップＳ１５に進み、そのメッセージが受信され、チャット文字／ログ表示エリア５３に表示されて、ステップＳ１６に進む。
【００５９】
一方、ステップＳ１４において、チャットサーバ４からメッセージが送信されてきていないと判定された場合、ステップＳ１５をスキップして、ステップＳ１６に進み、チャットサーバ４から送信予告通知が送信されてきたか否かが判定される。
【００６０】
ここで、上述したように、パソコン１等のチャットクライアントでは、宛先入力エリア５２に、メッセージを送信しようとしている相手の宛先が入力されると、その宛先が、チャットサーバ４に送信される。チャットサーバ４は、後述するように、チャットクライアントから宛先を受信すると、その宛先に対応するチャットクライアントがネットワーク２に接続しているかどうか、即ち、そのチャットクライアントのステータスを認識し、接続している場合には、そのチャットクライアントに対して、他のチャットクライアントがメッセージを送信しようとしている旨の送信予告通知が送信するようになっており、ステップＳ１６では、そのようにしてチャットサーバ４から送信されてくる送信予告通知が送信されてきたか否かが判定される。
【００６１】
ステップＳ１６において、チャットサーバ４から送信予告通知が送信されてきたと判定された場合、ステップＳ１７に進み、その送信予告通知が受信されて表示され、ステップＳ１８に進む。
【００６２】
従って、例えば、パソコン１−１のユーザが、ネットワーク２に接続して、パソコン１−２のユーザにメッセージを送信し、その後、そのメッセージに対する返事を催促するメッセージを送信しようとしている場合において、パソコン１−２のユーザが、パソコン１−１のユーザ宛に、返信のメッセージを送信しようとして、宛先入力エリア５２に、パソコン１−１のユーザを宛先として入力すると、パソコン１−１には、チャットサーバ４から送信予告通知が送信される。その結果、パソコン１−１のユーザは、パソコン１−２のユーザが返信のメッセージを送信しようとしていることを認識することができ、返事を催促するメッセージを、行き違いで送信してしまうようなことを防止することができる。その結果、ユーザに煩わしさを感じさせたり、メッセージが無駄になったりすること等を防止し、これにより、ユーザどうしで、スムーズなコミュニケーションを図ることが可能となる。
【００６３】
一方、ステップＳ１６において、チャットサーバ４から送信予告通知が送信されてきていないと判定された場合、ステップＳ１７をスキップして、ステップＳ１８に進み、入力部２５が、ネットワーク２との接続を切断するように操作されたか否かが判定される。ステップＳ１８において、入力部２５が、ネットワーク２との接続を切断するように操作されていないと判定された場合、ステップＳ１０に戻り、以下、同様の処理が繰り返される。
【００６４】
また、ステップＳ１８において、入力部２５が、ネットワーク２との接続を切断するように操作されたと判定された場合、その切断のための処理が行われ、チャットクライアント処理を終了する。
【００６５】
次に、図７のフローチャートを参照して、図３のロケーションサーバ３においてクライアントステータス管理プログラムが実行されることにより行われるクライアントステータス管理処理について説明する。
【００６６】
パソコン１等のクライアントが、ネットワーク２に接続され、上述したようにして、ロケーションサーバ３に対してアクセスしてくると、ロケーションサーバ３では、クライアントステータス管理プログラムが実行され、そのクライアントに対して、次のようなクライアントステータス管理処理が行われる。
【００６７】
即ち、ステップＳ２１において、パソコン１との接続が確立され、ステップＳ２２に進み、管理情報が検索される。そして、ステップＳ２３において、その検索結果に基づいて、既登録／未登録通知が作成され、パソコン１に送信される。
【００６８】
即ち、上述したように、パソコン１においては、ロケーションサーバ３に対するアクセス時に、その識別情報も送信されるようになっており、ステップＳ２２では、その識別情報を有する管理情報が検索される。そして、ステップＳ２３において、パソコン１からの識別情報を有する管理情報が存在する場合には、パソコン１が登録されている旨の既登録／未登録通知が送信され、パソコン１からの識別情報を有する管理情報が存在しない場合（例えば、過去に管理情報を登録したことがあるが、ユーザの要求により削除してしまった場合）には、パソコン１が登録されていない旨の既登録／未登録通知が送信される。なお、パソコン１が、過去に、一度も管理情報を登録したことがない場合には、パソコン１からは、識別情報は送信されてこないため、この場合には、ステップＳ２３において、パソコン１が登録されていない旨の既登録／未登録通知が送信される。
【００６９】
ステップＳ２３において、既登録／未登録通知が送信された後は、ステップＳ２４に進み、その既登録／未登録通知に基づいて、パソコン１が登録済みのもの（パソコン１の管理情報が登録されている）かどうかが判定される。ステップＳ２４において、パソコン１が登録済みのものであると判定された場合、ステップＳ２５およびＳ２６をスキップして、ステップＳ２７に進む。
【００７０】
また、ステップＳ２４において、パソコン１が登録済みのものでないと判定された場合、ステップＳ２５に進み、ロケーションサーバ３では、上述したように、登録画面が、パソコン１に送信され、ステップＳ２６に進む。この場合、パソコン１では、上述したように、登録画面が受信され、管理情報が入力された後に、その管理情報が、ロケーションサーバ３に送信されてくるので、ロケーションサーバ３では、ステップＳ２６において、その管理情報が受信されて登録される。
【００７１】
そして、ステップＳ２７に進み、クライアントとしてのパソコン１のステータスが、ネットワーク２に接続していることを表す「ログイン中」にされる。即ち、ロケーションサーバ３は、クライアントの管理情報と、そのクライアントのステータスとを対応付けて管理（ＨＤ３４に記憶）しており、ステップＳ２７では、パソコン１の管理情報と対応付けられているステータスが、ネットワーク２に接続していないことを表す「ログオフ中」から、「ログイン中」に書き換えられ、ステップＳ２８に進む。
【００７２】
ステップＳ２８では、パソコン１から、上述したようにして、チャットサーバ４のロケーションの要求があったか否かが判定され、あったと判定された場合、ステップＳ２９に進み、例えば、チャットサーバ４のロケーションが、パソコン１に送信され、ステップＳ３０に進む。また、ステップＳ２８において、ロケーションの要求がなかったと判定された場合、ステップＳ２９をスキップして、ステップＳ３０に進み、パソコン１において、入力部２５が、ネットワーク２との接続を切断するように操作されたか否かが判定される。ステップＳ３０において、入力部２５が、接続を切断するように操作されていないと判定された場合、ステップＳ２８に戻り、以下、同様の処理を繰り返す。
【００７３】
また、ステップＳ３０において、入力部２５が、接続を切断するように操作されたと判定された場合、ステップＳ３１に進み、パソコン１の管理情報と対応付けられているステータスが、「ログイン中」から「ログオフ中」に書き換えられ、クライアントステータス管理処理を終了する。
【００７４】
次に、図８のフローチャートを参照して、図３のロケーションサーバ３においてクライアントステータス報知プログラムが実行されることにより行われるクライアントステータス報知処理について説明する。
【００７５】
ロケーションサーバ３では、例えば、ネットワーク２上のパソコン１やチャットサーバ４等から、所定の要求があると、クライアントステータス報知プログラムが実行され、次のようなクライアントステータス管理報知が行われる。
【００７６】
即ち、ステップＳ４１では、要求が、所定のクライアントのステータスを問い合わせる問い合わせ要求であるか否かが判定される。ステップＳ４１において、要求が問い合わせ要求でないと判定された場合、ステップＳ４２およびＳ４３をスキップして、クライアントステータス報知処理を終了する。
【００７７】
また、ステップＳ４１において、要求が、所定のクライアントのステータスを問い合わせる問い合わせ要求であると判定された場合、ステップＳ４２に進み、問い合わせのあったクライアントのステータスが検索される。即ち、ロケーションサーバ３は、問い合わせのあったクライアントの管理情報を検索し、その管理情報に対応付けられているステータスを検出する。そして、ステップＳ４３に進み、そのステータスが、問い合わせ要求のあったパソコン１やチャットサーバ４等に送信され、クライアントステータス報知処理を終了する。
【００７８】
なお、以上のようなロケーションサーバ３が行う処理は、例えば、前述したようなＩＣＱ等の仕組みを利用して行うことが可能である。
【００７９】
次に、図９のフローチャートを参照して、図４のチャットサーバ４においてチャットサーバプログラムが実行されることにより行われるチャットサーバ処理について説明する。
【００８０】
パソコン１等のチャットクライアントが、ネットワーク２に接続され、上述したようにして、チャットサーバ４に対してアクセスしてくると、チャットサーバ４では、チャットサーバプログラムが実行され、そのチャットクライアントに対して、次のようなチャットサーバ処理が行われる。
【００８１】
即ち、チャットサーバ４では、チャットクライアントとしての、例えばパソコン１がアクセスしてくると、ステップＳ５１において、パソコン１との接続が確立され、ステップＳ５２に進む。ステップＳ５２では、パソコン１のユーザ宛のチャットログが記憶されているかどうかが判定される。
【００８２】
即ち、チャットサーバ４では、チャットクライアントからメッセージが送信されてくると、後述するステップＳ５９において、そのメッセージを、チャットログに記憶するようになっている。さらに、チャットクライアントからのメッセージには、上述したように、タイムスタンプ、メッセージの宛先、そのメッセージの差出人が付加されており（以下、適宜、これらの情報を、付加情報という）、メッセージは、それらの付加情報とともに、チャットログに記憶されるようになっている。ステップＳ５２では、メッセージの宛先が、パソコン１のユーザになっているメッセージおよび付加情報の集合としてのチャットログが記憶されているかどうかが判定される。
【００８３】
ステップＳ５２において、メッセージの宛先が、パソコン１のユーザになっているチャットログが記憶されていると判定された場合、ステップＳ５３に進み、そのチャットログが、パソコン１に送信される。これにより、パソコン１では、上述したように、チャットサーバ４からのチャットログが受信されて表示される。
【００８４】
一方、ステップＳ５２において、メッセージの宛先が、パソコン１のユーザになっているチャットログが記憶されていないと判定された場合、ステップＳ５３をスキップして、ステップＳ５４に進み、パソコン１において、上述したように、宛先入力エリア５２（図６）に宛先が入力され、その宛先が送信されてきたか否かが判定される。ステップＳ５４において、パソコン１から宛先が送信されてきていないと判定された場合、ステップＳ５５乃至Ｓ５７をスキップして、ステップＳ５８に進む。
【００８５】
また、ステップＳ５４において、パソコン１から宛先が送信されてきたと判定された場合、ステップＳ５５に進み、その宛先が受信される。さらに、ステップＳ５５では、その宛先に対応するクライアントのステータスを問い合わせる問い合わせ要求が、ロケーションサーバ３に送信される。この場合、ロケーションサーバ３においては、上述したように、クライアントステータス報知処理（図８）が行われることにより、問い合わせのあったクライアントのステータスが検索されて送信（返信）されてくるので、チャットサーバ４では、そのステータスが受信され、ステップＳ５６に進み、パソコン１から送信されてきた宛先に対応するクライアントのステータスが「ログイン中」であるかどうかが判定される。
【００８６】
ステップＳ５６において、パソコン１から送信されてきた宛先に対応するクライアントのステータスが「ログイン中」でないと判定された場合、即ち、そのクライアントがネットワーク２に接続していない場合、ステップＳ５７をスキップして、ステップＳ５８に進む。また、ステップＳ５６において、パソコン１から送信されてきた宛先に対応するクライアントのステータスが「ログイン中」であると判定された場合、即ち、パソコン１から送信されてきた宛先に対応するクライアントがネットワーク２に接続している場合、ステップＳ５７に進み、その宛先に対応するクライアントに対して、送信予告通知が送信され、ステップＳ５８に進む。この場合、上述したように、そのクライアントにおいては、送信予告通知が受信されて表示され、これにより、パソコン１のユーザがメッセージを送信しようとしていることを認識することができる。
【００８７】
ステップＳ５８では、パソコン１からメッセージが送信されてきたか否かが判定され、送信されてきていないと判定された場合、ステップＳ５９乃至Ｓ６２をスキップして、ステップＳ６３に進む。また、ステップＳ５８において、パソコン１からメッセージが送信されてきたと判定された場合、ステップＳ５９に進み、そのメッセージと、それとともに送信されてくる付加情報とが受信され、チャットログとして、ＨＤ４４に記憶される。なお、この記憶されたメッセージおよび付加情報は、例えば、記憶してから所定の時間が経過した場合や、差出人から削除の指令があった場合等に削除されるようになっている。
【００８８】
そして、ステップＳ６０に進み、パソコン１からのメッセージに付加されている付加情報の中の宛先に対応するクライアントのステータスを問い合わせる問い合わせ要求が、ロケーションサーバ３に送信される。この場合、ロケーションサーバ３においては、上述したように、問い合わせのあったクライアントのステータスが検索されて送信されてくるので、チャットサーバ４では、そのステータスが受信され、ステップＳ６１に進み、パソコン１からのメッセージに付加されている宛先に対応するクライアントのステータスが「ログイン中」であるかどうかが判定される。ステップＳ６１において、パソコン１から送信されてきたメッセージに付加されている宛先に対応するクライアントのステータスが「ログイン中」でないと判定された場合、ステップＳ６２をスキップして、ステップＳ６３に進む。
【００８９】
また、ステップＳ６１において、パソコン１から送信されてきたメッセージに付加されている宛先に対応するクライアントのステータスが「ログイン中」であると判定された場合、即ち、そのメッセージの宛先であるクライアントがネットワーク２に接続している場合、ステップＳ６２に進み、その宛先に対応するクライアントに対して、パソコン１から送信されてきたメッセージが送信され、ステップＳ６３に進む。
【００９０】
従って、チャットサーバ４では、ネットワーク２に接続しているパソコン１から、あるクライアント宛のメッセージが送信されてきた場合に、そのクライアントもネットワーク２に接続していれば、そのクライアントに対して、パソコン１からメッセージが送信される。即ち、この場合、そのクライアントと、パソコン１と間では、チャットサーバ４を介してリアルタイムチャットを行うことができる。
【００９１】
ステップＳ６３では、パソコン１において、入力部２５が、ネットワーク２との接続を切断するように操作されたか否かが判定される。ステップＳ６３において、入力部２５が、ネットワーク２との接続を切断するように操作されていないと判定された場合、ステップＳ５４に戻り、以下、同様の処理が繰り返される。
【００９２】
また、ステップＳ６４において、パソコン１の入力部２５が、ネットワーク２との接続を切断するように操作されたと判定された場合、即ち、例えば、ネットワーク２との接続を切断する要求が、パソコン１から送信されてきた場合、チャットサーバ４は、パソコン１との接続を切断し、チャットサーバ処理を終了する。
【００９３】
なお、上述の場合には、チャットサーバ４において、クライアントのステータスを、ロケーションサーバ３に問い合わせるようにしたが、クライアントのステータスは、その変化があった場合に、ロケーションサーバ３からチャットサーバ４に送信するようにしても良い。
【００９４】
次に、パソコン１、ロケーションサーバ３、およびチャットサーバ４において上述したような処理が行われることで、ユーザどうしは、図１０乃至図１２に示すように、スムーズなコミュニケーションを図ることができる。
【００９５】
ここで、図１０乃至図１２は、パソコン１の出力部２６における表示画面を示している。また、図１０および図１１は、パソコン１においてオープンされたチャットウインドウ５１を示しているが、ここでは、パソコン１−１と１−２を対象とし、図１０または図１１は、パソコン１−１または１−２における表示画面をそれぞれ示している。なお、図１０または図１１において、パソコン１−１または１−２におけるチャットウインドウ５１、そのチャットウインドウ５１を構成する宛先入力エリア５２、チャット文字／ログ表示エリア５３、チャット文字／メッセージ入力エリア５４の符号は、各符号に−１または−２を付してそれぞれ示してある。
【００９６】
例えば、いま、パソコン１−１または１−２のユーザ宛のメッセージを送る場合に、その宛先が、ｕｓｅｒＡまたはｕｓｅｒＢで、それぞれ表されるものとし、パソコン１−１のユーザｕｓｅｒＡが、ネットワーク２に接続して、チャットクライアントプログラムを起動したとする。この場合、図１０に示すように、チャットウインドウ５１−１がオープンされる。
【００９７】
そして、パソコン１−１のユーザｕｓｅｒＡが、パソコン１−２のユーザｕｓｅｒＢ宛にメッセージを送る場合、図１０に示すように、チャットウインドウ５１−１の宛先入力エリア５２−１に、宛先「ｕｓｅｒＢ」を入力する。この宛先「ｕｓｅｒＢ」は、上述したように、チャットサーバ４に送信される。いま、パソコン１−２がネットワーク２に接続されていないとすると、チャットサーバ４では、宛先「ｕｓｅｒＢ」を受信しても、パソコン１−２に対して、送信予告通知は送信されない。
【００９８】
その後、パソコン１−１のユーザｕｓｅｒＡが、パソコン１−２のユーザｕｓｅｒＢ宛に送るメッセージを、チャット文字／メッセージ入力エリア５４−１に入力すると、そのメッセージは、宛先入力エリア５２−１に入力された宛先「ｕｓｅｒＢ」、さらにはタイムスタンプおよび差出人を表す「ｕｓｅｒＡ」が付加されてチャットサーバ４に送信されるとともに、そのメッセージと、差出人「ｕｓｅｒＡ」およびタイムスタンプが、差出人、タイムスタンプ、メッセージの順で配置されて、チャット文字／ログ表示エリア５３−１に表示される。
【００９９】
図１０の実施の形態においては、パソコン１−１のユーザｕｓｅｒＡが、パソコン１−２のユーザｕｓｅｒＢ宛に、メッセージ「風邪の具合はどうですか？」と、「元気であれば、返事をください」を入力して送信しており、チャット文字／ログ表示エリア５３−１では、これらのメッセージが、差出人「ｕｓｅｒＡ」およびタイムスタンプとともに表示されている。
【０１００】
以上のようにして、チャットサーバ４に送信されたユーザｕｓｅｒＡを差出人とする、ユーザｕｓｅｒＢ宛のメッセージは、チャットサーバ４において、チャットログとして記憶される。そして、いま、パソコン１−２がネットワーク２に接続していないとすると、ユーザｕｓｅｒＡによるユーザｕｓｅｒＢ宛のメッセージは、チャットサーバ４に記憶されるだけで、パソコン１−２には送信されない。
【０１０１】
その後、パソコン１−２のユーザｕｓｅｒＢが、ネットワーク２に接続して、チャットクライアントプログラムを起動したとする。この場合も、パソコン１−２では、パソコン１−１における場合と同様に、図１１に示すようなチャットウインドウ５１−２が表示される。
【０１０２】
さらに、この場合、チャットサーバ４では、上述したように、パソコン１−２がネットワーク２に接続されたことが認識され、そのユーザｕｓｅｒＢ宛のメッセージとしてのチャットログが、パソコン１−２に送信される。これにより、パソコン１−２では、図１１に示すように、パソコン１−２がネットワーク２に接続されるまでに、パソコン１−１のユーザｕｓｅｒＡが入力したメッセージ「風邪の具合はどうですか？」と、「元気であれば、返事をください」が、その差出人「ｕｓｅｒＡ」およびタイムスタンプとともに、チャット文字／ログ表示エリア５２−２に表示される。その結果、パソコン１−２のユーザｕｓｅｒＢは、ネットワーク２に接続するまでに入力されたユーザｕｓｅｒＡからのメッセージを見ることができる。
【０１０３】
その後、ユーザｕｓｅｒＡからのメッセージを見たパソコン１−２のユーザｕｓｅｒＢが、パソコン１−１のユーザｕｓｅｒＡ宛に返信メッセージを送ろうとして、図１１に示すように、チャットウインドウ５１−２の宛先入力エリア５２−２に、宛先「ｕｓｅｒＡ」を入力すると、この宛先「ｕｓｅｒＡ」は、上述したように、チャットサーバ４に送信される。
【０１０４】
いまの場合、宛先「ｕｓｅｒＡ」に対応するパソコン１−１はネットワーク２に接続しているから、チャットサーバ４では、上述したように、パソコン１−１に対して、送信予告通知が送信される。パソコン１−１では、この送信予告通知が受信されて表示される。即ち、パソコン１−１では、例えば、図１２に示すように、メッセージが送信されてくる旨を報知するための予告ウインドウ６１がオープンされ、そこに、ユーザｕｓｅｒＢが、メッセージを送信しようとしている旨のメッセージ「ｕｓｅｒＢさんがメッセージを送ろうとしています。」が表示される。これにより、ユーザｕｓｅｒＡは、ユーザｕｓｅｒＢから返事が送られてくることを認識することができる。
【０１０５】
そして、パソコン１−２のユーザｕｓｅｒＢが、パソコン１−１のユーザｕｓｅｒＡ宛に送る返信メッセージを、チャット文字／メッセージ入力エリア５４−２に入力すると、そのメッセージは、宛先入力エリア５２−２に入力された宛先「ｕｓｅｒＡ」、さらにはタイムスタンプおよび差出人を表す「ｕｓｅｒＢ」が付加されてチャットサーバ４に送信されるとともに、そのメッセージと、差出人「ｕｓｅｒＢ」およびタイムスタンプが、差出人、タイムスタンプ、メッセージの順で配置されて、チャット文字／ログ表示エリア５３−２に表示される。
【０１０６】
図１１の実施の形態においては、パソコン１−２のユーザｕｓｅｒＢが、パソコン１−１のユーザｕｓｅｒＡからのメッセージを見て、返信メッセージ「元気、元気、すっかりよくなったよ。」を入力して送信しており、チャット文字／ログ表示エリア５３−２では、このメッセージが、差出人「ｕｓｅｒＢ」およびタイムスタンプとともに表示されている。
【０１０７】
以上のようにして、チャットサーバ４に送信されたユーザｕｓｅｒＢを差出人とする、ユーザｕｓｅｒＡ宛の返信メッセージは、チャットサーバ４において、チャットログとして記憶される。さらに、いま、パソコン１−１がネットワーク２に接続されているので、このメッセージは、差出人「ｕｓｅｒＢ」やタイムスタンプ等とともに、パソコン１−１に送信される。
【０１０８】
パソコン１−１では、チャットサーバ４から送信されてくる、ユーザｕｓｅｒＢによる、ユーザｕｓｅｒＡ宛の返信メッセージと、差出人「ｕｓｅｒＢ」およびタイムスタンプが受信され、図１０に示すように、チャット文字／ログ表示エリア５３−１に表示される。
【０１０９】
そして、その後は、ユーザｕｓｅｒＡとｕｓｅｒＢとの間で、従来と同様にして、リアルタイムでのメッセージのやりとりであるチャットを行うことができる。
【０１１０】
従って、ユーザｕｓｅｒＡは、メッセージを入力しているときに、ユーザｕｓｅｒＢが返信メッセージを送信しようとしていることを認識することができるので、ユーザｕｓｅｒＡが、返事を催促するメッセージを、行き違いで送信してしまうようなことを防止することができる。
【０１１１】
さらに、ユーザｕｓｅｒＢは、ネットワーク２に接続するまでにユーザｕｓｅｒＡが送信したユーザｕｓｅｒＢ宛のメッセージを見ることができるが、このことは、ユーザｕｓｅｒＡからすれば、ユーザｕｓｅｒＢがネットワーク２に接続するまでは、電子メールで、ユーザｕｓｅｒＢに、メッセージを送信したのと等価であり、従って、ユーザｕｓｅｒＡは、いわば電子メールの機能と、チャットの機能とを、特に意識することなく利用することができる。即ち、本発明によれば、ユーザに対して、電子メール等のメッセンジャの機能と、リアルタイムチャットの機能とを、同一のユーザインタフェースで提供することができる。
【０１１２】
次に、図１３を参照して、上述した一連の処理を実行するプログラムをコンピュータにインストールして実行可能な状態とするために用いられる媒体について説明する。
【０１１３】
プログラムは、例えば、図１３（Ａ）に示すように、コンピュータ１０１に内蔵されている記録媒体としてのハードディスク１０２（図２乃至図４それぞれに示したＨＤ２４，３４，４４に対応する）に、あらかじめインストールした状態で提供することができる。
【０１１４】
また、プログラムは、例えば、図１３（Ｂ）に示すように、フロッピー（登録商標）ディスク１１１、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）１１２，ＭＯ（Magneto optical）ディスク１１３，ＤＶＤ（Digital Versatile Disc）１１４、磁気ディスク１１５、半導体メモリ１１６（図２乃至図４それぞれに示したメモリ２３，３３，４３に対応する）などの記録媒体に、一時的あるいは永続的に格納し、パッケージソフトウェアとして提供することができる。
【０１１５】
さらに、プログラムは、例えば、図１３（Ｃ）に示すように、ダウンロードサイト１２１から、無線で衛星１２２を介して、コンピュータ１２３に転送したり、ＬＡＮ（Local Area Network）やインターネットといったネットワーク１３１（図１のネットワーク２に対応する）を介して、有線または無線でコンピュータ１２３に転送し、そのコンピュータ１２３において、内蔵するハードディスク等にダウンロードさせるようにすることができる。
【０１１６】
本明細書における媒体とは、これらのすべてを含む広義の概念を意味するものである。さらに、本明細書において、媒体により提供されるプログラムを記述するステップは、経時的な要素を含む処理だけでなく、並列的あるいは個別に実行される処理（例えば、並列処理あるいはオブジェクトによる処理）も含むものである。
【０１１７】
以上、本発明をチャットシステムに適用した場合について説明したが、本発明は、チャットシステムの他、メーラやメッセンジャその他のデータをやりとりするアプリケーションに適用することも可能である。
【０１１８】
なお、本実施の形態では、送信予告通知があった場合に、メッセージが送信されてくる旨のメッセージを表示するようにしたが、メッセージが送信されてくる旨は、例えば、アイコン等を表示することにより、ユーザに報知するようにしても良い（ＯＳが、Windows（登録商標）９５や９８の場合は、そのタスクバーのタスクトレイの中に、アイコンを表示するようにすること等が可能である）。さらに、メッセージが送信されてくる旨は、その他、例えば、音声等で、ユーザに報知することも可能である。
【０１１９】
ここで、前述のYahoo!ページャ等によれば、あるユーザがインターネットに接続したことが報知されるのに対して、本発明においては、あるユーザがネットワーク２に接続し、かつメッセージを送信しようとしていることが報知されるが、本発明においても、ユーザがネットワーク２に接続したことを、メッセージを送信しようとしていることとは別に報知するようにすることが可能である。これは、例えば、ロケーションサーバ３において、クライアントがネットワーク２に接続したときに、その旨を、他のクライアントに送信することで実現可能である。
【０１２０】
また、本実施の形態では、ロケーションサーバ３とチャットサーバ４とを別に設けるようにしたが、ロケーションサーバ３とチャットサーバ４とは、同一サーバとすることが可能である。
【０１２１】
さらに、図１０乃至図１２の実施の形態では、パソコン１−１のユーザと、パソコン１−２のユーザとの二人のユーザの間で、メッセージのやりとりをする場合について説明したが、３人以上のユーザの間で、メッセージのやりとりをすることも可能である。この場合、あるユーザが、メッセージを送信する相手が二人以上になることがあるが、その場合には、チャットウインドウ５１（図６）の宛先入力エリア５２に、その二人以上のユーザの宛先を、コンマ等で区切って入力するようにすれば良い。また、二人以上のユーザをグループ化して、グループ名を定義し、そのグループ名を、宛先入力エリア５２に入力するようにしても良い。
【０１２２】
なお、本発明においては、メッセージを入力している最中であっても、相手からのメッセージを見ることができるので、円滑に、メッセージのやりとりを行うことができる。さらに、音声による会話ではなく、文字による会話が可能であるため、クライアントとして、携帯可能な、例えば、携帯電話機を用いた場合に、電車等の公共の場であっても、周囲に迷惑をかけることなく、コミュニケーションを図ることができる。
【図面の簡単な説明】
【０１２３】
【図１】本発明を適用したリアルタイムチャットシステムの一実施の形態の構成例を示すブロック図である。
【図２】図１のパソコン１のハードウェア構成例を示すブロック図である。
【図３】図１のロケーションサーバ３のハードウェア構成例を示すブロック図である。
【図４】図１のチャットサーバ４のハードウェア構成例を示すブロック図である。
【図５】チャットクライアント処理を説明するためのフローチャートである。
【図６】チャットウインドウ５１を示す図である。
【図７】クライアントステータス管理処理を説明するためのフローチャートである。
【図８】クライアントステータス報知処理を説明するためのフローチャートである。
【図９】チャットサーバ処理を説明するためのフローチャートである。
【図１０】図１のパソコン１−１の表示例を示す図である。
【図１１】図１のパソコン１−２の表示例を示す図である。
【図１２】予告ウインドウ６１を示す図である。
【図１３】本発明を適用した媒体を説明するための図である。
【符号の説明】
【０１２４】
１−１乃至１−３  パソコン，  ２  ネットワーク，  ３  ロケーションサーバ，  ４−１，４−２  チャットサーバ，  ２１  通信Ｉ／Ｆ，  ２２  ＣＰＵ，  ２３  メモリ，  ２４  ＨＤ，  ２５  入力部，  ２６  出力部，  ３１  通信Ｉ／Ｆ，  ３２  ＣＰＵ，  ３３  メモリ，  ３４  ＨＤ，  ３５  入力部，  ３６  出力部，  ４１  通信Ｉ／Ｆ，  ４２  ＣＰＵ，  ４３  メモリ，  ４４  ＨＤ，  ４５  入力部，  ４６  出力部，  ５１  チャットウインドウ，  ５２  宛先入力エリア，  ５３  チャット文字／ログ表示エリア，  ５４  チャット文字／メッセージ入力エリア，  ６１  予告ウインドウ
【図１】
0004626834.tif 000002
【図２】
0004626834.tif 000003
【図３】
0004626834.tif 000004
【図４】
0004626834.tif 000005
【図５】
0004626834.tif 000006
【図６】
0004626834.tif 000007
【図７】
0004626834.tif 000008
【図８】
0004626834.tif 000009
【図９】
0004626834.tif 000010
【図１０】
0004626834.tif 000011
【図１１】
0004626834.tif 000012
【図１２】
0004626834.tif 000013
【図１３】
0004626834.tif 000014