JP3626491B1 - メッセンジャーサービスシステムおよびその制御方法、ならびにメッセンジャーサーバおよびその制御プログラム - Google Patents

メッセンジャーサービスシステムおよびその制御方法、ならびにメッセンジャーサーバおよびその制御プログラム Download PDF

Info

Publication number
JP3626491B1
JP3626491B1 JP2004224494A JP2004224494A JP3626491B1 JP 3626491 B1 JP3626491 B1 JP 3626491B1 JP 2004224494 A JP2004224494 A JP 2004224494A JP 2004224494 A JP2004224494 A JP 2004224494A JP 3626491 B1 JP3626491 B1 JP 3626491B1
Authority
JP
Japan
Prior art keywords
data
area
user
communication terminal
notation
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.)
Expired - Fee Related
Application number
JP2004224494A
Other languages
English (en)
Other versions
JP2005209147A (ja
Inventor
征史 岡本
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.)
Dwango Co Ltd
Original Assignee
Dwango Co Ltd
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 Dwango Co Ltd filed Critical Dwango Co Ltd
Priority to JP2004224494A priority Critical patent/JP3626491B1/ja
Priority to EP04023107A priority patent/EP1548629A1/en
Priority to US10/950,530 priority patent/US20050143105A1/en
Priority to CNA2004100806550A priority patent/CN1638364A/zh
Application granted granted Critical
Publication of JP3626491B1 publication Critical patent/JP3626491B1/ja
Publication of JP2005209147A publication Critical patent/JP2005209147A/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/222Monitoring or handling of messages using geographical location information, e.g. messages transmitted or received in proximity of a certain spot or area

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

【課題】 ユーザの位置情報を自動で公開して、気遣いの負担を軽減したメッセンジャーサービスを実現する。
【解決手段】 メッセンジャーサービスシステム100は、通信端末1、メッセンジャーサーバ3およびデータベース5を有している。データベース5には、エリアデータセットが識別データに対応付けて格納されている。このデータセットは、所定のエリアの定義データおよび表記データを含んでいる。サーバ3は、ある通信端末から位置データと識別データを受信すると、その識別データに対応付けられたエリアデータセットを検索する。サーバ3は、受信した位置データの示す位置を含むエリアデータセットを発見すると、そのエリアデータセット中の表記データを別の通信端末に送信する。その通信端末は、その表記データを受信して表示する。これにより、第2通信端末のユーザは第1通信端末の位置を把握できる。
【選択図】 図1

Description

この発明は、複数の通信端末間でメッセージを交換するメッセンジャーサービスを提供するための技術に関する。
下記の特許文献1には、メッセンジャーサービスを提供するシステムが開示されている。このシステムでは、メッセンジャーサーバにログイン中の複数のユーザが互いにメッセージを交換できる。
特開2003−58483号公報
コミュニケーション手段の一つとして定着しているインスタントメッセンジャーサービスだが、通信相手にアクセスするとき、その人がメッセージ交換の可能な状況にあるかどうかの判定が難しい。例えば、相手が会議中であるのに私用でメッセージを送るのははばかられるところである。
そこで、本発明は、ユーザの位置情報を自動で公開して、気遣いの負担を軽減したメッセンジャーサービスを実現することを課題とする。
一つの側面において、本発明は、メッセンジャーサービスを提供するシステムに関する。このシステムは、複数の通信端末と、一の通信端末に入力されたメッセージデータを他の通信端末に転送するメッセンジャーサーバと、所定のエリアの定義データおよびそのエリアの表記データを有するエリアデータセットを識別データに対応付けて格納する第1の記憶手段とを備えている。この識別データは、メッセンジャーサービスのユーザに割り当てられた識別データ、すなわちユーザIDであってもよい。通信端末の各々は、自身の位置データを取得する手段と、メッセンジャーサーバからエリアの表記データを受信したときにその表記データを表示する手段とを有している。位置データを取得する手段は、測位衛星から通信端末の測位データを受信する受信機であってもよいし、あるいは通信端末の位置を自ら測定する装置であってもよい。メッセンジャーサーバは、第1の通信端末の位置データおよび第1の識別データを第1通信端末から受信すると、受信した第1識別データに対応付けられたエリアデータセットを検索する。メッセンジャーサーバは、受信した位置データの示す位置を含む定義データを有するエリアデータセットを発見すると、そのエリアデータセット中のエリアの表記データを第2の通信端末に送信する。
このメッセンジャーサービスシステムでは、第1通信端末の位置を含むエリアの表記データが第2通信端末上に表示される。これにより、第2通信端末のユーザは第1通信端末の位置を把握することが可能になる。このように、通信相手の位置情報が自動で公開されるので、ユーザの気遣いの負担が軽減される。
第1通信端末は、第1通信端末への命令の入力に応じて、第1識別データを用いてメッセンジャーサーバへのログインを試み、ログインに成功したときに、第1通信端末の位置データを取得し、第1識別データとともにメッセンジャーサーバへ送信してもよい。この場合、第1通信端末がメッセンジャーサーバにログインすると、第1通信端末の位置を含むエリアの表記データが第2通信端末上に表示される。したがって、第2通信端末のユーザは、第1通信端末のログイン後、迅速に第1通信端末の位置を把握できる。
メッセンジャーサーバは、受信した位置データの示す位置を含む定義データを有するエリアデータセットを発見すると、そのエリアデータセット中の定義データを第1通信端末へ送信してもよい。第1通信端末は、第1通信端末の位置データを繰り返し取得し、メッセンジャーサーバから受信した定義データによって定義されるエリアの外の位置を示す位置データを取得すると、その位置データを第1識別データとともにメッセンジャーサーバに送信してもよい。この場合、第1通信端末のエリア外への移動に応じて、第1通信端末の位置データがメッセンジャーサーバに送信される。これにより、第2通信端末へ送信される表記データに第1通信端末の移動が反映される。
このメッセンジャーサービスシステムは、通信端末を操作するユーザの表記データを上記の識別データに対応付けて格納する第2の記憶手段をさらに備えていてもよい。メッセンジャーサーバは、受信した位置データの示す位置を含む定義データを有するエリアデータセットを発見すると、第1識別データに対応付けられたユーザ表記データを第2記憶手段から読み取り、発見されたエリアデータセット中のエリア表記データにそのユーザ表記データを付加したデータを作成し、作成されたデータを第2通信端末に送信してもよい。第2通信端末は、その作成されたデータを受信して表示してもよい。この場合、第1通信端末のユーザおよび第1通信端末が位置するエリアの双方の表記を含んだデータが第2通信端末上に表示される。このため、第2通信端末のユーザは、第1通信端末の位置を把握できるだけでなく、第1通信端末のユーザが誰であるかを容易に特定できる。
通信端末の各々は、エリアデータセットの入力に応答して、そのエリアデータセットおよび識別データをサーバへ送信してもよい。サーバは、通信端末から受信したエリアデータセットを、同じ通信端末から受信した識別データに対応付けて第1記憶手段に格納してもよい。この場合、ユーザは通信端末を用いてエリアデータセットを第1記憶手段に登録することができる。したがって、ユーザは自らエリアとその表記を設定することができる。
このメッセンジャーサービスシステムは、一つの識別データに対応付けられ、他の一つ以上の識別データを格納する識別データリストを一つ以上記憶するリスト記憶手段をさらに備えていてもよい。通信端末の各々は、通信端末への命令の入力に応じて、識別データを用いてメッセンジャーサーバへのログインを試みてもよい。第2通信端末は、第1識別データに対応付けられた識別データリストに格納された識別データを用いてメッセンジャーサーバにログインした通信端末であってもよい。メッセンジャーサーバは、位置データの示す位置を含む定義データを有するエリアデータセットを発見すると、第1識別データに対応付けられた識別データリストを参照し、その識別データリストに格納された一つ以上の識別データを読み取り、その読み取った識別データを用いてメッセンジャーサーバにログインした第2通信端末に、発見したエリアデータセット中のエリアの表記データを送信してもよい。
メッセンジャーサーバは、エリアデータセットを発見した後、第2通信端末によるポーリングに応答して、そのエリアデータセット中のエリアの表記データを第2通信端末に送信してもよい。この場合、メッセンジャーサービスシステムは、一つの識別データに対応付けられ、他の一つ以上の前記識別データを格納する識別データリストを一つ以上記憶するリスト記憶手段をさらに備えていてもよい。第2通信端末は、第2の識別データをメッセンジャーサーバに送信してポーリングを実行してもよい。メッセンジャーサーバは、そのポーリングに応答して、第2識別データに対応付けられた識別データリスト内で第1識別データを検索し、第1識別データを発見したときに、エリアの表記データを第2通信端末に送信してもよい。
別の側面において、本発明はメッセンジャーサーバに関する。このメッセンジャーサーバは、複数の通信端末間でメッセージの交換を行うメッセンジャーサービスシステム内に設置され、一の通信端末に入力されたメッセージデータを他の通信端末に転送する。メッセンジャーサービスシステムは、所定のエリアの定義データおよびそのエリアの表記データを有するエリアデータセットを識別データに対応付けて格納する第1の記憶手段をさらに有している。通信端末の各々は、自身の位置データを取得する手段と、メッセンジャーサーバからエリアの表記データを受信したときにその表記データを表示する手段とを有している。メッセンジャーサーバは、第1の通信端末の位置データおよび第1の識別データを第1通信端末から受信すると、受信した第1識別データに対応付けられたエリアデータセットを検索するステップと、受信した位置データの示す位置を含む定義データを有するエリアデータセットを発見すると、そのエリアデータセット中のエリアの表記データを第2の通信端末に送信するステップとを実行する。
別の側面において、本発明はメッセンジャーサービスシステムを制御する方法に関する。このメッセンジャーサービスシステムは、複数の通信端末と、一の通信端末に入力されたメッセージデータを他の通信端末に転送するメッセンジャーサーバと、所定のエリアの定義データおよびそのエリアの表記データを有するエリアデータセットを識別データに対応付けて格納する第1の記憶手段とを備えている。通信端末の各々は、自身の位置データを取得する手段と、メッセンジャーサーバからエリアの表記データを受信したときにその表記データを表示する手段とを有している。この方法は、メッセンジャーサーバが、第1の通信端末の位置データおよび第1の識別データを第1通信端末から受信すると、受信した第1識別データに対応付けられた前記エリアデータセットを検索するステップと、メッセンジャーサーバが、受信した位置データの示す位置を含む定義データを有するエリアデータセットを発見すると、そのエリアデータセット中のエリアの表記データを第2の通信端末に送信するステップとを備えている。
別の側面において、本発明は、メッセンジャーサーバを制御するプログラムに関する。このメッセンジャーサーバは、複数の通信端末間でメッセージの交換を行うメッセンジャーサービスシステム内に設置され、一の通信端末に入力されたメッセージデータを他の通信端末に転送する。メッセンジャーサービスシステムは、所定のエリアの定義データおよびそのエリアの表記データを有するエリアデータセットを識別データに対応付けて格納する第1の記憶手段をさらに有している。通信端末の各々は、自身の位置データを取得する手段と、メッセンジャーサーバからエリアの表記データを受信したときにその表記データを表示する手段とを有している。このプログラムは、第1の通信端末の位置データおよび第1の識別データを第1通信端末から受信すると、受信した第1識別データに対応付けられたエリアデータセットを検索するステップと、位置データの示す位置を含む定義データを有するエリアデータセットを発見すると、そのエリアデータセット中のエリアの表記データを第2の通信端末に送信するステップとをメッセンジャーサーバに実行させる。
さらに別の側面において、本発明は、メッセンジャーサービスを提供するシステムに関する。このシステムは、複数の通信端末と、一の通信端末に入力されたメッセージデータを他の通信端末に転送するメッセンジャーサーバと、所定のエリアの定義データおよびそのエリアの表記データを有するエリアデータセットを識別データに対応付けて格納する第1の記憶手段とを備えている。通信端末の各々は、自身の位置データを取得する手段と、メッセンジャーサーバからエリアの表記データを受信したときにその表記データを表示する手段と、第2の記憶手段とを有している。第1の通信端末は、自身の位置データを取得するとともに、第1の識別データに対応付けられたエリアデータセットを第1の記憶手段から第2の記憶手段に読み込み、自身の位置データの示す位置を含む定義データを有するエリアデータセットを第2の記憶手段内で検索し、そのエリアデータセットを発見すると、そのエリアデータセット中のエリアの表記データを第1識別データとともにメッセンジャーサーバに送信する。メッセンジャーサーバは、エリアの表記データおよび第1識別データを第1通信端末から受信して、第2の前記通信端末に送信する。
このメッセンジャーサービスシステムでは、第1通信端末の位置を含むエリアの表記データが第2通信端末上に表示される。これにより、第2通信端末のユーザは第1通信端末の位置を把握することが可能になる。このように、通信相手の位置情報が自動で公開されるので、ユーザの気遣いの負担が軽減される。さらに、通信端末がエリアの表記データを取得するので、メッセンジャーサーバが表記データを取得する必要がなく、したがってメッセンジャーサーバの負荷が軽減される。
第1通信端末は、第1通信端末への命令の入力に応じて、第1識別データを用いてメッセンジャーサーバへのログインを試み、ログインに成功したときに、自身の位置データを取得してもよい。この場合、第1通信端末がメッセンジャーサーバにログインすると、第1通信端末の位置を含むエリアの表記データが第2通信端末上に表示される。したがって、第2通信端末のユーザは、第1通信端末のログイン後、迅速に第1通信端末の位置を把握できる。
第1通信端末は、自身の位置データの示す位置を含む定義データを有するエリアデータセットを発見した後、自身の位置データを繰り返し取得し、発見されたエリアデータセット中の定義データによって定義されるエリアの外の位置を示す位置データを取得すると、その取得した位置データの示す位置を含む定義データを有するエリアデータセットを第2の記憶手段内で検索し、そのエリアデータセットを発見すると、そのエリアデータセット中のエリアの表記データを第1識別データとともにメッセンジャーサーバに再送信してもよい。メッセンジャーサーバは、再送信されたエリアの表記データおよび第1識別データを第1通信端末から受信して、第2通信端末に送信してもよい。第1通信端末のエリア外への移動に応じて、第1通信端末の位置を含むエリアの表記データがメッセンジャーサーバに再送信されるので、第2通信端末へ送信される表記データに第1通信端末の移動が反映される。
通信端末の各々は、通信端末を操作するユーザの表記データを識別データに対応付けて格納する第3の記憶手段をさらに備えていてもよい。第1通信端末は、自身の位置データの示す位置を含む定義データを有するエリアデータセットを発見すると、第1識別データに対応付けられたユーザ表記データを第3記憶手段から読み取り、発見されたエリアデータセット中のエリア表記データにユーザ表記データを付加したデータを作成し、作成されたデータをメッセンジャーサーバに送信してもよい。メッセンジャーサーバは、その作成されたデータを第2通信端末へ送信してもよい。第2通信端末は、その作成されたデータを受信して表示してもよい。この場合、第1通信端末のユーザおよび第1通信端末が位置するエリアの双方の表記を含んだデータが第2通信端末上に表示される。このため、第2通信端末のユーザは、第1通信端末の位置を把握できるだけでなく、第1通信端末のユーザが誰であるかを容易に特定できる。
このメッセンジャーサービスシステムは、第1記憶手段に対するデータ入出力を管理する管理サーバをさらに備えていてもよい。通信端末の各々は、通信端末へのエリアデータセットの入力に応答して、そのエリアデータセットおよび識別データを管理サーバへ送信してもよい。管理サーバは、通信端末から受信したエリアデータセットを、同じ通信端末から受信した識別データに対応付けて第1記憶手段に格納してもよい。この場合、ユーザは通信端末を用いてエリアデータセットを第1記憶手段に登録することができる。したがって、ユーザは自らエリアとその表記を設定することができる。
このメッセンジャーサービスシステムは、一つの識別データに対応付けられ、他の一つ以上の識別データを格納する識別データリストを一つ以上記憶するリスト記憶手段をさらに備えていてもよい。通信端末の各々は、通信端末への命令の入力に応じて、識別データを用いてメッセンジャーサーバへのログインを試みてもよい。第2通信端末は、第1識別データに対応付けられた識別データリストに格納された識別データを用いてメッセンジャーサーバにログインした通信端末であってもよい。メッセンジャーサーバは、エリアの表記データおよび第1識別データを第1通信端末から受信すると、第1識別データに対応付けられた識別データリストを参照し、その識別データリストに格納された一つ以上の識別データを読み取り、その読み取った識別データを用いてメッセンジャーサーバにログインした第2通信端末に、エリアデータセット中のエリアの表記データを送信してもよい。
メッセンジャーサーバは、エリアの表記データおよび第1識別データを第1通信端末から受信した後、第2通信端末によるポーリングに応答して、第1通信端末から受信したエリアの表記データを第2通信端末に送信してもよい。
このメッセンジャーサービスシステムは、一つの識別データに対応付けられた他の一つ以上の識別データを格納する識別データリストを一つ以上記憶するリスト記憶手段をさらに備えていてもよい。第2通信端末は、第2の識別データをメッセンジャーサーバに送信してポーリングを実行してもよい。メッセンジャーサーバは、そのポーリングに応答して、第2識別データに対応付けられた識別データリスト内で第1識別データを検索し、第1識別データを発見したときに、第1通信端末から受信したエリアの表記データを第2通信端末に送信してもよい。
さらに別の側面において、本発明はメッセンジャーサービスシステムを制御する方法に関する。このメッセンジャーサービスシステムは、複数の通信端末と、一の通信端末に入力されたメッセージデータを他の通信端末に転送するメッセンジャーサーバと、所定のエリアの定義データおよびそのエリアの表記データを有するエリアデータセットを識別データに対応付けて格納する第1の記憶手段とを備える。通信端末の各々は、自身の位置データを取得する手段と、メッセンジャーサーバからエリアの表記データを受信したときにその表記データを表示する手段と、第2の記憶手段とを有している。この方法は、第1の通信端末が、自身の位置データを取得するとともに、第1の識別データに対応付けられたエリアデータセットを第1の記憶手段から第2の記憶手段に読み込むステップと、第1通信端末が、自身の位置データの示す位置を含む定義データを有するエリアデータセットを第2の記憶手段内で検索するステップと、第1通信端末が、エリアデータセットを発見すると、そのエリアデータセット中のエリアの表記データを第1識別データとともにメッセンジャーサーバに送信するステップと、メッセンジャーサーバが、エリアの表記データおよび第1識別データを第1通信端末から受信して、第2の通信端末に送信するステップとを備えている。
本発明によれば、ある通信端末を用いてメッセンジャーサービスを利用するユーザが他のユーザによって使用される通信端末の位置を把握できるので、メッセンジャーサービスの利便性が高まる。
以下、添付図面を参照しながら本発明の実施形態を詳細に説明する。なお、図面の説明において同一の要素には同一の符号を付し、重複する説明を省略する。
第1実施形態
図1は、メッセンジャーサービスシステム100の構成を示す概略図である。メッセンジャーサービスシステム100は、通信ネットワーク2を介して相互に通信することの可能な通信端末1とメッセンジャーサーバ3から構成されている。通信端末1は、メッセンジャープログラムを実行して他の通信端末1との間でメッセージデータを送受信する。通信端末は、携帯電話などの移動体端末であってもよいし、あるいはデスクトップ型コンピュータなどの固定端末であってもよい。メッセンジャーサーバ3は、クライアントである通信端末1にメッセンジャーサービスを提供する。メッセンジャーサーバ3は、ある通信端末1から送信されたメッセージデータを別の通信端末1へ転送する。メッセンジャーサーバ3は、必要に応じて認証データベース4およびエリアデータベース5にアクセスできるようになっている。認証データベース4は、ユーザの認証に必要なデータを格納している。認証データベース4は、データベースサーバ6のハードディスクドライブ7に格納されている。エリアデータベース5は、後述するように、ユーザによって登録されるエリアデータセットを格納する。エリアデータベース5は、データベースサーバ8のハードディスクドライブ9に格納されている。データベースサーバ8は、エリアデータベース5に対するエリアデータセットの入出力を管理する。
図2は、通信端末1の構成を概略的に示すブロック図である。通信端末1は、CPU(Central Processing Unit:中央処理装置)10、RAM(Random Access Memory:ランダムアクセスメモリ)12、ストレージ部14、通信装置16、GPS(Global Positioning System:全地球測位システム)受信機18、入力装置20、および表示装置22を有する。これらの構成要素はバス24によって相互に接続されている。データおよび制御信号はバス24を通じてこれらの構成要素間を伝送される。
CPU10は、メッセンジャープログラムを実行して通信端末1の動作を制御する制御演算装置である。RAM12は、CPU10がメッセンジャープログラムを実行するために使用する主記憶装置である。RAM12には、CPU10が実行するメッセンジャープログラムおよびその実行に必要なデータが格納される。
ストレージ部14は、通信端末1の補助記憶装置であり、内蔵メモリ14aと、外付けメモリ15用の読み取り装置14bとを含んでいる。内蔵メモリ14aは、通信端末1の内部に固定された記憶装置である。内蔵メモリ14aは、例えば、フラッシュメモリなどの不揮発性メモリや、ハードディスクドライブである。読み取り装置14bは、通信端末1に対して着脱自在の外付けメモリ15からデータを読み取るための装置である。外付けメモリ15は、例えば、CD−ROM、DVD−ROM、または各種のカード型メモリである。本実施形態では、メッセンジャープログラムが内蔵メモリ14aに格納されている。メッセンジャープログラムの実行時には、内蔵メモリ14aからRAM12にメッセンジャープログラムが読み込まれる。
通信装置16は、通信ネットワーク2を介した通信端末1とメッセンジャーサーバ3との間の通信を制御する。本実施形態では、通信装置16は通信ネットワーク2との間で無線通信を行う。ただし、通信端末1と通信ネットワーク2との通信は無線方式に限定されるわけではなく、有線方式であってもよい。通信装置16は、CPU10の制御のもとでアンテナ17を通じて電波を送受信し、通信ネットワーク2に無線接続する。これにより、通信端末1とメッセンジャーサーバ3との間で通信が確立される。
GPS受信機18は、GPS衛星26からGPS信号28を受信し、GPS信号28に応じた測位データをCPU10に送る。この測位データは、通信端末1の位置を示す一対の緯度データおよび経度データを含んでいる。なお、GPS受信機18は、複数のGPS衛星からGPS信号を受信するが、図面の簡単のため、図2では一つのGPS衛星26のみを描いてある。
入力装置20は、通信端末1に命令およびデータを入力するために使用される。入力装置20は、ボタン、ダイヤル、キーボード、マウス、スタイラスなど、ユーザによって直接操作される装置であってもよいし、ユーザの発する音声を判別する音声認識装置であってもよい。
表示装置22は、CPU10の制御のもとで各種の情報を表示する。後述するように、他の通信端末1から送信されるメッセージデータやメッセンジャーサーバ3から送信される表記データも表示装置22上に表示される。
図3は、メッセンジャーサーバ3の構成を概略的に示すブロック図である。メッセンジャーサーバ3は、CPU30、RAM32、ハードディスクドライブ34、通信装置36、入力装置38、および表示装置40を有する。これらの構成要素はバス42によって相互に接続されている。データおよび制御信号はバス42を通じてこれらの構成要素間を伝送される。
CPU30は、サーバプログラムを実行してメッセンジャーサーバ3の動作を制御する制御演算装置である。RAM32は、CPU30がサーバプログラムを実行するために使用する主記憶装置である。RAM32には、CPU30が実行するサーバプログラムおよびその実行に必要なデータが格納される。
ハードディスクドライブ34は、メッセンジャーサーバ3の補助記憶装置である。ハードディスクドライブ34には、サーバプログラムのほかに、各ユーザのコンタクトリストが各ユーザの識別データ(Identification Data:ID)に対応付けられて格納されている。サーバの起動時には、ハードディスクドライブ34からRAM32にサーバプログラムが読み込まれ、CPU30によって実行される。
通信装置36は、通信ネットワーク2とメッセンジャーサーバ3との間の通信、ならびにデータベースサーバ6および8とメッセンジャーサーバ3との間の通信を制御する。通信装置36は、メッセンジャーサーバ3が認証データベース4およびエリアデータベース5へアクセスすることを可能にする。
入力装置38は、メッセンジャーサーバ3に命令およびデータを入力するために使用される。表示装置40は、CPU30の制御のもとで各種の情報を表示する。
以下では、図4を参照しながら、メッセンジャーサービスの利用中に通信端末1の表示装置22に表示される画面を説明する。図4は、一例として、ユーザ「A」の端末1で表示されるメッセンジャー画面30を示している。メッセンジャー画面60は、メッセージ表示ウインドウ61、メッセージ入力ウインドウ62、リストメンバウインドウ63、チャットメンバ画像64、チャットメンバ情報ウインドウ65を含んでいる。
メッセージ表示ウインドウ61は、チャットに参加しているユーザ(図3ではユーザA、BおよびC)によって入力されたメッセージデータの文字列がユーザの登録名とともに表示される。なお、図4では、ユーザA、B、…Hの登録名がそれぞれ「AAA」、「BBB」、…「HHH」と表されている。
メッセージ入力ウインドウ62には、ユーザAによって入力されているメッセージデータが表示される。ユーザAは入力装置20を操作することによりメッセージデータを入力できる。
リストメンバウインドウ63には、ユーザAのコンタクトリスト(後述する)に登録されたユーザのうちチャットに参加していないユーザに関する情報が表示される。メッセンジャーサーバ3にログインした端末1のユーザ(図4ではユーザDおよびE)は「online」欄に表示され、メッセンジャーサーバ3にログインしていない端末1のユーザ(図4ではユーザF、GおよびH)は「offline」欄に表示される。各欄には、ユーザの登録名(「DDD」等)の右側に「@(アットマーク)」が表示される。さらに、「@」の右側に文字列66が表示されることがある。この文字列66は、文字列66の左側に表示される登録名を有するユーザの端末1が位置するエリアの表記である。エリアを定義する情報とエリアの表記は、ユーザによって予め登録される。エリア登録処理については後で詳細に説明する。図3に示されるメッセンジャー画面60では、ユーザFのエリア表記66は空白である。このように、エリア表記66は空白のときもある。空白のエリア表記66は、登録エリア内に端末1が存在しないことを意味する。リストメンバウインドウ63の上部には、ユーザAの登録名「AAA」、「@」およびユーザAのエリア表記66(本例では「office」)も表示される。以下では、この文字列68、すなわち「AAA@office」を自己表記と呼ぶことにする。
チャットメンバ画像64は、チャット相手のユーザを表す画像である。画像64のデータは、通信端末1のストレージ部14に格納されている。ただし、画像64のデータは、メッセンジャーサーバ3のハードディスクドライブ34またはメッセンジャーサーバ3がアクセス可能な他のコンピュータの記憶装置(例えば、認証データベース4)内に格納されていてもよい。この場合、画像64のデータはメッセンジャーサーバ3から通信端末1に送信される。
チャットメンバ情報ウインドウ65には、チャット相手のユーザに関する情報が表示される。具体的には、ユーザの登録名、「@」およびエリア表記67が表示される。エリア表記67は、上記のエリア表記66と同様に、表記67と同じウインドウ65内に表示される登録名を有するユーザの端末1が位置するエリアを示している。エリア表記67も空白のときがあり、それは登録エリア内に端末1が存在しないことを意味する。
以下では、システム100においてメッセンジャーサービスを提供するために実行される様々な処理を説明する。これらの処理において、通信端末1の動作はメッセンジャープログラムにしたがって制御され、メッセンジャーサーバ3の動作はサーバプログラムにしたがって制御される。メッセンジャープログラムは、内蔵メモリ14aからRAM12に読み込まれ、CPU10によって実行される。メッセンジャーサーバ3の動作は、サーバプログラムにしたがって制御される。サーバプログラムは、ハードディスクドライブ34からRAM32に読み込まれ、CPU30によって実行される。
メッセンジャーサービスを利用するためには、ユーザはあらかじめ端末1を操作してユーザ登録を行う必要がある。ユーザは登録に必要な情報を端末1から通信ネットワーク2を介してメッセンジャーサーバ3に送信する。この情報には、例えば、ユーザの登録名およびユーザの認証に使用されるパスワードが含まれる。メッセンジャーサーバ3は、端末1から送られる情報を用いて登録の可否を決定し、登録を許可したユーザに固有の識別データ、すなわちユーザIDを割り当てる。メッセンジャーサーバ3は、登録の際にユーザから送られた情報をユーザIDに対応付けて認証データベース4に格納する。本実施形態では、ユーザ登録名およびパスワードも認証データベース4に格納される。ユーザの端末1には、メッセンジャーサーバ3から登録の可否を知らせる通知が送信される。登録許可通知には、そのユーザに割り当てられたユーザIDが含まれる。
ユーザIDおよびパスワードは端末1がメッセンジャーサーバ3にログインする際に必要となる。ユーザIDおよびパスワードはユーザが必要に応じて端末1に入力してもよいし、端末1のストレージ部14に保存されてもよい。いずれの場合も、端末1のメッセンジャーサーバ3へのログイン後は、ユーザIDがRAM12内に格納される。
システム100では、既存のメッセンジャーサービスと同様に、登録ユーザ同士が各自の端末1を用いてメッセージを交換できる。ユーザは入力装置20を操作してコンタクトリストを作成することができる。コンタクトリストには、ユーザが自身のネットワーク状態を通知することを希望する他のユーザのIDが列挙される。以下では、コンタクトリスト内のIDを有するユーザを「コンタクトリストメンバ」と呼ぶ。コンタクトリストは、ストレージ部14に保存されてもよい。コンタクトリストは、端末1のメッセンジャーサーバ3へのログインに使用されたユーザIDとともに端末1からメッセンジャーサーバ3に送信される。メッセンジャーサーバ3は、受信したコンタクトリストとユーザIDを互いに対応付けてハードディスクドライブ34に格納する。あるいは、メッセンジャーサーバ3は、コンタクトリストとユーザIDを外部の記憶装置に格納してもよい。例えば、コンタクトリストは、そのコンタクトリストとともに受信したユーザIDに対応付けて認証データベース4に格納されてもよい。
システム100では、ユーザが任意の2次元エリアとそのエリアの表記を登録することができる。ユーザの端末1が登録エリア内に位置するとき、メッセンジャーサーバ3は、そのエリアの表記データをそのユーザのコンタクトリストメンバの端末1に同報する。コンタクトリストメンバの端末1は、メッセンジャーサーバ3から受信したエリア表記データをメッセンジャー画面60におけるエリア表記66および67(図4を参照)として表示する。
以下では、図5を参照しながら、エリア登録処理を説明する。図5は、エリア登録処理のフローチャートである。この処理は、ユーザが端末1の入力装置20を操作してエリア登録開始命令を入力すると開始する。
まず、端末1は、エリアの定義および表記の入力を受け付ける(ステップS502)。ユーザは、端末1の入力装置20を操作して、登録しようとするエリアの定義データと、そのエリアの表記データを入力する(ステップS504)。エリアは、中心座標(X,Y)および半径Rによって定義される。すなわち、エリアの定義データは、そのエリアの中心座標および半径からなるデータセット(X,Y,R)である。本実施形態では、Xは緯度、Yは経度を示すデータである。中心座標の指定方法は任意であり、例えば、数値を直接入力する方法や、表示装置22に表示される地図上でポインタを移動して希望の位置を指定する方法が挙げられる。エリア半径の指定方法も任意であり、例えば、半径の数値を直接入力する方法や、表示装置22に表示される地図上でエリアを示す円を拡大縮小させる方法が挙げられる。エリアの表記データは、そのエリアの表示装置22上での表示態様を指定するデータである。ユーザは端末1の入力装置20を操作して表記データを指定することができる。表記データは、一連の文字、数字、記号などからなる文字列であってもよいし、アイコンなどの画像であってもよい。
端末1は、定義データおよび表記データが入力されると、それらのデータをメッセンジャーサーバ3へのログインに使用したユーザIDおよびパスワードとともにメッセンジャーサーバ3へ送信する(ステップS506)。メッセンジャーサーバ3は、ユーザID、パスワード、定義データおよび表記データの受信(ステップS508)に応答して、エリアテーブル更新処理を実行する(ステップS510)。
エリアテーブル更新処理では、メッセンジャーサーバ3は、エリアデータベース5にアクセスし、受信したユーザIDに対応付けられたエリアテーブル50をRAM32に読み込む。図6は、エリアテーブル50の構成を示している。エリアテーブル50は、中心座標、半径および表記という三つの項目を有している。これらの三項目から構成される各行がエリアデータセット52である。図6では、中心座標のXおよびYが、GPS測位データと同様に、それぞれ緯度および経度に一対一に対応する値を有している。この代わりに、XおよびYが、それぞれ緯度および経度そのものの値を有していてもよい。メッセンジャーサーバ3は、受信した定義データに基づいて、受信した定義データおよび表記データのエリアテーブル50への登録を許可するか否かを判断する。
具体的に述べると、メッセンジャーサーバ3は、受信した定義データを、RAM32に読み込んだエリアテーブル50内で検索する。同じ定義データ(X,Y,R)を含むエリアデータセット52が発見されると、受信した表記データをそのエリアデータセット52内の表記データと比較する。両者が一致する場合、メッセンジャーサーバ3は、受信した定義データおよび表記データをエリアテーブル50に登録することなく、登録を拒否する通知を発信元の端末1に送信する。このようにしてエリアデータセットの重複登録が回避される。受信した表記データがエリアデータセット52内の表記データと異なる場合、メッセンジャーサーバ3は表記データの上書きの可否を端末1に問い合わせる。メッセンジャーサーバ3は、端末1から上書き要求を受信すると、エリアデータセット52内の表記データを、受信した表記データに更新する。このとき、メッセンジャーサーバ3は、端末1から受信した定義データと同じ定義データを含むエリアデータセット52が複数存在するか否かを確認する。複数存在する場合、メッセンジャーサーバ3は古い方のエリアデータセット52中の表記データを更新するか、あるいは古い方のエリアデータセット52を削除し、端末1から受信した定義データおよび表記データを含むエリアデータセット52を新たに登録する。
一方、受信した定義データがエリアテーブル50中のいずれのエリアデータセット52にも発見されない場合、メッセンジャーサーバ3は、受信した定義データおよび表記データを新たなエリアデータセット52としてエリアテーブル50に追加する。なお、一つのユーザIDに対応付けられたエリアテーブル50におけるエリアデータセット52の最大登録数が決められていてもよい。この場合、最大登録数のエリアデータセット52がエリアテーブル50にすでに格納されていれば、メッセンジャーサーバ3は、受信した定義データおよび表記データをエリアテーブル50に登録することなく、登録を拒否する通知を発信元の端末1に送信する。
以下では、図7を参照しながら、通信端末1がメッセンジャーサーバ3にログインしてからログアウトするまでにシステム100で実行される各種の処理の例を説明する。図7は、これらの処理を示すフローチャートである。以下では、メッセンジャーサーバ3にログインする通信端末1を操作するユーザを「ユーザA」と表記する。ユーザAのコンタクトリストには、ユーザBおよびCが含まれているものとする。ユーザA、BおよびCの操作する通信端末1をそれぞれ「端末1A」、「端末1B」および「端末1C」と表記する。
ユーザAが端末1A上でメッセンジャープログラムを起動すると、端末1Aは、自動的に、あるいは入力装置20を用いた端末1Aへの命令の入力に応答して、メッセンジャーサーバ3へログイン要求を送信する(ステップS702)。このログイン要求には、ユーザAのIDおよび認証コード(例えば、パスワード)が含まれている。IDはユーザAが入力してもよいし、端末1Aのストレージ部14にあらかじめ格納されていて、そこから読み出されてもよい。メッセンジャーサーバ3はログイン要求を受信すると(ステップS752)、認証データベース4にアクセスして認証処理を実行し(ステップS754)、認証の結果を端末1Aに送信する(ステップS756)。ステップS754においてメッセンジャーサーバ3は、ログイン要求に含まれる一対のユーザIDおよび認証コードを認証データベース4から検索する。メッセンジャーサーバ3は、そのデータ対を認証データベース4内に発見すると、ステップS756で認証成功通知を端末1Aに送信する。また、メッセンジャーサーバ3は、ユーザAのIDに対応付けられた登録名データを認証データベース4からRAM32に読み込む。さらに、メッセンジャーサーバ3は、ユーザAのIDに対応付けられたエリアテーブル50およびコンタクトリストをRAM32内に読み込む。このように、メッセンジャーサーバ3は、ログイン認証に成功したオンラインユーザの登録名、エリアテーブルおよびコンタクトリストをそのユーザのIDに対応付けてRAM32内に格納する。これにより、メッセンジャーサーバ3は、メッセンジャーサーバ3にログインしている端末1(すなわち、オンライン状態の端末)がログインに使用したIDを特定することができる。一方、ユーザIDおよび認証コードのデータ対が認証データベース4内に発見されない場合、メッセンジャーサーバ3は、ステップS756で認証失敗通知を端末1Aに送信する。
端末1Aはメッセンジャーサーバ3から認証結果通知を受信し(ステップS704)、認証が成功したか、あるいは失敗したかを判定する(ステップS706)。メッセンジャーサーバ3から認証失敗通知を受信した場合(ステップS706にてNo)、端末1Aは認証に失敗したことを示すメッセージを表示装置22上に表示する(ステップS707)。一方、メッセンジャーサーバ3から認証成功通知を受信した場合(ステップS706にてYes)、端末1AはGPS受信機18を用いて端末1Aの測位データを取得する(ステップS708)。この測位データは、端末1Aの位置を示す一対の緯度データおよび経度データを含んでおり、RAM12に格納される。
この後、端末1Aは、ユーザAのコンタクトリストメンバの端末1に同報される表記データの作成要求をメッセンジャーサーバ3に送信する(ステップS710)。この表記作成要求は、端末1Aが位置するエリアの表記を含む表記データの作成をメッセンジャーサーバ3に依頼する。表記作成要求には、ユーザAのIDおよび測位データが含まれている。メッセンジャーサーバ3は表記作成要求を受信すると(ステップS762)、ユーザAのIDに対応付けられたエリアテーブル50を参照して表記データを作成する(ステップS764)。メッセンジャーサーバ3は、表記作成要求に含まれる測位データの示す位置が、参照したエリアテーブル50中のいずれかのエリアデータセット52によって定義されるエリア内に含まれているか否かを判定する。メッセンジャーサーバ3は、測位データの示す位置を含む定義データを有するエリアデータセット52をエリアテーブル50内に発見すると、そのエリアデータセット52に含まれるエリアの表記データを用いて「(ユーザ登録名)@(エリア表記)」の文字列を作成する。ユーザ登録名データは、ユーザAのIDを用いて認証データベース4から検索される。メッセンジャーサーバ3は、その登録名データおよび「@」のキャラクタコードにエリア表記データを付加し、上記の文字列を作成する。この文字列が、コンタクトリストメンバの端末1に同報される表記データである。一方、測位データの示す位置を含む定義データを有するエリアデータセット52がエリアテーブル50内に発見されない場合、エリアの表記データは空白とされる。すなわち、メッセンジャーサーバ3は、「(ユーザ登録名)@」の文字列を同報用の表記データとして作成する。
以下では、表記データ作成処理の例を挙げる。図6に示されるエリアテーブル50がユーザAのIDに対応付けられており、認証データベース4内ではユーザAの登録名「AAA」がユーザAのIDに対応付けられているものとする。表記作成要求に含まれる測位データが座標(2042、8020)であれば、その座標はエリアデータセット52bによって定義されるエリア内に含まれる。したがって、メッセンジャーサーバ3は、エリアデータセット52b中のエリア表記データを使用して、文字列「AAA@office」を同報用の表記データとして作成する。しかし、端末1Aの測位データが座標(2300、8400)であれば、その座標はエリアデータセット52aおよび52bによって定義されるエリアのいずれにも含まれない。この場合、メッセンジャーサーバ3は、エリア表記データを空白に設定し、文字列「AAA@」を同報用の表記データとして作成する。
同報用の表記データを作成した後、メッセンジャーサーバ3は、ユーザAのコンタクトリストメンバ(この例ではユーザBおよびC)の端末1(この例では端末1Bおよび1C)にユーザAのオンライン情報を同報する(ステップS766)。メッセンジャーサーバ3は、表記作成要求に含まれるユーザAのIDに対応付けられたコンタクトリストをRAM32内で検索し、そのコンタクトリストに登録されたユーザAのコンタクトリストメンバのIDを取得する。メッセンジャーサーバ3は、こうして取得したIDを用いてメッセンジャーサーバ3にログインしている端末1Bおよび1Cを特定し、それらの端末1Bおよび1CにユーザAのオンライン情報を同報する。このオンライン情報には、ユーザAのIDおよびログイン通知に加えて、ステップS764で作成された表記データが含まれる。なお、ログイン通知は、端末1Aがメッセンジャーサーバ3にログインしていることを示すデータである。
端末1Bおよび1Cは、オンライン情報を受信すると(ステップS772)、メッセンジャー画面60中のリストメンバウインドウ26における「online」領域に、オンライン情報に含まれる表記データを表示する(ステップS774)。このようにして、あるユーザの端末の位置を示すエリア表記66が、そのユーザのコンタクトリストメンバの端末上に表示される。なお、端末1Bおよび1Cは、端末1Aと同じメッセンジャープログラムを実行しており、したがって端末1Aと同じ処理フローを実行するが、図7には、簡単のため、メッセンジャーサーバ3からのオンライン情報の受信に応じた処理のみが示されている。
メッセンジャーサーバ3は、端末1Aが現在位置するエリアの定義データ(X,Y,R)と、ステップS764で作成された表記データを端末1Aに送信する(ステップS768)。メッセンジャーサーバ3は、端末1Aから送信された測位データの示す位置を含む定義データを有するエリアデータセット52をエリアテーブル50内に発見したときは、そのエリアデータセット52内の定義データ(X,Y,R)を端末1Aに返信する。一方、測位データの示す位置を含む定義データを有するエリアデータセット52が発見されない場合、メッセンジャーサーバ3は(0,0,0)を現エリア定義データとして端末1Aに返信する。さらに、メッセンジャーサーバ3は、現エリア定義データに加えて、ステップS764で作成された表記データを端末1Aに送信する。端末1Aは、受信した表記データを表示装置22上に表示する。実際に、図4のリストメンバウインドウ63には、ステップS764で作成された表記データ「AAA@office」が自己表記68として表示されている。これにより、ユーザAは他のユーザに同報される表記データを確認することができる。
なお、メッセンジャーサーバ3は、オンライン情報の同報(ステップS766)と現エリア定義データの送信(ステップS768)を、図7に示される順序と逆の順序で実行してもよい。また、これらの処理を並列に実行してもよい。
端末1Aは、表記作成要求の送信(ステップS710)の後、コンタクトリストメンバ状態更新処理を実行する(ステップS712)。この処理において端末1Aは、メッセンジャーサーバ3からの所定の情報の受信に応答して、コンタクトリストメンバの状態を示すデータを更新する。あるユーザの端末1がメッセンジャーサーバ3に対してログインまたはログアウトすると、メッセンジャーサーバ3は、そのユーザのIDを含むコンタクトリストを有するすべてのオンラインユーザの端末1にオンライン情報またはオフライン情報を送信する。オンライン情報の送信は、上記のステップS766で行われる。オフライン情報の送信は、後述する端末1でのログアウト処理(ステップS724)に連動して行われる。オフライン情報には、ログアウトしたユーザのIDが含まれている。
端末1Aは、ステップS712においてオンライン情報またはオフライン情報の受信を確認すると、そのオンライン情報またはオフライン情報に含まれるユーザIDに対応付けられた状態データを更新する。この状態データは、コンタクトリストメンバの各々に対してRAM12内に設けられる。状態データは、オンライン情報の受信に応答してログインを示すデータに書き換えられ、オフライン情報の受信に応答してログアウトを示すデータに書き換えられる。また、オンライン情報およびオフライン情報の受信が確認されないときは、状態データは更新されない。さらに、端末1Aは、コンタクトリストメンバの状態データに応じてリストメンバウインドウ26(図4を参照)内のonline領域またはoffline領域に表記データ(「DDD@home」など)を表示する。これは、端末1Bおよび1Cについて上述したステップS774に対応する。
端末1Aはメッセージ処理も実行する(ステップS714)。この処理において端末1Aは、入力装置20を用いたメッセージデータの入力の有無を確認する。入力されたメッセージデータを確認すると、端末1Aはそのメッセージデータを送信先ユーザのIDとともにメッセンジャーサーバ3に送信する。メッセンジャーサーバ3は、端末1Aからメッセージを受信すると、送信先ユーザの端末1にメッセージデータを転送する。また、ステップS714において端末1Aは、他の端末1から発信されたメッセージデータがメッセンジャーサーバ3から転送されてきたか否かを確認する。メッセージの受信を確認したときは、端末1Aはそのメッセージデータをメッセンジャー画面60内に表示する。
さらに、端末1Aは現エリア定義データ更新処理を実行する(ステップS716)。この処理において端末1Aは、上述した現エリア定義データ(X,Y,R)がメッセンジャーサーバ3から送信されたか否かを確認する。この現エリア定義データは、上述したステップS768で送信される。端末1Aは、現エリア定義データの受信を確認すると、それをRAM12内の所定の領域に格納する。すでに現エリア定義データが格納されている場合は、その現エリア定義データを、受信した現エリア定義データで上書きする。
続いて、端末1Aは表記更新処理を実行する(ステップS717)。この処理において端末1Aは、メッセンジャーサーバ3から受信した表記データを用いてリストメンバウインドウ63内の自己表記68を更新する。これにより、最新の表記データが自己表記68としてリストメンバウインドウ63内に表示される。
この後、端末1Aは端末1Aの測位データをGPS衛星から取得し(ステップS718)、その測位データの示す位置が、RAM12に格納された現エリア定義データによって定まる現エリア内か否かを判定する(ステップS720)。
測位データの示す位置が現エリア内と判定されると(ステップS720にてYes)、端末1Aは終了命令が入力されたか否かを確認する(ステップS722)。終了命令の入力が確認されない場合(ステップS722にてNo)、端末1AはステップS712からステップS720までの処理を繰り返す。
端末1Aが現エリアの外に移動したときは、測位データの示す位置が現エリア内にないと判定される(ステップS720にてNo)。この場合、ステップS710に処理が戻り、表記作成要求がメッセンジャーサーバ3に再び送信される。それに応じてメッセンジャーサーバ3がステップS762〜S768を再び実行する。ステップS764では、端末1Aのエリア外への移動が、端末1Bおよび1Cへ同報されるエリア表記データに反映される。ステップS766では、新たなエリア表記を含む表記データが端末1Bおよび1Cに同報される。このようにして、端末1Aのエリア外への移動が検出され、それに応じて同報用のエリア表記データが変更される。測位データの示す位置が以前とは別の登録エリアに含まれる場合、ステップS768でそのエリアの定義データが端末1Aに送信され、それに応じてRAM12内の現エリア定義データが更新される(ステップS716)。
現エリア定義データが(0,0,0)のときも、測位データの示す位置が現エリア内にないと判定される(ステップS720にてNo)。このときは、所定時間の遅延の後、ステップS710に処理が戻る。遅延を与えることより、表記作成要求をメッセンジャーサーバ3に送信する頻度を少なくし、通信量を削減できる。表記作成要求に応じて、メッセンジャーサーバ3はステップS762〜S768を再び実行する。上述したように、(0,0,0)の現エリア定義データは、測位データの示す位置を含むエリアデータセット52が発見されないときに発生する。この場合、端末1が測位データをメッセンジャーサーバ3に繰り返し送信し、それに応じてメッセンジャーサーバ3が、その測位データの示す位置を含むエリアデータセット52の検索を繰り返すことになる。これにより、端末1が登録エリアの外から中に移動したときに、メッセンジャーサーバ3は、そのエリアに対応する表記データを取得して端末1Bおよび1Cに同報することができる。この結果、端末1Aのエリア内への移動が、端末1Bおよび1Cに表示されるエリア表記に反映される。
一方、終了命令の入力が確認されると(ステップS722にてYes)、端末1Aはログアウト処理を実行する(ステップS724)。この処理では、端末1Aはログアウト要求をメッセンジャーサーバ3に送信する。このログアウト要求にはユーザAのIDが含まれている。メッセンジャーサーバ3は、ログアウト要求を受信すると、端末1Aをサーバ3から切断するとともに、ユーザAのIDを含むコンタクトリストを有するオンラインユーザの端末1にオフライン情報を同報する。オフライン情報を受信した端末1は、リストメンバウインドウ26(図4を参照)を更新し、ユーザAの同報用表記データの表示位置をonline領域からoffline領域に移動する。
以下では、本実施形態の利点を説明する。メッセンジャーサービスシステム100では、通信端末1が位置するエリアの表記が他の通信端末1上に表示される。したがって、ユーザは他のユーザの居所をエリア表記から把握できる。これによりメッセンジャーサービスの利便性が高まる。例えば、居所に応じてメッセージ送信の是非を決めることができるので、送信相手の迷惑を避けることができる。このように、通信相手の位置情報が自動で公開されるので、ユーザの気遣いの負担が軽減される。
また、システム100では、ユーザが使用する通信端末1ではなく、メッセンジャーサーバ3が端末1の位置に応じたエリア表記データを決定し、同報用の表記データを作成する。エリア表記データを含むエリアテーブル50は、通信端末1の外部に設置された記憶装置、すなわちエリアデータベース5のハードディスクドライブ9に格納され、メッセンジャーサーバ3によって管理される。したがって、一人のユーザが複数の通信端末1を使い分けている場合でも、共通のエリアテーブルに基づいてエリア表記データが決定される。ユーザは端末ごとにエリアテーブルを作成および更新する必要がなく、使用する端末の違いを考慮する必要もない。この点もユーザにとって利便性が高い。
第2実施形態
以下では、本発明の第2の実施形態を説明する。本実施形態は、メッセンジャーサーバ3ではなく通信端末1が同報用の表記データを作成する点で第1実施形態と異なっている。メッセンジャーサービスシステム100の構成は、図1〜図3を参照して上述した通りである。また、メッセンジャーサービスの利用中に通信端末1の表示装置22に表示される画面は図4に示される通りである。
図8は、本実施形態のエリア登録処理を示すフローチャートである。第1実施形態と同様に、この処理は、ユーザが端末1の入力装置20を操作してエリア登録開始命令を入力すると開始する。まず、端末1は、エリアの定義および表記の入力を受け付ける(ステップS802)。ユーザは、端末1の入力装置20を操作して、登録しようとするエリアの定義データと、そのエリアの表記データを入力する(ステップS804)。定義データおよび表記データについては、第1実施形態で説明した通りである。
端末1は、定義データおよび表記データが入力されると、エリアテーブル更新処理を実行する(ステップS806)。この処理では、端末1は、エリアデータベース8にアクセスし、端末1を操作するユーザのIDに対応付けられたエリアテーブル50をデータベースサーバ8に検索させる。エリアテーブル50が発見されない場合、端末1は、入力された定義データおよび表記データを用いてエリアテーブル50を新規に作成する。エリアテーブル50が発見された場合は、そのエリアテーブル50をデータベースサーバ8から受信し、RAM12に格納する。続いて、端末1は、入力された定義データに基づいて、入力された定義データおよび表記データのエリアテーブル50への登録を許可するか否かを判断する。
具体的に述べると、端末1は、入力された定義データを、RAM32に読み込んだエリアテーブル50内で検索する。同じ定義データ(X,Y,R)を含むエリアデータセット52が発見されると、入力された表記データをそのエリアデータセット52内の表記データと比較する。両者が一致する場合、端末1は、入力された定義データおよび表記データをエリアテーブル50に登録することなく、それらのデータがすでに登録済みであることを示す文字列を表示する。このようにしてエリアデータセットの重複登録が回避される。入力された表記データがエリアデータセット52内の表記データと異なる場合、端末1は表記データの上書きの可否を問い合わせる文字列を表示する。上書き命令が端末1に入力されると、端末1は、エリアデータセット52内の表記データを、入力された表記データに更新する。このとき、端末1は、入力された定義データと同じ定義データを含むエリアデータセット52が複数存在するか否かを確認する。複数存在する場合、端末1は古い方のエリアデータセット52中の表記データを更新するか、あるいは古い方のエリアデータセット52を削除し、端末1から受信した定義データおよび表記データを含むエリアデータセット52を新たに登録する。
一方、入力された定義データがエリアテーブル50中のいずれのエリアデータセット52にも発見されない場合、端末1は、入力された定義データおよび表記データを新たなエリアデータセット52としてエリアテーブル50に追加する。第1実施形態と同様に、一つのユーザIDに対応付けられたエリアテーブル50におけるエリアデータセット52の最大登録数が決められていてもよい。この場合、最大登録数のエリアデータセット52がエリアテーブル50にすでに格納されていれば、端末1は、入力された定義データおよび表記データをエリアテーブル50に登録することなく、登録不可であることを示す文字列を表示する。
端末1は、このようにして更新したエリアテーブル50をストレージ部14、すなわち内蔵メモリ14aまたは外付けメモリ15に記憶する(ステップS808)。また、端末1は、そのエリアテーブル50をユーザIDとともにデータベースサーバ8に送信する(ステップS810)。データベースサーバ8は、そのエリアテーブル50およびユーザIDを受信し(ステップS812)、エリアテーブル更新処理を実行する(ステップS814)。具体的には、データベースサーバ8は、受信したユーザIDに対応付けられたエリアデータベース5内のエリアテーブル50を、受信したエリアテーブル50で上書きする。こうして、端末1によるエリアテーブル50の変更がエリアデータベース5に反映される。
なお、端末1は、エリアテーブル50の記憶(ステップS808)とエリアテーブルの送信(ステップS810)を、図8に示される順序と逆の順序で実行してもよい。また、これらの処理を並列に実行してもよい。
以下では、図9を参照しながら、通信端末1がメッセンジャーサーバ3にログインしてからログアウトするまでにシステム100で実行される各種の処理を第1実施形態との相違点を中心に説明する。図9は、これらの処理を示すフローチャートである。第1実施形態と同様に、以下では、メッセンジャーサーバ3にログインする通信端末1を操作するユーザを「ユーザA」と表記する。ユーザAのコンタクトリストには、ユーザBおよびCが含まれているものとする。ユーザA、BおよびCの操作する通信端末1をそれぞれ「端末1A」、「端末1B」および「端末1C」と表記する。
ユーザAが端末1A上でメッセンジャープログラムを起動すると、端末1Aは、自動的に、あるいは入力装置20を用いた端末1Aへの命令の入力に応答して、メッセンジャーサーバ3へログイン要求を送信し(ステップS902)、以下、第1実施形態と同様の処理が実行される(ステップS952〜S956およびS904〜S908)。端末1Aは、メッセンジャーサーバ3から認証成功通知を受信すると(ステップS906にてYes)、GPS受信機18を用いて端末1Aの測位データを取得する(ステップS908)。この測位データは、端末1Aの位置を示す一対の緯度データおよび経度データを含んでおり、RAM12に格納される。
次に、端末1Aは、この測位データを用いて表記データを作成する(ステップS909)。端末1Aは、データベースサーバ8にアクセスし、ユーザAのIDに対応付けられたエリアテーブル50をエリアデータベース5から取得して、RAM12に格納する。端末1Aは、測位データの示す位置が、そのエリアテーブル50中のいずれかのエリアデータセット52によって定義されるエリア内に含まれているか否かを判定する。端末1Aは、測位データの示す位置を含む定義データを有するエリアデータセット52をエリアテーブル50内に発見すると、そのエリアデータセット52に含まれるエリアの表記データを用いて「(ユーザ登録名)@(エリア表記)」の文字列を作成する。ユーザ登録名データは、ユーザ登録処理の際にストレージ部14に記憶されており、メッセンジャープログラムの起動時にストレージ部14からRAM12に読み込まれる。端末1Aは、その登録名データおよび「@」のキャラクタコードにエリア表記データを付加し、上記の文字列を作成する。この文字列が、ユーザAのコンタクトリストメンバの端末1に同報される表記データである。一方、測位データの示す位置を含む定義データを有するエリアデータセット52がエリアテーブル50内に発見されない場合、エリアの表記データは空白とされる。すなわち、端末1Aは、「(ユーザ登録名)@」の文字列を同報用の表記データとして作成する。
同報用の表記データを作成した後、端末1Aは、メッセンジャーサーバ3に同報要求を送信し、表記データの同報をメッセンジャーサーバ3に依頼する(ステップS910)。同報要求には、端末1Aが作成した表記データと、ユーザAのIDが含まれる。メッセンジャーサーバ3は、同報要求を受信すると(ステップS962)、ユーザAのコンタクトリストメンバにユーザAのオンライン情報を同報する(ステップS964)。メッセンジャーサーバ3は、同報要求に含まれるユーザAのIDに対応付けられたコンタクトリストをRAM32内で検索し、そのコンタクトリストに登録されたユーザAのコンタクトリストメンバ(この例ではユーザBおよびC)のIDを取得する。メッセンジャーサーバ3は、こうして取得したIDを用いてメッセンジャーサーバ3にログインしている端末1Bおよび1Cを特定し、それらの端末1Bおよび1CにユーザAのオンライン情報を同報する。このオンライン情報には、ユーザAのIDおよびログイン通知に加えて、端末1Aから送信された表記データが含まれる。なお、上述のように、ログイン通知は、端末1Aがメッセンジャーサーバ3にログインしていることを示すデータである。
端末1Bおよび1Cは、オンライン情報を受信すると(ステップS972)、メッセンジャー画面60中のリストメンバウインドウ26における「online」領域に、オンライン情報に含まれる表記データを表示する(ステップS974)。このようにして、あるユーザの端末の位置を示すエリア表記66が、そのユーザのコンタクトリストメンバの端末上に表示される。なお、端末1Bおよび1Cは、端末1Aと同じメッセンジャープログラムを実行しており、したがって端末1Aと同じ処理フローを実行するが、図9には、簡単のため、メッセンジャーサーバ3からのオンライン情報の受信に応じた処理のみが示されている。
端末1Aは、同報要求の送信(ステップS910)の後、第1実施形態と同様に、コンタクトリストメンバ状態更新処理(ステップS912)およびメッセージ処理(ステップS914)を実行する。さらに、端末1Aは、現エリア定義データ更新処理を実行する(ステップS916)。端末1Aは、最新の測位データとエリアテーブル50を参照して、端末1Aが現在位置するエリアの定義データ(X,Y,R)を特定し、それをRAM12内の所定の領域に格納する。すでに現エリア定義データ(X,Y,R)が格納されている場合は、その現エリア定義データが新たな現エリア定義データによって上書きされる。
続いて、端末1Aは表記更新処理を実行する(ステップS917)。この処理において端末1Aは、ステップS909で作成された表記データを用いてリストメンバウインドウ63内の自己表記68を更新する。これにより、最新の表記データが自己表記68としてリストメンバウインドウ63内に表示される。
この後、端末1Aは端末1Aの測位データをGPS衛星から取得し(ステップS918)、その測位データの示す位置が、RAM12に格納された現エリア定義データによって定まる現エリア内か否かを判定する(ステップS920)。
測位データの示す位置が現エリア内と判定されると(ステップS920にてYes)、端末1Aは終了命令が入力されたか否かを確認する(ステップS922)。終了命令の入力が確認されない場合(ステップS922にてNo)、端末1AはステップS912からステップS920までの処理を繰り返す。
端末1Aが現エリアの外に移動したときは、測位データの示す位置が現エリア内にないと判定される(ステップS920にてNo)。この場合、ステップS909に処理が戻り、同報用の表記データが再び作成される。端末1Aのエリア外への移動は、ここで作成される表記データ中のエリア表記に反映される。この後、メッセンジャーサーバ3に同報要求が送信され(ステップS910)、新たなエリア表記を含む表記データが端末1Bおよび1Cに同報される(ステップS964)。
現エリア定義データが(0,0,0)のときも、測位データの示す位置が現エリア内にないと判定され(ステップS920にてNo)、ステップS909に処理が戻り、表記データが作成される。上述したように、(0,0,0)の現エリア定義データは、測位データの示す位置を含むエリアデータセット52が発見されないときに発生する。この場合、端末1Aは、「(ユーザ登録名)@」の文字列を同報用の表記データとして作成する。
一方、終了命令の入力が確認されると(ステップS922にてYes)、端末1Aはログアウト処理を実行する(ステップS924)。ログアウト処理の詳細は第1実施形態で説明した通りである。
本実施形態でも、第1実施形態と同様に、ユーザは他のユーザの居所をエリア表記から把握できるので、メッセンジャーサービスの利便性が高まる。また、エリアテーブル50が、通信端末1の外部に設置された記憶装置、すなわちエリアデータベース5のハードディスクドライブ9に格納されており、端末1はそのエリアテーブル50を用いて同報用の表記データを作成する。このため、一人のユーザが複数の通信端末1を使い分けている場合でも、共通のエリアテーブルに基づいてエリア表記データが決定される。ユーザは端末ごとにエリアテーブルを作成および更新する必要がなく、使用する端末の違いを考慮する必要もない。この点もユーザにとって利便性が高い。さらに、本実施形態では、端末1が同報用の表記データを作成するので、メッセンジャーサーバ3の負荷を軽減することができる。
第3実施形態
以下では、本発明の第3の実施形態を説明する。本実施形態は、メッセンジャーサーバ3が通信端末1に表記データを同報するのではなく、メッセンジャーサービス3が個々の通信端末1によるポーリングに応答して表記データを通信端末1に送信する点で第1実施形態と異なっている。また、本実施形態においては、各ユーザのコンタクトリストには、当該ユーザにとって、状況を通知して欲しい他のユーザがコンタクトリストメンバとして含まれている。メッセンジャーサービスシステム100の構成は、図1〜図3を参照して上述した通りである。また、メッセンジャーサービスの利用中に通信端末1の表示装置22に表示される画面は図4に示される通りである。エリア登録処理は図5に示される通りである。
以下では、図10および図11を参照しながら、通信端末1がメッセンジャーサーバ3にログインしてからログアウトするまでにシステム100で実行される各種の処理を第1実施形態との相違点を中心に説明する。図10および図11は、これらの処理を示すフローチャートである。第1実施形態と同様に、以下では、メッセンジャーサーバ3にログインする通信端末1を操作するユーザを「ユーザA」と表記する。ユーザAのコンタクトリストにはユーザBおよびCが含まれ、ユーザBのコンタクトリストにはユーザAおよびCが含まれているものとする。ユーザA、BおよびCの操作する通信端末1をそれぞれ「端末1A」、「端末1B」および「端末1C」と表記する。
ユーザAが端末1A上でメッセンジャープログラムを起動すると、端末1Aは、自動的に、あるいは入力装置20を用いた端末1Aへの命令の入力に応答して、メッセンジャーサーバ3へログイン要求を送信し(ステップS1002)、以下、第1実施形態と同様の処理が実行される(ステップS1052〜S1056およびS1004〜S1008)。端末1Aは、メッセンジャーサーバ3から認証成功通知を受信すると(ステップS1006にてYes)、GPS受信機18を用いて端末1Aの測位データを取得する(ステップS1008)。この測位データは、端末1Aの位置を示す一対の緯度データおよび経度データを含んでおり、RAM12に格納される。
この後、端末1Aは、ユーザAをコンタクトリストメンバとしているユーザの端末1に送信される表記データの作成要求をメッセンジャーサーバ3に送信する(ステップS1010)。これに応じて、メッセンジャーサーバ3は、第1実施形態と同様にして表記データを作成する(ステップS1062およびS1064)。
メッセンジャーサーバ3は、作成した表記データを図12に示される表記テーブル70内に格納する(ステップS1066)。表記テーブル70は、メッセンジャーサーバ3のRAM32内に作成され、個々のユーザIDごとに表記データとコンタクトリストへのポインタを格納している。図12では、ユーザA、BおよびCのIDをそれぞれ「ID」、「ID」および「ID」と表記し、ユーザA、BおよびCのコンタクトリストへのポインタをそれぞれ「P」、「P」および「P」と表記する。オフライン状態のユーザの「表記データ」フィールドには、NULLデータが格納されていてもよい。図13に示されるように、各ユーザのコンタクトリスト72はRAM32内の所定の位置に記憶されている。表記テーブル70内のポインタは、RAM32におけるコンタクトリストの記憶位置(ロケーション)を示す。図13では、ユーザAおよびBのコンタクトリスト72をそれぞれ「コンタクトリスト72A」および「コンタクトリスト72B」と表記する。各ユーザのコンタクトリスト72には、そのユーザのコンタクトリストメンバのIDが格納されている。コンタクトリスト72に登録可能なメンバの数には上限が設けられていてもよい。コンタクトリスト72内においてメンバのIDが登録されていない領域には、NULLデータが格納される。
図12に示されるように、作成されたユーザAの表記データは、表記テーブル70内においてIDに対応付けられた「表記データ」フィールドに格納される。そのフィールドに表記データがすでに格納されている場合は、その表記データが新たに作成された表記データによって上書きされる。
この後、メッセンジャーサーバ3は、端末1Aが現在位置するエリアの定義データ(X,Y,R)と、ステップS1064で作成された表記データを端末1Aに送信する(ステップS1068)。なお、メッセンジャーサーバ3は、表記データの格納(ステップS1066)と現エリア定義データおよび表記データの送信(ステップS1068)を、図10に示される順序と逆の順序で実行してもよい。また、これらの処理を並列に実行してもよい。
以下では、図11を参照しながら、表記テーブル70に格納されたユーザAの表記データを他のユーザの端末1に送信する処理を説明する。メッセンジャーサーバ3は、ユーザAをコンタクトリストに登録しているユーザの端末1によるポーリングに応答して、その端末1にユーザAの表記データを送信する。例えば、ユーザBは自身のコンタクトリス72BにユーザAを登録している。したがって、メッセンジャーサーバ3は、端末1Bによるポーリングに応答して、ユーザAの表記データを端末1Bに送信する。
具体的に説明すると、図11に示されるように、端末1Bは、メッセンジャーサーバ3に対してポーリングを行う(ステップS1102)。このポーリングは、端末1Bへの送信データがあるか否かをメッセンジャーサーバ3に照会する処理である。送信データとしては、ユーザBのコンタクトリストメンバ(例えばユーザA)の表記データや、他のユーザからユーザBに宛てて発信されたメッセージデータが挙げられる。ポーリングの際、端末1Bはメッセンジャーサーバ3にユーザBのIDを送信する。図10を参照して後述するように、このポーリングは適当な時間間隔で繰り返し実行される。なお、端末1Bは、端末1Aと同じメッセンジャープログラムを実行しており、したがって端末1Aと同じ処理フローを実行するが、簡単のため、図11は、一回のポーリングに応じて表記データを送受信する処理のみを示している。
メッセンジャーサーバ3は、端末1Bによるポーリングに応答して、ユーザBのID、すなわちIDに対応付けられたコンタクトリスト72Bを読み取る(ステップS1152)。具体的に述べると、メッセンジャーサーバ3は、まず、表記テーブル70を参照し、IDに対応付けられたポインタPを読み取る。このポインタPは、ユーザBのコンタクトリスト72Bの記憶位置を示している。メッセンジャーサーバ3は、ポインタPにしたがってコンタクトリスト72Bを参照する。コンタクトリスト72Bには、ユーザBが自身のコンタクトリストメンバとして登録したユーザのIDが格納されている。上述のように、本例では、コンタクトリスト72BにユーザAのID、すなわちIDが格納されている。
メッセンジャーサーバ3は、コンタクトリスト72B中のIDを順次に読み取り、各IDに対応付けられた表記データを表記テーブル70内で検索する(ステップS1154)。この結果、メッセンジャーサーバ3は、ユーザBのコンタクトリストメンバのうちオンライン状態にあるすべてのメンバの表記データを取得する。このメンバには、ユーザAも含まれる。
続いて、メッセンジャーサーバ3は、表記テーブル70から検索された表記データをコンタクトリストメンバのIDに対応付けて端末1Bに送信する(ステップS1156)。端末1Bは、コンタクトリストメンバの表記データを受信すると(ステップS1104)、メッセンジャー画面60中のリストメンバウインドウ26における「online」領域にその受信した表記データを表示する(ステップS1106)。このようにして、ユーザAの端末1Aの位置を示すエリア表記が、ユーザAをコンタクトリストメンバに登録しているユーザBの端末1B上に表示される。
再び図10を参照する。端末1Aは、表記作成要求の送信(ステップS1010)の後、メッセンジャーサーバ3に対してポーリングを行う(ステップS1011)。このポーリングは、図11に示されるポーリング(ステップS1102)に対応する。上述のように、メッセンジャーサーバ3は、このポーリングに応答して、オンライン状態にあるユーザAのコンタクトリスメンバ(例えばユーザBおよびC)の表記データを端末1Aに送信する。また、ユーザAのコンタクトリストメンバの端末1がメッセンジャーサーバ3に対してログインまたはログアウトした場合は、メッセンジャーサーバ3は、端末1Aによるポーリングに応答して、端末1Aにオンライン情報またはオフライン情報を送信する。オンライン情報にはログインしたユーザのIDが含まれ、オフライン情報にはログアウトしたユーザのIDが含まれている。
端末1Aは、受信した表記データ、オンライン情報およびオフライン情報を用いて、第1実施形態と同様にコンタクトリストメンバ状態更新処理を実行する(ステップS1012)。端末1Aは、オンライン情報またはオフライン情報を受信すると、それらの情報に含まれるユーザIDに対応付けられた状態データを更新する。この状態データは、コンタクトリストメンバの各々に対してRAM12内に設けられる。状態データは、オンライン情報の受信に応答してログインを示すデータに書き換えられ、オフライン情報の受信に応答してログアウトを示すデータに書き換えられる。また、オンライン情報およびオフライン情報を受信しないときは、状態データは更新されない。さらに、端末1Aは、コンタクトリストメンバの状態データに応じてリストメンバウインドウ26(図4を参照)内のonline領域またはoffline領域に表記データ(「DDD@home」など)を表示する。これは、端末1Bについて上述したステップS1106に対応する。
端末1Aはメッセージ処理も実行する(ステップS1014)。この処理において端末1Aは、入力装置20を用いたメッセージデータの入力の有無を確認する。入力されたメッセージデータを確認すると、端末1Aはそのメッセージデータを宛先ユーザのIDとともにメッセンジャーサーバ3に送信する。メッセンジャーサーバ3は、端末1Aからメッセージデータを受信すると、宛先ユーザの端末1にそのメッセージデータを転送する。この転送は、宛先ユーザの端末1によるポーリング(ステップS1011)に応答して実行されてもよい。ステップS1014において端末1Aは、他の端末1から発信されたメッセージデータがメッセンジャーサーバ3から転送されてきたか否かを確認する。メッセージデータの受信を確認したときは、端末1Aはそのメッセージデータをメッセンジャー画面60内に表示する。
さらに、端末1Aは、第1実施形態と同様に、ステップS1068で送信された現エリア定義データおよび表記データを用いて、現エリア定義データ更新処理(ステップS1016)および表記更新処理を実行する(ステップS1017)。この後、端末1Aは端末1Aの測位データをGPS衛星から取得し(ステップS1018)、その測位データの示す位置が、RAM12に格納された現エリア定義データによって定まる現エリア内か否かを判定する(ステップS1020)。測位データの示す位置が現エリア内と判定されると(ステップS1020にてYes)、端末1Aは終了命令が入力されたか否かを確認する(ステップS1022)。終了命令の入力が確認されない場合(ステップS1022にてNo)、端末1AはステップS1011からステップS1020までの処理を繰り返す。
端末1Aが現エリアの外に移動したときは、測位データの示す位置が現エリア内にないと判定される(ステップS1020にてNo)。この場合、ステップS1010に処理が戻り、表記作成要求がメッセンジャーサーバ3に再び送信される。それに応じてメッセンジャーサーバ3がステップS1062〜S1068を再び実行する。ステップS1064では、端末1Aのエリア外への移動が、ユーザAのエリア表記データに反映される。ステップS1066では、新たなエリア表記を含む表記データによって表記テーブル70の対応する「表記データ」フィールドが更新される。このようにして、端末1Aのエリア外への移動が検出され、それに応じてエリア表記データが変更される。測位データの示す位置が以前とは別の登録エリアに含まれる場合、ステップS1068でそのエリアの定義データが端末1Aに送信され、それに応じてRAM12内の現エリア定義データが更新される(ステップS1016)。また、ステップS1068では、新たなエリア表記を含む表記データも端末1Aに送信され、端末1Aはその表記データを用いて自己表記68を更新する(ステップS1017)。
現エリア定義データが(0,0,0)のときも、測位データの示す位置が現エリア内にないと判定され(ステップS1020にてNo)、ステップS1010に処理が戻り、表記作成要求がメッセンジャーサーバ3に送信される。上述したように、(0,0,0)の現エリア定義データは、測位データの示す位置を含むエリアデータセット52が発見されないときに発生する。この場合、メッセンジャーサーバ3は、「(ユーザ登録名)@」の文字列をユーザAの表記データとして作成する。
一方、終了命令の入力が確認されると(ステップS1022にてYes)、端末1Aはログアウト処理を実行する(ステップS1024)。この処理では、端末1Aはログアウト要求をメッセンジャーサーバ3に送信する。このログアウト要求にはユーザAのIDが含まれている。メッセンジャーサーバ3は、ログアウト要求を受信すると、端末1Aをサーバ3から切断するとともに、表記テーブル70内のIDに対応付けられた表記データをNULLデータに変更する。この後、メッセンジャーサーバ3は、ユーザAをコンタクトリストメンバに登録しているユーザの端末1によるポーリングに応答して、端末1Aのオフライン情報をその端末1に送信する。
本実施形態でも、第1実施形態と同様に、ユーザは他のユーザの居所をエリア表記から把握できるので、メッセンジャーサービスの利便性が高まる。また、エリアテーブル50が、通信端末1の外部に設置された記憶装置、すなわちエリアデータベース5のハードディスクドライブ9に格納されており、端末1はそのエリアテーブル50を用いて表記データを作成する。このため、一人のユーザが複数の通信端末1を使い分けている場合でも、共通のエリアテーブルに基づいてエリア表記データが決定される。ユーザは端末ごとにエリアテーブルを作成および更新する必要がなく、使用する端末の違いを考慮する必要もない。この点もユーザにとって利便性が高い。
以上、本発明をその実施形態に基づいて詳細に説明した。しかし、本発明は上記実施形態に限定されるものではない。本発明は、その要旨を逸脱しない範囲で様々な変形が可能である。
上記実施形態では、衛星測位システムとしてGPSを利用し、GPS衛星から通信端末1の測位データを取得する。しかし、通信端末1は、他の衛星測位システムの測位衛星から通信端末1の測位データを取得してもよい。さらに、通信端末1は、衛星測位システム以外の手段を用いて自身の位置データを取得してもよい。例えば、通信端末1が携帯電話機の場合、通信端末1は基地局から自身の位置データを取得してもよい。
上記実施形態では、エリア表記データにユーザ登録名データが付加された同報用表記データが単一のデータとして通信端末1に送信される。しかし、ユーザ登録名データおよびエリア表記データが個別に端末1に送信されてもよい。また、同報用表記データの作成にあたっては、ユーザの登録名を示す文字列の代わりに、ユーザを表記する他のデータ(例えば画像)を使用してもよい。
上記実施形態では、メッセンジャー画面60においてユーザ登録名とエリア表記との間に「@」が表示される。しかし、ユーザ登録名とエリア表記を区別するために、他の標識、たとえば「/」や「,」を使用してもよい。また、エリア表記を「()」で括り、ユーザ登録名に続けて表示してもよい。
通信端末1は、コンタクトリストメンバ状態更新処理(ステップS712)、メッセージ処理(ステップS714)および現エリア定義データ更新処理(ステップS716)を任意の順序で実行することができる。
通信端末1は、メッセンジャーサーバ3へログインしたときに、ユーザIDに対応付けられたエリアテーブル50をメッセンジャーサーバ3から受信し、RAM12またはストレージ部14に保存してもよい。エリアテーブル50を用いることで、端末1は自身のエリア内外への移動を検出することができる。例えば、端末1は、測位データを繰り返し取得しながら、測位データの示す位置を含むエリアデータセットをエリアテーブル50内で検索し、そのようなエリアデータセットを発見したときに、表記作成要求をメッセンジャーサーバ3へ送信してもよい。メッセンジャーサーバ3は、端末1のログイン認証に成功したときに、エリアデータベース5にアクセスし、端末1から送信されたユーザIDに対応付けられたエリアテーブル50を取得し、同じ端末1に返信してもよい。また、端末1の入力装置20を操作してエリアテーブル50を編集できるようになっていてもよい。端末1は、ログアウト処理においてエリアテーブル50をメッセンジャーサーバ3へ送信してもよい。この場合、メッセンジャーサーバ3は、端末1から受信したユーザIDに対応付けられたエリアデータベース5内のエリアテーブル50を、端末1から受信したエリアテーブル50に更新する。これにより、端末1上でのエリアテーブル50の変更がエリアデータベース5に反映される。
第3実施形態では、メッセンジャーサーバ3が表記データを作成するが、この代わりに、第2実施形態のように通信端末1が表記データを作成してもよい。また、第3実施形態と同様に、第1実施形態でも、メッセンジャーサーバ3は、作成した表記データを表記テーブル70内に格納してもよい。第2実施形態では、メッセンジャーサーバ3が表記データを端末1に同報するが、その代わりに、第3実施形態と同様に、メッセンジャーサーバ3が端末1によるポーリングに応答して表記データをその端末1に送信してもよい。
メッセンジャーサービスシステムの構成を示す概略図である。 通信端末の構成を概略的に示すブロック図である メッセンジャーサーバの構成を概略的に示すブロック図である。 メッセンジャー画面を示す概略図である。 エリア登録処理を示すフローチャートである。 エリアテーブルの構成を示す図である。 通信端末のログインからログアウトまでに実行される各種の処理を示すフローチャートである。 エリア登録処理を示すフローチャートである。 通信端末のログインからログアウトまでに実行される各種の処理を示すフローチャートである。 通信端末のログインからログアウトまでに実行される各種の処理を示すフローチャートである。 ポーリングに応じた処理を示すフローチャートである。 表記テーブルを示す概略図である。 コンタクトリストを示す概略図である。
符号の説明
1…通信端末、2…通信ネットワーク、3…メッセンジャーサーバ、4…認証データベース、5…エリアデータベース、6および8…データベースサーバ、7および9…ハードディスクドライブ、50…エリアテーブル、52…エリアデータセット、60…メッセンジャー画面、66および67…エリア表記、68…自己表記、70…表記テーブル、72…コンタクトリスト72。

Claims (23)

  1. 複数の通信端末と、
    一の前記通信端末に入力されたメッセージデータを他の前記通信端末に転送するメッセンジャーサーバと、
    所定のエリアの定義データおよびそのエリアの表記データを有するエリアデータセットをユーザIDに対応付けて格納する第1の記憶手段と
    を備えるメッセンジャーサービスシステムであって、
    前記通信端末の各々は、自身の位置データを取得する手段と、前記メッセンジャーサーバから前記エリアの表記データを受信したときにその表記データを表示する手段とを有しており、
    前記メッセンジャーサーバは、第1の前記通信端末の位置データおよび第1の前記ユーザIDを前記第1通信端末から受信すると、受信した第1ユーザIDに対応付けられた前記エリアデータセットを前記第1の記憶手段内で検索し、受信した位置データの示す位置を含む定義データを有する前記エリアデータセットを発見すると、そのエリアデータセット中の前記エリアの表記データを第2の前記通信端末に送信する、
    メッセンジャーサービスシステム。
  2. 前記第1通信端末は、前記第1通信端末への命令の入力に応じて、前記第1ユーザIDを用いて前記メッセンジャーサーバへのログインを試み、ログインに成功したときに、前記第1通信端末の位置データを取得し、前記第1ユーザIDとともに前記メッセンジャーサーバへ送信する、請求項1に記載のメッセンジャーサービスシステム。
  3. 前記メッセンジャーサーバは、前記位置データの示す位置を含む定義データを有する前記エリアデータセットを発見すると、そのエリアデータセット中の前記定義データを前記第1通信端末へ送信し、
    前記第1通信端末は、前記第1通信端末の位置データを繰り返し取得し、前記メッセンジャーサーバから受信した前記定義データによって定義されるエリアの外の位置を示す位置データを取得すると、その位置データを前記第1ユーザIDとともに前記メッセンジャーサーバに送信する、
    請求項1または2に記載のメッセンジャーサービスシステム。
  4. 前記通信端末を操作するユーザの表記データを前記ユーザIDに対応付けて格納する第2の記憶手段をさらに備え、
    前記メッセンジャーサーバは、前記位置データの示す位置を含む定義データを有する前記エリアデータセットを発見すると、前記第1ユーザIDに対応付けられた前記ユーザ表記データを前記第2記憶手段から読み取り、発見されたエリアデータセット中のエリア表記データに前記ユーザ表記データを付加したデータを作成し、作成されたデータを前記第2通信端末に送信し、
    前記第2通信端末は、前記作成されたデータを受信して表示する、
    請求項1〜3のいずれかに記載のメッセンジャーサービスシステム。
  5. 前記通信端末の各々は、前記通信端末の各々への前記エリアデータセットの入力に応答して、そのエリアデータセットおよび前記ユーザIDを前記メッセンジャーサーバへ送信し、
    前記メッセンジャーサーバは、前記通信端末から受信した前記エリアデータセットを、同じ前記通信端末から受信した前記ユーザIDに対応付けて前記第1記憶手段に格納する、
    請求項1〜4のいずれかに記載のメッセンジャーサービスシステム。
  6. 一つの前記ユーザIDに対応付けられ、他の一つ以上の前記ユーザIDを格納するユーザIDリストを一つ以上記憶するリスト記憶手段をさらに備え、
    前記通信端末の各々は、前記通信端末への命令の入力に応じて、前記ユーザIDを用いて前記メッセンジャーサーバへのログインを試み、
    前記第2通信端末は、前記第1ユーザIDに対応付けられた前記ユーザIDリストに格納されたユーザIDを用いて前記メッセンジャーサーバにログインした前記通信端末であり、
    前記メッセンジャーサーバは、前記位置データの示す位置を含む定義データを有する前記エリアデータセットを発見すると、前記第1ユーザIDに対応付けられた前記ユーザIDリストを参照し、そのユーザIDリストに格納された前記一つ以上のユーザIDを読み取り、その読み取ったユーザIDを用いて前記メッセンジャーサーバにログインした前記第2通信端末に、前記エリアデータセット中の前記エリアの表記データを送信する、
    請求項1〜5のいずれかに記載のメッセンジャーサービスシステム。
  7. 前記メッセンジャーサーバは、前記エリアデータセットを発見した後、前記第2通信端末によるポーリングに応答して、そのエリアデータセット中の前記エリアの表記データを前記第2通信端末に送信する、請求項1〜5のいずれかに記載のメッセンジャーサービスシステム。
  8. 一つの前記ユーザIDに対応付けられ、他の一つ以上の前記ユーザIDを格納するユーザIDリストを一つ以上記憶するリスト記憶手段をさらに備え、
    前記第2通信端末は、第2の前記ユーザIDを前記メッセンジャーサーバに送信して前記ポーリングを実行し、
    前記メッセンジャーサーバは、前記ポーリングに応答して、前記第2ユーザIDに対応付けられた前記ユーザIDリスト内で前記第1ユーザIDを検索し、前記第1ユーザIDを発見したときに、前記エリアの表記データを前記第2通信端末に送信する、
    請求項7に記載のメッセンジャーサービスシステム。
  9. 複数の通信端末間でメッセージの交換を行うメッセンジャーサービスシステム内に設置され、一の前記通信端末に入力されたメッセージデータを他の前記通信端末に転送するメッセンジャーサーバであって、
    前記メッセンジャーサービスシステムは、所定のエリアの定義データおよびそのエリアの表記データを有するエリアデータセットをユーザIDに対応付けて格納する第1の記憶手段をさらに有しており、
    前記通信端末の各々は、自身の位置データを取得する手段と、前記メッセンジャーサーバから前記エリアの表記データを受信したときにその表記データを表示する手段とを有しており、
    第1の前記通信端末の位置データおよび第1の前記ユーザIDを前記第1通信端末から受信すると、受信した第1ユーザIDに対応付けられた前記エリアデータセットを検索する手段と、
    受信した位置データの示す位置を含む定義データを有する前記エリアデータセットを発見すると、そのエリアデータセット中の前記エリアの表記データを第2の前記通信端末に送信する手段と、
    を備えるメッセンジャーサーバ。
  10. 前記位置データの示す位置を含む定義データを有する前記エリアデータセットを発見すると、そのエリアデータセット中の前記定義データを前記第1通信端末へ送信する手段を更に備える、請求項9に記載のメッセンジャーサーバ。
  11. 前記メッセンジャーサービスシステムは、前記通信端末を操作するユーザの表記データを前記ユーザIDに対応付けて格納する第2の記憶手段をさらに備えており、
    前記表記データを前記第2通信端末に送信する手段は、前記位置データの示す位置を含む定義データを有する前記エリアデータセットを発見すると、前記第1ユーザIDに対応付けられた前記ユーザ表記データを前記第2記憶手段から読み取り、発見されたエリアデータセット中のエリア表記データに前記ユーザ表記データを付加したデータを作成し、作成されたデータを前記第2通信端末に送信する、
    請求項9または10に記載のメッセンジャーサーバ。
  12. 前記通信端末から前記エリアデータセットおよび前記ユーザIDを受信すると、受信したエリアデータセットを受信したユーザIDに対応付けて前記第1記憶手段に格納する手段を更に備える請求項9〜11のいずれかに記載のメッセンジャーサーバ。
  13. 複数の通信端末と、一の前記通信端末に入力されたメッセージデータを他の前記通信端末に転送するメッセンジャーサーバと、所定のエリアの定義データおよびそのエリアの表記データを有するエリアデータセットをユーザIDに対応付けて格納する第1の記憶手段とを備えるメッセンジャーサービスシステムを制御する方法であって、
    前記通信端末の各々は、自身の位置データを取得する手段と、前記メッセンジャーサーバから前記エリアの表記データを受信したときにその表記データを表示する手段とを有しており、
    前記メッセンジャーサーバが、第1の前記通信端末の位置データおよび第1の前記ユーザIDを前記第1通信端末から受信すると、受信した第1ユーザIDに対応付けられた前記エリアデータセットを前記第1の記憶手段内で検索するステップと、
    前記メッセンジャーサーバが、受信した位置データの示す位置を含む定義データを有する前記エリアデータセットを発見すると、そのエリアデータセット中の前記エリアの表記データを第2の前記通信端末に送信するステップと
    を備える方法。
  14. 複数の通信端末間でメッセージの交換を行うメッセンジャーサービスシステム内に設置され、一の前記通信端末に入力されたメッセージデータを他の前記通信端末に転送するメッセンジャーサーバを制御するプログラムであって、
    前記メッセンジャーサービスシステムは、所定のエリアの定義データおよびそのエリアの表記データを有するエリアデータセットをユーザIDに対応付けて格納する第1の記憶手段をさらに有しており、
    前記通信端末の各々は、自身の位置データを取得する手段と、前記メッセンジャーサーバから前記エリアの表記データを受信したときにその表記データを表示する手段とを有しており、
    第1の前記通信端末の位置データおよび第1の前記ユーザIDを前記第1通信端末から受信すると、受信した第1ユーザIDに対応付けられた前記エリアデータセットを前記第1の記憶手段内で検索するステップと、
    受信した位置データの示す位置を含む定義データを有する前記エリアデータセットを発見すると、そのエリアデータセット中の前記エリアの表記データを第2の前記通信端末に送信するステップと、
    を前記メッセンジャーサーバに実行させるプログラム。
  15. 複数の通信端末と、
    一の前記通信端末に入力されたメッセージデータを他の前記通信端末に転送するメッセンジャーサーバと、
    所定のエリアの定義データおよびそのエリアの表記データを有するエリアデータセットをユーザIDに対応付けて格納する第1の記憶手段と
    を備えるメッセンジャーサービスシステムであって、
    前記通信端末の各々は、自身の位置データを取得する手段と、前記メッセンジャーサーバから前記エリアの表記データを受信したときにその表記データを表示する手段と、第2の記憶手段とを有しており、
    第1の前記通信端末は、自身の位置データを取得するとともに、第1の前記ユーザIDに対応付けられた前記エリアデータセットを前記第1の記憶手段から前記第2の記憶手段に読み込み、前記自身の位置データの示す位置を含む定義データを有する前記エリアデータセットを前記第2の記憶手段内で検索し、そのエリアデータセットを発見すると、そのエリアデータセット中の前記エリアの表記データを前記第1ユーザIDとともに前記メッセンジャーサーバに送信し、
    前記メッセンジャーサーバは、前記エリアの表記データおよび前記第1ユーザIDを前記第1通信端末から受信して、第2の前記通信端末に送信する、
    メッセンジャーサービスシステム。
  16. 前記第1通信端末は、前記第1通信端末への命令の入力に応じて、前記第1ユーザIDを用いて前記メッセンジャーサーバへのログインを試み、ログインに成功したときに、前記自身の位置データを取得する、請求項15に記載のメッセンジャーサービスシステム。
  17. 前記第1通信端末は、自身の位置データの示す位置を含む定義データを有する前記エリアデータセットを発見した後、自身の位置データを繰り返し取得し、発見されたエリアデータセット中の定義データによって定義されるエリアの外の位置を示す位置データを取得すると、その取得した位置データの示す位置を含む定義データを有する前記エリアデータセットを前記第2の記憶手段内で検索し、そのエリアデータセットを発見すると、そのエリアデータセット中のエリアの表記データを前記第1ユーザIDとともに前記メッセンジャーサーバに再送信し、
    前記メッセンジャーサーバは、再送信された前記エリアの表記データおよび前記第1ユーザIDを前記第1通信端末から受信して、前記第2通信端末に送信する、
    請求項15または16に記載のメッセンジャーサービスシステム。
  18. 前記通信端末の各々は、前記通信端末を操作するユーザの表記データを前記ユーザIDに対応付けて格納する第3の記憶手段をさらに備えており、
    前記第1通信端末は、前記自身の位置データの示す位置を含む定義データを有する前記エリアデータセットを発見すると、前記第1ユーザIDに対応付けられた前記ユーザ表記データを前記第3記憶手段から読み取り、発見されたエリアデータセット中のエリア表記データに前記ユーザ表記データを付加したデータを作成し、作成されたデータを前記メッセンジャーサーバに送信し、
    前記メッセンジャーサーバは、前記作成されたデータを前記第2通信端末へ送信し、
    前記第2通信端末は、前記作成されたデータを受信して表示する、
    請求項15〜17のいずれかに記載のメッセンジャーサービスシステム。
  19. 前記第1記憶手段に対するデータ入出力を管理する管理サーバをさらに備え、
    前記通信端末の各々は、前記通信端末への前記エリアデータセットの入力に応答して、そのエリアデータセットおよび前記ユーザIDを前記管理サーバへ送信し、
    前記管理サーバは、前記通信端末から受信した前記エリアデータセットを、同じ前記通信端末から受信した前記ユーザIDに対応付けて前記第1記憶手段に格納する、
    請求項15〜18のいずれかに記載のメッセンジャーサービスシステム。
  20. 一つの前記ユーザIDに対応付けられ、他の一つ以上の前記ユーザIDを格納するユーザIDリストを一つ以上記憶するリスト記憶手段をさらに備え、
    前記通信端末の各々は、前記通信端末への命令の入力に応じて、前記ユーザIDを用いて前記メッセンジャーサーバへのログインを試み、
    前記第2通信端末は、前記第1ユーザIDに対応付けられた前記ユーザIDリストに格納されたユーザIDを用いて前記メッセンジャーサーバにログインした前記通信端末であり、
    前記メッセンジャーサーバは、前記エリアの表記データおよび前記第1ユーザIDを前記第1通信端末から受信すると、前記第1ユーザIDに対応付けられた前記ユーザIDリストを参照し、そのユーザIDリストに格納された前記一つ以上のユーザIDを読み取り、その読み取ったユーザIDを用いて前記メッセンジャーサーバにログインした前記第2通信端末に、前記エリアデータセット中の前記エリアの表記データを送信する、
    請求項15〜19のいずれかに記載のメッセンジャーサービスシステム。
  21. 前記メッセンジャーサーバは、前記エリアの表記データおよび前記第1ユーザIDを前記第1通信端末から受信した後、前記第2通信端末によるポーリングに応答して、前記第1通信端末から受信した前記エリアの表記データを前記第2通信端末に送信する、請求項15〜19のいずれかに記載のメッセンジャーサービスシステム。
  22. 一つの前記ユーザIDに対応付けられた他の一つ以上の前記ユーザIDを格納するユーザIDリストを一つ以上記憶するリスト記憶手段をさらに備え、
    前記第2通信端末は、第2の前記ユーザIDを前記メッセンジャーサーバに送信して前記ポーリングを実行し、
    前記メッセンジャーサーバは、前記ポーリングに応答して、前記第2ユーザIDに対応付けられた前記ユーザIDリスト内で前記第1ユーザIDを検索し、前記第1ユーザIDを発見したときに、前記第1通信端末から受信した前記エリアの表記データを前記第2通信端末に送信する、
    請求項21に記載のメッセンジャーサービスシステム。
  23. 複数の通信端末と、一の前記通信端末に入力されたメッセージデータを他の前記通信端末に転送するメッセンジャーサーバと、所定のエリアの定義データおよびそのエリアの表記データを有するエリアデータセットをユーザIDに対応付けて格納する第1の記憶手段とを備えるメッセンジャーサービスシステムを制御する方法であって、
    前記通信端末の各々は、自身の位置データを取得する手段と、前記メッセンジャーサーバから前記エリアの表記データを受信したときにその表記データを表示する手段と、第2の記憶手段とを有しており、
    第1の前記通信端末が、自身の位置データを取得するとともに、第1の前記ユーザIDに対応付けられた前記エリアデータセットを前記第1の記憶手段から前記第2の記憶手段に読み込むステップと、
    前記第1通信端末が、前記自身の位置データの示す位置を含む定義データを有する前記エリアデータセットを前記第2の記憶手段内で検索するステップと、
    前記第1通信端末が、前記エリアデータセットを発見すると、そのエリアデータセット中の前記エリアの表記データを前記第1ユーザIDとともに前記メッセンジャーサーバに送信するステップと、
    前記メッセンジャーサーバが、前記エリアの表記データおよび前記第1ユーザIDを前記第1通信端末から受信して、第2の前記通信端末に送信するステップと
    を備える方法。
JP2004224494A 2003-12-26 2004-07-30 メッセンジャーサービスシステムおよびその制御方法、ならびにメッセンジャーサーバおよびその制御プログラム Expired - Fee Related JP3626491B1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2004224494A JP3626491B1 (ja) 2003-12-26 2004-07-30 メッセンジャーサービスシステムおよびその制御方法、ならびにメッセンジャーサーバおよびその制御プログラム
EP04023107A EP1548629A1 (en) 2003-12-26 2004-09-28 Messenger service system and control method thereof, and messenger server and control program thereof
US10/950,530 US20050143105A1 (en) 2003-12-26 2004-09-28 Messenger service system and control method thereof, and messenger server and control program thereof
CNA2004100806550A CN1638364A (zh) 2003-12-26 2004-09-29 通信服务系统及其控制方法和通信服务器及其控制程序

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003435318 2003-12-26
JP2004224494A JP3626491B1 (ja) 2003-12-26 2004-07-30 メッセンジャーサービスシステムおよびその制御方法、ならびにメッセンジャーサーバおよびその制御プログラム

Publications (2)

Publication Number Publication Date
JP3626491B1 true JP3626491B1 (ja) 2005-03-09
JP2005209147A JP2005209147A (ja) 2005-08-04

Family

ID=34380437

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004224494A Expired - Fee Related JP3626491B1 (ja) 2003-12-26 2004-07-30 メッセンジャーサービスシステムおよびその制御方法、ならびにメッセンジャーサーバおよびその制御プログラム

Country Status (4)

Country Link
US (1) US20050143105A1 (ja)
EP (1) EP1548629A1 (ja)
JP (1) JP3626491B1 (ja)
CN (1) CN1638364A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112765443A (zh) * 2020-12-31 2021-05-07 广州技象科技有限公司 基于历史操作数据的物联网数据查询方法及装置

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7656870B2 (en) * 2004-06-29 2010-02-02 Damaka, Inc. System and method for peer-to-peer hybrid communications
US8009586B2 (en) 2004-06-29 2011-08-30 Damaka, Inc. System and method for data transfer in a peer-to peer hybrid communication network
US7778187B2 (en) * 2004-06-29 2010-08-17 Damaka, Inc. System and method for dynamic stability in a peer-to-peer hybrid communications network
US7933260B2 (en) 2004-06-29 2011-04-26 Damaka, Inc. System and method for routing and communicating in a heterogeneous network environment
US20060095365A1 (en) * 2004-06-29 2006-05-04 Damaka, Inc. System and method for conducting an auction in a peer-to peer network
US8050272B2 (en) 2004-06-29 2011-11-01 Damaka, Inc. System and method for concurrent sessions in a peer-to-peer hybrid communications network
US20060206310A1 (en) * 2004-06-29 2006-09-14 Damaka, Inc. System and method for natural language processing in a peer-to-peer hybrid communications network
US7623516B2 (en) * 2004-06-29 2009-11-24 Damaka, Inc. System and method for deterministic routing in a peer-to-peer hybrid communications network
US7570636B2 (en) 2004-06-29 2009-08-04 Damaka, Inc. System and method for traversing a NAT device for peer-to-peer hybrid communications
US20070078720A1 (en) * 2004-06-29 2007-04-05 Damaka, Inc. System and method for advertising in a peer-to-peer hybrid communications network
US7623476B2 (en) * 2004-06-29 2009-11-24 Damaka, Inc. System and method for conferencing in a peer-to-peer hybrid communications network
WO2007000578A2 (en) 2005-06-25 2007-01-04 Omni-Id Limited Electromagnetic radiation decoupler
GB0611983D0 (en) 2006-06-16 2006-07-26 Qinetiq Ltd Electromagnetic radiation decoupler
GB0624915D0 (en) 2006-12-14 2007-01-24 Qinetiq Ltd Switchable radiation decoupling
GB0625342D0 (en) 2006-12-20 2007-01-24 Qinetiq Ltd Radiation decoupling
WO2009032854A2 (en) 2007-09-03 2009-03-12 Damaka, Inc. Device and method for maintaining a communication session during a network transition
US8862164B2 (en) 2007-09-28 2014-10-14 Damaka, Inc. System and method for transitioning a communication session between networks that are not commonly controlled
WO2009070718A1 (en) 2007-11-28 2009-06-04 Damaka, Inc. System and method for endpoint handoff in a hybrid peer-to-peer networking environment
US8794533B2 (en) 2008-08-20 2014-08-05 Omni-Id Cayman Limited One and two-part printable EM tags
US8892646B2 (en) 2010-08-25 2014-11-18 Damaka, Inc. System and method for shared session appearance in a hybrid peer-to-peer environment
US8725895B2 (en) 2010-02-15 2014-05-13 Damaka, Inc. NAT traversal by concurrently probing multiple candidates
US8874785B2 (en) 2010-02-15 2014-10-28 Damaka, Inc. System and method for signaling and data tunneling in a peer-to-peer environment
US8689307B2 (en) * 2010-03-19 2014-04-01 Damaka, Inc. System and method for providing a virtual peer-to-peer environment
US9043488B2 (en) 2010-03-29 2015-05-26 Damaka, Inc. System and method for session sweeping between devices
US9191416B2 (en) 2010-04-16 2015-11-17 Damaka, Inc. System and method for providing enterprise voice call continuity
US8352563B2 (en) 2010-04-29 2013-01-08 Damaka, Inc. System and method for peer-to-peer media routing using a third party instant messaging system for signaling
US8446900B2 (en) 2010-06-18 2013-05-21 Damaka, Inc. System and method for transferring a call between endpoints in a hybrid peer-to-peer network
US8611540B2 (en) 2010-06-23 2013-12-17 Damaka, Inc. System and method for secure messaging in a hybrid peer-to-peer network
CN103154982A (zh) * 2010-08-16 2013-06-12 社会传播公司 促进网络通信环境中的通信者交互
US8468010B2 (en) 2010-09-24 2013-06-18 Damaka, Inc. System and method for language translation in a hybrid peer-to-peer environment
US8743781B2 (en) 2010-10-11 2014-06-03 Damaka, Inc. System and method for a reverse invitation in a hybrid peer-to-peer environment
CN102123346A (zh) * 2011-03-09 2011-07-13 东莞市车友互联信息科技有限公司 Gps终端即时通信方法及其实现系统和gps终端
US8407314B2 (en) 2011-04-04 2013-03-26 Damaka, Inc. System and method for sharing unsupported document types between communication devices
US8694587B2 (en) 2011-05-17 2014-04-08 Damaka, Inc. System and method for transferring a call bridge between communication devices
US8478890B2 (en) 2011-07-15 2013-07-02 Damaka, Inc. System and method for reliable virtual bi-directional data stream communications with single socket point-to-multipoint capability
US20140215042A1 (en) * 2013-01-31 2014-07-31 Kabushiki Kaisha Toshiba Electronic apparatus, system, and management method
US9027032B2 (en) 2013-07-16 2015-05-05 Damaka, Inc. System and method for providing additional functionality to existing software in an integrated manner
US9357016B2 (en) 2013-10-18 2016-05-31 Damaka, Inc. System and method for virtual parallel resource management
KR20150049596A (ko) * 2013-10-30 2015-05-08 삼성전자주식회사 보안 입력 방법 및 그 전자 장치
US9792458B2 (en) * 2014-05-05 2017-10-17 Ims Health Incorporated Platform to build secure mobile collaborative applications using dynamic presentation and data configurations
CA2956617A1 (en) 2014-08-05 2016-02-11 Damaka, Inc. System and method for providing unified communications and collaboration (ucc) connectivity between incompatible systems
US10091025B2 (en) 2016-03-31 2018-10-02 Damaka, Inc. System and method for enabling use of a single user identifier across incompatible networks for UCC functionality

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU3635901A (en) * 1999-12-27 2001-07-09 Main Course Technologies, Inc. Wireless/gps asset tracking and monitoring system
US6327533B1 (en) * 2000-06-30 2001-12-04 Geospatial Technologies, Inc. Method and apparatus for continuously locating an object
US6668173B2 (en) * 2000-12-15 2003-12-23 Motorola, Inc. Instant message user location tracking system
US20040203888A1 (en) * 2002-12-06 2004-10-14 Mikan Jeffrey Clinton System and method for changing presence of a communication device relative to location
GB0228807D0 (en) * 2002-12-11 2003-01-15 Koninkl Philips Electronics Nv Opportunistic location tracking

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112765443A (zh) * 2020-12-31 2021-05-07 广州技象科技有限公司 基于历史操作数据的物联网数据查询方法及装置
CN112765443B (zh) * 2020-12-31 2023-10-24 广州技象科技有限公司 基于历史操作数据的物联网数据查询方法及装置

Also Published As

Publication number Publication date
CN1638364A (zh) 2005-07-13
JP2005209147A (ja) 2005-08-04
US20050143105A1 (en) 2005-06-30
EP1548629A1 (en) 2005-06-29

Similar Documents

Publication Publication Date Title
JP3626491B1 (ja) メッセンジャーサービスシステムおよびその制御方法、ならびにメッセンジャーサーバおよびその制御プログラム
EP1867178B1 (en) Multimedia message service method and system
JP4340322B1 (ja) グループメンバの位置情報共有システム
JP3608740B2 (ja) 情報処理システム、端末装置、情報処理方法、情報処理プログラム、及び情報処理プログラムを記録したコンピュータ読み取り可能な記録媒体
JP4620054B2 (ja) 携帯端末とこれを用いた無線品質表示方法、プログラム、及びシステム
JP4819638B2 (ja) 通信制御システム
JP5139256B2 (ja) 位置取得システム
JP2010178054A (ja) 接続情報管理装置及び方法
US20140372528A1 (en) Information processing system, information processing apparatus, and recording medium
JP3997995B2 (ja) 半二重無線通信方法、プログラム、およびシステム
KR101971621B1 (ko) 서버와 디바이스를 중개하는 방법 및 장치, 컴퓨터로 읽을 수 있는 기록 매체
US6665722B1 (en) Store-and-forward packet radio system and method
JP4054806B2 (ja) プレゼンスサーバ、移動機、プレゼンス情報管理システムおよびプレゼンス情報管理方法
JP4981299B2 (ja) PTT(PushToTalk)システム、携帯電話機、PTTサーバ
JP4085920B2 (ja) 情報サービスシステム、車載端末、情報センタ
JP2006186526A (ja) 通信中継装置、通信端末装置、通信システム、および通信方法
JP2006197550A (ja) 携帯端末のコミュニケーション支援装置及びこれを用いたコミュニケーションシステム
JP4275111B2 (ja) データファイル送信方法および無線通信装置
US11805560B2 (en) Peer to peer communication system
JP2017033072A (ja) グループ監視システム及び監視装置
JP4391297B2 (ja) 移動端末、メッセージ管理装置、メッセージ送受信システム、移動端末制御用プログラム
CN105338510A (zh) 近距离场景下的设备发现方法及系统
JP4541852B2 (ja) アクセス情報管理システム、アクセス情報中継モバイル端末、アクセス情報管理方法
JP2012065259A (ja) 遠隔利用制御システム
JP5317870B2 (ja) 通信システム、管理装置およびその制御方法

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20041124

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041202

R150 Certificate of patent or registration of utility model

Ref document number: 3626491

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071210

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081210

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081210

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091210

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101210

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101210

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111210

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121210

Year of fee payment: 8

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121210

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121210

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121210

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131210

Year of fee payment: 9

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees