JP2010088028A - ネットワークシステム、通信装置、通信方法、および通信プログラム - Google Patents

ネットワークシステム、通信装置、通信方法、および通信プログラム Download PDF

Info

Publication number
JP2010088028A
JP2010088028A JP2008257331A JP2008257331A JP2010088028A JP 2010088028 A JP2010088028 A JP 2010088028A JP 2008257331 A JP2008257331 A JP 2008257331A JP 2008257331 A JP2008257331 A JP 2008257331A JP 2010088028 A JP2010088028 A JP 2010088028A
Authority
JP
Japan
Prior art keywords
communication
room
unit
communication device
identification information
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.)
Granted
Application number
JP2008257331A
Other languages
English (en)
Other versions
JP5354571B2 (ja
Inventor
Toshio Akaha
俊夫 赤羽
Tatsuya Sakai
達也 酒井
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.)
Sharp Corp
Original Assignee
Sharp Corp
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 Sharp Corp filed Critical Sharp Corp
Priority to JP2008257331A priority Critical patent/JP5354571B2/ja
Priority to KR1020117007920A priority patent/KR20110065513A/ko
Priority to CN2009801390115A priority patent/CN102172006A/zh
Priority to PCT/JP2009/067014 priority patent/WO2010038769A1/ja
Priority to EP09817801.5A priority patent/EP2299672A4/en
Priority to US13/057,364 priority patent/US20110153850A1/en
Publication of JP2010088028A publication Critical patent/JP2010088028A/ja
Application granted granted Critical
Publication of JP5354571B2 publication Critical patent/JP5354571B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1813Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
    • H04L12/1818Conference organisation arrangements, e.g. handling schedules, setting up parameters needed by nodes to attend a conference, booking network resources, notifying involved parties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/56Arrangements for connecting several subscribers to a common circuit, i.e. affording conference facilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M7/00Arrangements for interconnection between switching centres
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M7/00Arrangements for interconnection between switching centres
    • H04M7/0024Services and arrangements where telephone services are combined with data services
    • H04M7/0042Services and arrangements where telephone services are combined with data services where the data service is a text-based messaging service
    • H04M7/0045Services and arrangements where telephone services are combined with data services where the data service is a text-based messaging service where the text-based messaging service is an instant messaging service

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Telephonic Communication Services (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

【課題】P2P通信の呼びかけ後に容易にP2P通信の開始を中断することができる通信装置を提供する。
【解決手段】通信装置100Aは、通信装置および他の通信装置100Bを特定するための第1および第2の識別情報を格納する記憶部103と、第1の識別情報および第2の識別情報の少なくともいずれかに基づいてルーム名を生成する生成手段1061−1と、第2の識別情報に基づいて他の通信装置へ接続するとともに、通信装置および他の通信装置が情報を交換するためのルーム名を有するルームを生成するための生成要求をサーバ装置へ送信する通信制御手段1062−1とを備える。通信制御手段は、外部からの第1の命令に応じて、通信部を用いて、ルーム名を有するルームを削除するための削除要求をサーバ装置へ送信する。
【選択図】図9

Description

本発明は、ネットワークを介して相互に接続可能な複数の通信装置とサーバ装置とを備えるネットワークシステム、通信装置、通信方法、および通信プログラムに関し、特に、一方の通信装置の呼びかけに応じて通信装置同士がサーバ装置に生成されたルームを介してデータをやり取りすることができるネットワークシステム、通信装置、通信方法、および通信プログラムに関する。
従来からのIP(Internet Protocol)接続を利用したチャットシステムでは、チャットに参加する通信装置のそれぞれが、同時にチャットアプリケーションを起動してIP接続を行う必要がある。より詳細には、他の通信装置とのIP接続を所望するユーザは、当該他の通信装置の識別情報を取得する必要がある。たとえば、同一グループに属するユーザのそれぞれは、自身の通信装置を用いてサーバ上の同一のチャットルームに入室することによって互いの識別情報を交換する。
そのため、IP接続を呼びかける側の通信装置のユーザは、サーバ上に互いの識別情報を交換するためのルームを作成するともに、相手ユーザを呼び出したり、相手ユーザにルーム名を伝えたりする必要がある。また、通信装置のユーザが互いの状態(リクエスト)を取得するためには、通信装置のそれぞれが通信用のアプリケーションを起動することによってネットワークに接続された状態でなければならない。
たとえば、インターネット網に接続可能な通信装置同士間におけるダイレクトなデータ(メッセージ)の交換システムとして、P2P(Peer to Peer)システムが知られている。このようなP2Pシステムにおいては、通信装置のユーザは、電話やメールを用いることによって、あるいは相手ユーザと対面することによって、直接P2P通信の開始予定時刻を定める必要がある。また、互いにP2P通信用の識別情報を把握しておく必要がある。そして、開始予定時刻前に、それぞれのユーザが、通信装置をネットワーク(インターネット)に接続した上で、いずれか、あるいは両方のユーザが通信装置を介してP2P通信を開始する必要がある。
そして、チャットシステム(P2P通信)における処理の煩雑さを解消するために、専用のサーバ(チャットサーバ)を介したり、メールシステムを利用したり、さらには音声通信用(通話用)の通信システムで得られる情報(発呼者情報等)を利用したりして、チャットサーバ(チャットルーム)へのアクセスを促す勧誘メッセージや、チャットシステムに必要な情報を交換する必要がある。なお、チャットシステムに必要な情報としては、「IPアドレス」や「自端末の状態(マナーモードであるか否か等)」や「ユーザの状態(会議中であるか否か、電車・バス等の通話ができない交通機関を利用中であるか否か等)」や「ユーザの意思(チャットの呼びかけに対する応答)」等が挙げられる。
ダイレクトなデータの交換システムに必要な処理の煩雑さを解消する技術として、たとえば、特開2004−199134号公報(特許文献1)に、チャットシステムの技術が開示されている。特開2004−199134号公報(特許文献1)によると、チャットサーバは、新規にチャットルームを開設する際に、そのチャットルームへの入室を促すユーザの電子メールアドレスを入力させ、又は、あらかじめ登録されているユーザ情報の中からそのチャットルームへの入室を促すユーザの電子メールアドレスを選択させ、チャットルームの開設後に電子メールアドレス宛に、チャットルームの開設通知メールを送信する。チャットルームオーナのパソコンと他のユーザのパソコンとの間が、当該チャットルームを共有化できる状態で相互に接続されていない場合であっても、当該ユーザに対してチャットルームの開設を知らせることができ、チャットルームへの入室を積極的に促して無為な待ち時間の短縮を可能とすることができる。
また、特開2002−278903号公報(特許文献2)には、情報処理装置が開示されている。特開2002−278903号公報(特許文献2)によると、ピアツーピア通信における通信接続は、通信を希望する、例えば、パーソナルコンピュータから、パーソナルコンピュータのIPアドレスが添付された電子メールが、希望する通信先である、例えば、他のパーソナルコンピュータに送信され、他のパーソナルコンピュータがその電子メールを開封し、電子メールに添付されているIPアドレスを取得することによって確立されるようになされている。
また、特開2003−91494号公報(特許文献3)には、チャットシステムが開示されている。特開2003−91494号公報(特許文献3)によると、携帯電話機をチャットサーバに接続させて携帯電話機間でチャットを行うチャットシステムにおいて、チャットサーバに接続していない携帯電話機に対してチャットサーバへの接続(チャットへの参加)を促す電子メール(チャット勧誘メール)を送信する。チャット勧誘メールを受信した携帯電話機のユーザがチャットサーバへの接続(チャットへの参加)を承諾すると自動的に携帯電話機がチャットサーバに接続されてチャットが可能な状態となる。
また、特開2002−132694号公報(特許文献4)には、チャットシステムが開示されている。特開2002−132694号公報(特許文献4)によると、携帯電話からサーバに対してチャットしたい相手方の携帯電話番号を通知してチャット要求すれば、サーバはそれに応じてチャットしたい相手方の携帯電話にチャット依頼を送信する。チャット依頼を受信した相手方は都合に応じて応答する。相手方から要求許可があれば、サーバから、要求側に要求許可を送信し参加者全員に参加者リストを送信し、チャットモードが確立する。参加者からのメッセージをサーバが受信するとサーバはそのメッセージを参加者全員に送信し、各参加者の携帯電話の表示部にメッセージ内容を表示する。相手方は、途中からチャットに参加することができる。
また、特開2003−174520号公報(特許文献5)には、携帯通信端末が開示されている。特開2003−174520号公報(特許文献5)によると、携帯電話は、着信音を鳴動させないマナーモードに設定される。携帯電話のユーザが携帯電話へ発呼すると、携帯電話は、バイブレータ等により着信をユーザに通知し、発呼側の携帯電話の発信電話番号情報を取得し、着信を自動切断する。携帯電話は、上記発信電話番号情報を用いて、事前に登録または作成されたメッセージを、チャットメールで発呼側の携帯電話へ自動送信する。携帯電話では、通常のチャットメール動作が起動し、以後、発呼側、着呼側の双方の携帯電話において、チャットメールの受信と送信とを繰り返し、文字による会話がなされる。
また、特開2004−247862号公報(特許文献6)には、携帯電話及び携帯電話システムが開示されている。特開2004−247862号公報(特許文献6)によると、無線通信網を介して無線通信を行う携帯電話において、マナーモードを設定する手段と、マナーモードの設定情報を基地局に発信する手段と、通信相手の携帯電話がマナーモードに設定されている場合に通信相手のマナーモード設定情報を基地局から受信する手段と、マナーモード設定情報を受信した場合に通話モードを変更する手段と、通信相手の名前、電話番号、電子メールアドレスを記憶する記憶手段と、電話番号から電子メールアドレスを検索する検索手段とを有する。
また、特開2006−140664号公報(特許文献7)には、携帯電話端末および携帯電話通信システムが開示されている。特開2006−140664号公報(特許文献7)によると、ユーザは、通信相手のAさん、Bさん、Cさんそれぞれについて、発信する時の複数の通信機能の優先度を電話帳メモリの符号の発信優先度の欄に事前登録する。そして、発信時、ユーザがAさんを指定して発信操作を行うと、Aさんに対する発信優先度「TV電話→音声電話→チャット→メール」の順序で、それらの通信機能の起動とアドレス設定と発信が自動で行われる。
また、特開2007−96486号公報(特許文献8)には、移動通信方式選択方法およびこれに用いる移動通信端末装置が開示されている。特開2007−96486号公報(特許文献8)によると、発呼側携帯電話端末から着呼側携帯電話端末に音声通信に係る発呼信号と表示用メッセージとを送信する。着呼側携帯電話端末は、発呼を受けると、着信音の再生等とともに表示画面に表示用メッセージを自動表示する。着呼者は、該表示用メッセージに基づいて、該着呼を音声通信を受けるか文字チャットで受けるかを判断して、音声モード選択キーまたは文字会話モード選択キーを押下する。文字会話モード選択キーが押下されると、着呼側携帯電話端末は、発呼側携帯電話端末に対して文字会話モードの選択を示す自動音声メッセージを送信した後、文字チャット動作を開始する。そして、発呼者がこの自動音声メッセージを聴いた後で文字会話モード選択キーを押下すると、発呼側携帯電話端末も文字チャットの動作を開始する。
特開2004−199134号公報 特開2002−278903号公報 特開2003−91494号公報 特開2002−132694号公報 特開2003−174520号公報 特開2004−247862号公報 特開2006−140664号公報 特開2007−96486号公報
このようにP2P通信を行う上で必要となるデータの交換に係る技術は多数知られている。しかしながら、P2P通信においては、P2P通信の呼びかけ後にP2P通信の開始を中断することが難しかった。すなわち、呼びかけ側の通信装置のユーザは、一度P2P通信の呼びかけを行うと、容易にP2P通信を取り止めることができなかった。
本発明は、かかる問題を解決するためになされたものであり、その目的は、P2P通信の呼びかけ後に容易にP2P通信の開始を中断することができるネットワークシステム、通信装置、通信方法、および通信プログラムを提供することである。
この発明のある局面に従うと、第1および第2の通信装置とサーバ装置とを備えるネットワークシステムが提供される。第1の通信装置は、ネットワークを介して第2の通信装置およびサーバ装置との間でデータを送受信する第1の通信部と、第1および第2の通信装置を特定するための第1および第2の識別情報を格納する第1の記憶部と、第1の識別情報および第2の識別情報の少なくともいずれかに基づいてルーム名を生成する第1の生成手段と、第1の通信部を用いて、第2の識別情報に基づいて第2の通信装置へ接続するとともに、第1および第2の通信装置が情報を交換するためのルーム名を有するルームを生成するための生成要求をサーバ装置へ送信する第1の通信制御手段とを含む。第1の通信制御手段は、外部からの第1の命令に応じて、第1の通信部を用いて、ルーム名を有するルームを削除するための削除要求をサーバ装置へ送信する。サーバ装置は、ネットワークを介して第1および第2の通信装置との間でデータを送受信するサーバ通信部と、第1の通信装置からの生成要求に応じて、ルーム名を有するルームを生成するルーム生成手段と、第1の通信装置からの削除要求に応じて、ルーム名を有するルームを削除するルーム削除手段とを含む。第2の通信装置は、ネットワークを介して第1の通信装置およびサーバ装置との間でデータを送受信する第2の通信部と、第1および第2の識別情報を格納する第2の記憶部と、第1の通信装置からの接続を受け付けた際に、第1および第2の識別情報の少なくともいずれかに基づいてルーム名を生成する第2の生成手段と、第2の通信部を用いて、サーバ装置にルーム名を有するルームが存在するか否かを問い合わせる第2の通信制御手段と、ルームが存在している間、外部からの第2の命令を受け付ける入力部とを含む。第2の通信制御手段は、第2の命令に応じて、第2の通信部を用いてルーム名を有するルームにアクセスする。
この発明の別の局面に従うと、通信装置が提供される。通信装置は、ネットワークを介して他の通信装置およびサーバ装置との間でデータを送受信する通信部と、通信装置および他の通信装置を特定するための第1および第2の識別情報を格納する記憶部と、第1の識別情報および第2の識別情報の少なくともいずれかに基づいてルーム名を生成する生成手段と、通信部を用いて、第2の識別情報に基づいて他の通信装置へ接続するとともに、通信装置および他の通信装置が情報を交換するためのルーム名を有するルームを生成するための生成要求をサーバ装置へ送信する通信制御手段とを備える。通信制御手段は、外部からの第1の命令に応じて、通信部を用いて、ルーム名を有するルームを削除するための削除要求をサーバ装置へ送信する。
好ましくは、生成手段は、他の通信装置からの接続を受け付けた際に、第1および第2の識別情報の少なくともいずれかに基づいてルーム名を生成する。通信制御手段は、通信部を用いて、サーバ装置にルーム名を有するルームが存在するか否かを問い合わせる。通信装置は、ルームが存在している間、外部からの第2の命令を受け付ける入力部をさらに備える。通信制御手段は、第2の命令に応じて、通信部を用いてルーム名を有するルームにアクセスする。
この発明の別の局面に従うと、通信装置が提供される。通信装置は、ネットワークを介して他の通信装置およびサーバ装置との間でデータを送受信する通信部と、通信装置および他の通信装置を特定するための第1および第2の識別情報を格納する記憶部と、他の通信装置からの接続を受け付けた際に、第1および第2の識別情報の少なくともいずれかに基づいてルーム名を生成する生成手段と、通信部を用いて、サーバ装置にルーム名を有するルームが存在するか否かを問い合わせる通信制御手段と、ルームが存在している間、外部からの第2の命令を受け付ける入力部とを備える。通信制御手段は、第2の命令に応じて、通信部を用いてルーム名を有するルームにアクセスする。
好ましくは、他の通信装置からの接続は、電話の着信である。通信装置は、ルームが存在している間、外部に第1の通知を行い、ルームが存在していない間、外部に第2の通知を行う通知部をさらに備える。入力部は、ルームが存在していないとき、外部から電話の着信に応答するための第3の命令を受け付ける。通信制御手段は、第3の命令に応じて、他の通信装置と通話するために通信部を制御する。
この発明の別の局面に従うと、通信装置における他の通信装置と通信するための通信方法が提供される。通信装置は、演算処理部と、ネットワークを介して他の通信装置およびサーバ装置との間でデータを送受信する通信部と、通信装置および他の通信装置を特定するための第1および第2の識別情報を格納する記憶部とを備える。通信方法は、演算処理部が、第1の識別情報および第2の識別情報の少なくともいずれかに基づいてルーム名を生成するステップと、演算処理部が、通信部を用いて、第2の識別情報に基づいて他の通信装置へ接続するステップと、演算処理部が、通信部を用いて、通信装置および他の通信装置が情報を交換するためのルーム名を有するルームを生成するための生成要求をサーバ装置へ送信するステップと、演算処理部が、外部からの第1の命令に応じて、通信部を用いて、ルーム名を有するルームを削除するための削除要求をサーバ装置へ送信するステップとを備える。
この発明の別の局面に従うと、通信装置における他の通信装置と通信するための通信方法が提供される。通信装置は、演算処理部と、ネットワークを介して他の通信装置およびサーバ装置との間でデータを送受信する通信部と、通信装置および他の通信装置を特定するための第1および第2の識別情報を格納する記憶部とを備える。通信方法は、演算処理部が、他の通信装置からの接続を受け付けた際に、第1および第2の識別情報の少なくともいずれかに基づいてルーム名を生成するステップと、演算処理部が、通信部を用いて、サーバ装置にルーム名を有するルームが存在するか否かを問い合わせるステップと、演算処理部が、ルームが存在している間、外部からの第2の命令を受け付けるステップと、演算処理部が、第2の命令に応じて、通信部を用いてルーム名を有するルームにアクセスするステップとを備える。
この発明の別の局面に従うと、通信装置に他の通信装置と通信させるため通信プログラムが提供される。通信装置は、演算処理部と、ネットワークを介して他の通信装置およびサーバ装置との間でデータを送受信する通信部と、通信装置および他の通信装置を特定するための第1および第2の識別情報を格納する記憶部とを備える。通信プログラムは、演算処理部に、第1の識別情報および第2の識別情報の少なくともいずれかに基づいてルーム名を生成するステップと、通信部を用いて、第2の識別情報に基づいて他の通信装置へ接続するステップと、通信部を用いて、通信装置および他の通信装置が情報を交換するためのルーム名を有するルームを生成するための生成要求をサーバ装置へ送信するステップと、外部からの第1の命令に応じて、通信部を用いて、ルーム名を有するルームを削除するための削除要求をサーバ装置へ送信するステップとを実行させる。
この発明の別の局面に従うと、通信装置に他の通信装置と通信させるため通信プログラムが提供される。通信装置は、演算処理部と、ネットワークを介して他の通信装置およびサーバ装置との間でデータを送受信する通信部と、通信装置および他の通信装置を特定するための第1および第2の識別情報を格納する記憶部とを備える。通信プログラムは、演算処理部に、他の通信装置からの接続を受け付けた際に、第1および第2の識別情報の少なくともいずれかに基づいてルーム名を生成するステップと、通信部を用いて、サーバ装置にルーム名を有するルームが存在するか否かを問い合わせるステップと、ルームが存在している間、外部からの第2の命令を受け付けるステップと、第2の命令に応じて、通信部を用いてルーム名を有するルームにアクセスするステップとを実行させる。
以上のように、本発明によると、P2P通信の呼びかけ後に容易にP2P通信の開始を中断することができるネットワークシステム、通信装置、通信方法および通信プログラムが提供される。
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
また、以下では、携帯電話100を「通信装置」の代表例として説明を行う。ただし、通信装置は、パーソナルコンピュータや、カーナビゲーション装置(Satellite navigation system)や、PND(Personal Navigation Device)や、PDA(Personal Data Assistance)などのような、他の情報通信機器であってもよい。
<ネットワークシステム1の全体構成>
まず、ネットワークシステム1の全体構成について説明する。図1は、本実施の形態に係るネットワークシステム1の全体構成を示す概略図である。図1を参照して、ネットワークシステム1は、携帯電話100A,100B,100Cと、マッチングサーバ400と、インターネット網(第1のネットワーク)500と、キャリア網(第2のネットワーク)700とを含む。また、本実施の形態に係るネットワークシステム1は、車両250に搭載されるカーナビゲーション装置200と、パーソナルコンピュータ(PC;Personal Computer)300とを含む。
なお、説明の容易化のために、以下では、本実施の形態に係るネットワークシステム1が、第1の携帯電話100Aと、第2の携帯電話100Bと、第3の携帯電話100Cとを含む場合について説明する。また、携帯電話100A,100B,100Cの各々に共通の構成や機能を説明する際には、それらを携帯電話100とも総称する。そして、携帯電話100A,100B,100C、カーナビゲーション装置200、パーソナルコンピュータ300の各々に共通の構成や機能を説明する際には、それらを通信装置とも総称する。
携帯電話100は、キャリア網700に接続可能に構成されている。カーナビゲーション装置200は、インターネット網500に接続可能に構成されている。パーソナルコンピュータ300は、LAN(Local Area Network)350やWAN(Wide Area Network)を介してインターネット網500に接続可能に構成されている。マッチングサーバ400は、インターネット網500に接続可能に構成されている。
より詳細には、第1の携帯電話100Aと、第2の携帯電話100Bと、第3の携帯電話100Cと、カーナビゲーション装置200と、パーソナルコンピュータ300とは、キャリア網700やインターネット網500を介して互いに接続可能であって、互いにデータの送受信が可能である。また、携帯電話100とカーナビゲーション装置200とパーソナルコンピュータ300には、自端末を特定するための識別情報(たとえば、電話番号やメールアドレスやIP(Internet Protocol)アドレスなど)が割り当てられる。すなわち、携帯電話100とカーナビゲーション装置200とパーソナルコンピュータ300は、内部の記録媒体に他の通信装置の識別情報を記憶することができ、当該識別情報に基づいてキャリア網700やインターネット網500などを介して当該他の通信装置とデータ送受信を行うことができる。
なお、本実施の形態に係る携帯電話100とカーナビゲーション装置200とパーソナルコンピュータ300とは、割り当てられるIPアドレスを利用して他の通信装置とデータ送受信を行うものである。ここでは、各通信装置がマッチングサーバ400にアクセスする際には、すなわち各通信装置がインターネットにアクセスした際に、マッチングサーバ400あるいは他の図示しないサーバ装置などによってIPアドレスが割り当てられるものとする。IPアドレスの割り当て処理の詳細は公知であるので、ここでは説明を繰り返さない。
また、本実施の形態に係る携帯電話100、カーナビゲーション装置200、パーソナルコンピュータ300は、自身に割り当てられたIPアドレスを利用することにより、直接的に相互にネットワークを介してデータ送受信を行うことが可能である。すなわち、本実施の形態に係るネットワークシステム1に含まれる携帯電話100、カーナビゲーション装置200、パーソナルコンピュータ300は、いわゆるP2P(Pear to Pear)型のネットワークを構成することが可能である。
<ネットワークシステム1の動作概要>
次に、本実施の形態に係るネットワークシステム1の動作概要について説明する。図2は、ネットワークシステム1における動作概要を示すシーケンス図である。図3は、ネットワークシステム1における接続手順を示すイメージ図である。図2および図3を参照して、本実施の形態に係る各通信装置は、P2P型のデータ送受信を行うために、はじめに互いのIPアドレスを交換(取得)する必要がある。そして、各通信装置は、互いのIPアドレスを取得したのちに、IPアドレスに基づきP2P型のデータ送受信によってメッセージや添付ファイルなどを他の通信装置に送信する。
本実施の形態においては、P2P通信の開始の際に、通信装置のそれぞれが、マッチングサーバ400に生成されたチャットルーム(以下、単にルームともいう。)を介して、IPアドレスやメッセージや添付ファイルを送受信する場合について説明する。特に以下では、第1の携帯電話100Aが新たなチャットルームを生成するとともに、第1の携帯電話100Aが第2の携帯電話100Bを当該チャットルームに招待する場合について説明する。
まず、第1の携帯電話100A(図2において端末A)が、ユーザからP2P通信を開始するための命令を受け付ける(ステップS001)。具体的には、第1の携帯電話100Aのユーザは、アドレス帳からP2P通信における相手通信装置(第2の携帯電話100B)を選択したうえで、P2Pを開始する旨の命令を入力する。すると、第1の携帯電話100Aは、第2の携帯電話100B(図2において端末B)に電話をかける(ステップS002)。
そして、第1の携帯電話100Aは、マッチングサーバ400に新たなルームを生成(開設)するための生成要求を送信する(ステップS003)。より詳細には、第1の携帯電話100Aは、自身の電話番号と第2の携帯電話100Bの電話番号とに基づいて、所定のルールに基づいてチャットルーム名(以下、単にルーム名ともいう。)を生成する。第1の携帯電話100Aは、ルーム名を含む生成要求をマッチングサーバ400に送信する。マッチングサーバ400は、当該ルーム名を含む生成要求を受け付けて、当該ルーム名に対応するルームを開設する。
より詳細には、第1の携帯電話100Aは、ルームを開設する際に、マッチングサーバ400からIPアドレスを取得してもよいし、予め他のサーバなどからIPアドレスを取得していてもよい。マッチングサーバ400は、ルームを生成する際に、ルーム名と第1の携帯電話100Aの識別情報(IPアドレスなど)を対応付けて格納する。
第1の携帯電話100Aから電話を受けた第2の携帯電話100Bは、第1の携帯電話100Aの電話番号と自身の携帯電話100Bの電話番号とに基づいて、所定のルールに基づいてルーム名を生成する。このように、本実施の形態に係るネットワークシステム1においては、第1の携帯電話100Aと第2の携帯電話100Bとが、共に第1および第2の携帯電話の電話番号に基づいて、所定のルールに基づいてルーム名を生成することによって、第1および第2の携帯電話が生成したルーム名が同一になるように構成されている。ただし、ネットワークシステム1は、第1および第2の携帯電話が生成したルーム名が同一になるように構成されていればよく、第1および第2の携帯電話の電話番号に基づいてルーム名を生成する構成でなくともよい。
第2の携帯電話100Bは、ルーム名を生成すると、マッチングサーバ400に当該ルーム名に対応するルームが存在するか否かを問い合わせる(ステップS004)。マッチングサーバ400に当該ルーム名に対応するルームが存在する場合、第2の携帯電話100Bは、ユーザからのルームに入室(参加)する旨の第2の命令を待ち受ける(ステップS005)。なお、この間、第1の携帯電話100Aのユーザは、第2の携帯電話100BがP2P通信を開始することを待っている。
本実施の形態に係る通信装置は、ユーザからP2P通信を中断する命令を受け付けて、P2P通信の呼びかけを中断することができる。具体的には、第1の携帯電話100Aのユーザが、P2P通信を中止する命令を入力すると(ステップS006)、第1の携帯電話100Aはマッチングサーバ400にルームABを削除する要求を行う(ステップS007)。このように、本実施の形態に係るネットワークシステム1においては、第2の携帯電話100BがルームABに入室する前に、第1の携帯電話100AがP2P通信を中断することができる。
一方、第2の携帯電話100Bのユーザがルームに入室する命令を入力すると、第2の携帯電話100BはルームABへの入室要求(参加要求)をマッチングサーバ400に行う(ステップS008)。マッチングサーバ400は、入室要求を受け付けて、第2の携帯電話100Bの識別情報をルームABのルーム名に対応付けて登録する。
そして、予め設定された入室者数がルームABに入室すると、マッチングサーバ400はマッチング処理が成功した旨を第1の携帯電話100Aおよび第2の携帯電話100Bに通知する。(ステップS010)。すなわち、マッチングサーバ400は、第1の携帯電話100Aと第2の携帯電話100Bとに、互いの識別情報を送信する。
第1の携帯電話100Aと第2の携帯電話100Bとは、相手の識別情報に基づいて、互いを認証する(ステップS012)。認証が完了すると、第1の携帯電話100Aと第2の携帯電話100Bとは、P2P通信を開始する(ステップS014)。第1の携帯電話100Aが、第2の携帯電話100BにP2P通信を切断する旨のメッセージを送信すると(ステップS016)。第2の携帯電話100Bは、第1の携帯電話100Aに切断する要求を受け付けた旨のメッセージを送信する(ステップS018)。そして、第1の携帯電話100Aと第2の携帯電話100BとのP2P通信が終了する。
以下、このような機能を実現するための構成について詳述する。
<携帯電話100のハードウェア構成>
本実施の形態に係る通信装置の一例である携帯電話100のハードウェア構成について説明する。図4は、本施の形態に係る携帯電話100の概観を示すイメージ図である。図5は、本施の形態に係る携帯電話100のハードウェア構成を示すブロック図である。
図4および図5を参照して、本実施の形態に係る携帯電話100は、外部のネットワークとの間でデータを送受信する通信部101と、TEL用通信部102と、プログラムや各種データベースを記憶する記憶部103と、制御部106と、メインディスプレイ107と、外部音声が入力されるマイク108と、音声を出力するスピーカ109と、各種情報の入力を受け付ける入力部110と、外部からの通信データや通話信号を受信した旨の音声を出力する第1の通知部111と、外部からの通信データや通話信号を受信した旨を表示する第2の通知部112とを含む。なお、通信部101とTEL用通信部102とは、たとえばアンテナや信号処理回路などから構成されるものであって、両者は同じデバイスによって実現されてもよい。
本実施の形態に係るメインディスプレイ107は、液晶パネルやCRTから構成されるタッチパネルである。すなわち、本実施の形態に係る携帯電話100は、メインディスプレイ107の下側(裏側)にペンタブレット119が敷設されている。これによって、ユーザはスタイラスペン120などを用いることによって、ペンタブレット119を介して、図形情報などを制御部106に手書き入力することができる。メインディスプレイ107は、制御部106が出力したデータに基づいて、画像やテキストを表示する。
入力部110は、キー入力操作などによってユーザから情報を受け付ける。たとえば、入力部110は、通話を受け付けたり、通話を発したりするためのTELボタン110Aと、P2P通信を受け付けたり、P2P通信を発したりするためのP2Pボタン110Bと、アドレス帳データを呼び出すアドレス帳ボタン110Dと、各種の処理を終了させるための終了ボタン110Eとを含む。すなわち、入力部110は、TEL用通信部102を介してP2P参加要請メールを受信したときに、ユーザから、チャットルームへ入室する命令や、メールの内容を表示させる命令などを選択可能に受け付ける。
第1の通知部111は、スピーカ109などを介して着信音を出力する。あるいは、第1の通知部111は、バイブレーション機能を有する。第1の通知部111は、着呼した際や、P2P参加要請メールを受信した際に、音声を出力したり、携帯電話100を振動させたりする。
第2の通知部112は、着信したときに点滅するTEL用LED(Light Emitting Diode)112Aと、P2P通信を受信したときに点滅するP2P用LED112Bを含む。
制御部106は、CPU(Central Processing Unit)などによって実現され、携帯電話100の各部を制御する。たとえば、入力部110を介してユーザから各種の命令を受け付けて、通信部101やTEL用通信部102やネットワークを介して外部の通信装置とデータの送受信を行う。
通信部101およびTEL用通信部102は、制御部106からの通信データを通信信号に変換し、その通信信号を図示しないアンテナを介して発信する。通信部101およびTEL用通信部102は、アンテナを介して受信した通信信号を通信データに変換し、その通信データを制御部106に入力する。
記憶部103は、作業用メモリとして機能するRAM(Random Access Memory)や、制御プログラムなどを格納するROM(Read Only Memory)や、画像データなどを記憶するハードディスクなどによって実現される。記憶部103は、各種のワークメモリ103Aを有する。記憶部103のワークメモリ103Aは、発信者の電話番号を格納するRCVTELNO領域、選択されたアドレスのメモリNoを格納するSEL領域、生成されたルーム名を格納するROOMNAME領域などを含む。
図6(A)は、記憶部103が記憶するアドレス帳データ103Bを示すイメージ図である。図6(B)は、記憶部103が記憶する自端末データ103Cを示すイメージ図である。図6(C)は、記憶部103が記憶する自端末のIPアドレスデータ103Dと自端末のIPアドレスデータ103Eとを示すイメージ図である。
図6(B)を参照して、アドレス帳データ(AdrDB[])103Bは、宛先(他の通信装置)毎にメモリNoを対応付けている。そして、アドレス帳データ103Bは、宛先毎に、名前、電話番号、メールアドレス、ニックネームなどを互いに対応付けて格納する。
図6(C)を参照して、自端末データ(MyAdr)103Cは、自端末のユーザの名前、自端末の電話番号、自端末のメールアドレス、ニックネームなどを格納する。
図6(D)を参照して、他端末のIPアドレスデータ(HIS_IPADR)103Dは、他端末のIPアドレスを格納する。自端末のIPアドレスデータ(MY_IPADR)103Eは、自端末のIPアドレスを格納する。
<マッチングサーバ400のハードウェア構成>
次に、本実施の形態に係るマッチングサーバ400のハードウェア構成について説明する。図7は、本実施の形態に係るマッチングサーバ400のハードウェア構成を示すブロック図である。図7を参照して、本実施の形態に係るマッチングサーバ400は、相互に内部バス408で接続されたCPU405と、メモリ406と、固定ディスク407と、サーバ通信部409とを含む。
メモリ406は、各種の情報を記憶するものであって、たとえば、CPU405でのプログラムの実行に必要なデータを一時的に記憶する。固定ディスク407は、CPU105が実行するプログラムやデータベースを記憶する。CPU405は、マッチングサーバ400およびメールサーバ600の各要素を制御するものであって、各種の演算を実施する装置である。
サーバ通信部409は、CPU405が出力したデータを電気信号へと変換して外部へ送信し、外部から受信した電気信号をデータに変換してCPU405に入力する。具体的には、サーバ通信部409は、CPU405からのデータを、インターネット網500やキャリア網700などを介して携帯電話100やカーナビゲーション装置200やパーソナルコンピュータ300に送信する。そして、インターネット網500やキャリア網700を介して携帯電話100やカーナビゲーション装置200やパーソナルコンピュータ300から受信したデータを、CPU405に入力する。
ここで、メモリ406あるいは固定ディスク407に記憶されるデータについて説明する。図8(A)は、マッチングサーバ400のメモリ406あるいは固定ディスク407に記憶されるルーム管理テーブル406Aのデータ構造を示す第1のイメージ図であって、図8(B)は、マッチングサーバ400のメモリ406あるいは固定ディスク407に記憶されるルーム管理テーブル406Aのデータ構造を示す第2のイメージ図である。
図8(A)および図8(B)を参照して、ルーム管理テーブル406Aは、ルーム毎に、ルーム名と当該ルームに入室中の通信装置の識別情報とを対応付けて格納する。たとえば、ある時点においては、図8(A)を参照して、マッチングサーバ400にルーム名ABを有するチャットルーム、ルーム名CDを有するチャットルーム、ルーム名EFを有するチャットルーム、ルーム名GHを有するチャットルームが生成されている。
本実施の形態においては、ルーム名ABは、通信装置Aが通信装置Aの電話番号と通信装置Bの電話番号とに基づいて決定する。ルーム名CDは、通信装置Cが通信装置Cの電話番号と通信装置Dの電話番号とに基づいて決定する。ルーム名EFは、通信装置Eが、通信装置Eの電話番号と通信装置Fの電話番号とに基づいて決定する。ルーム名GHは、通信装置Gが通信装置Gの電話番号と通信装置Hの電話番号とに基づいて決定する。
そして、ルーム名ABを有するチャットルームには通信装置Aが入室しているため、ルーム管理テーブル406Aは、通信装置AのIPアドレスをルーム名ABに対応付けて格納する。ルーム名CDを有するチャットルームには通信装置Cが入室しているため、ルーム管理テーブル406Aは、通信装置CのIPアドレスをルーム名CDに対応付けて格納する。ルーム名EFを有するチャットルームには通信装置Eが入室しているため、ルーム管理テーブル406Aは、通信装置EのIPアドレスをルーム名EFに対応付けて格納する。ルーム名GHを有するチャットルームには通信装置Gが入室しているため、ルーム管理テーブル406Aは、通信装置GのIPアドレスをルーム名GHに対応付けて格納する。
ルーム名ABを有するチャットルームに新たに通信装置Bが入室すると、図8(B)を参照して、ルーム管理テーブル406Aはルーム名ABに対応付けて、通信装置BのIPアドレスを格納する。
たとえば、マッチングサーバ400においては、第1の携帯電話100Aが新たなチャットルームの生成を要求してきた際(図2におけるステップS002)に、生成要求からルーム名を取得して、ルーム管理テーブル406Aに当該ルーム名と第1の携帯電話100AのIPアドレスとを対応付けて格納する。その後、第2の携帯電話100Bがマッチングサーバ400にチャットルームへの入室を要求してきた際(図2におけるステップS008)に、CPU405が、ルーム管理テーブル406Aに当該ルーム名と第2の携帯電話100BのIPアドレスとを対応付けて格納する。
そして、当該ルーム名に対応するIPアドレスの個数が予め設定された個数に達すると、あるいは当該ルームが生成されてから予め設定された時間が経過すると、CPU405は、ルーム管理テーブル406Aから当該ルーム名に対応する第1の携帯電話100AのIPアドレスや第2の携帯電話100BのIPアドレスを読み出す。CPU405は、第1の携帯電話100AのIPアドレスを第2の各通信装置に送信し、第2の携帯電話100BのIPアドレスを第1の携帯電話100Aに送信する。
<ネットワークシステム1の機能構成>
図9は、本実施の形態に係るネットワークシステム1の機能構成を示すブロック図である。図9を参照して、本実施の形態に係るネットワークシステム1は、第1の携帯電話100Aと、第2の携帯電話100Bと、インターネット網500と、マッチングサーバ400を含む。
第1の携帯電話100Aは、第1の通信部101−1と、第1の生成部1061−1と、第1の通信制御部1062−1と、第1の記憶部103−1と、第1の入力部110−1とを含む。第2の携帯電話100Bは、第2の通信部101−2と、第2の生成部1061−2と、第2の通信制御部1062−2と、第2の記憶部103−2と、第2の入力部110−2とを含む。マッチングサーバ400は、サーバ通信部409と、ルーム生成部4051と、ルーム入室部4052と、ルーム削除部4053と、メモリ406とを含む。
(マッチングサーバ400の機能)
まず、マッチングサーバ400が有する機能について説明する。前述したように、メモリ406は、ルーム管理テーブル406Aを記憶する。
サーバ通信部409は、インターネット網500やキャリア網700を介して、第1の携帯電話100Aや第2の携帯電話100Bとデータの送受信を行う。たとえば、サーバ通信部409は、第1の携帯電話100Aから、新たなルームを生成するための生成要求や、ルームを削除するための削除要求などを受信する。また、サーバ通信部409は、第2の携帯電話100Bから、ルームの存否を問い合わせるための検索要求や、ルームへ入室するための入室要求などを受信する
図10は、マッチングサーバ400と第1の携帯電話100Aおよび第2の携帯電話100Bとの間で送受信されるメッセージ(コマンド)の一例を示すイメージ図である。図10を参照して、生成要求は、ルームの生成を要求するためのメッセージであって、コマンド名は「RM_CREATE」である。第1の携帯電話100Aは、生成要求として、第1の携帯電話100AのIPアドレスと生成するルームのルーム名とを送信する。マッチングサーバ400は、生成要求を受け付けて、後述するようにルーム名に対応する新たなルームを生成する。マッチングサーバ400は、第1の携帯電話100Aにルームの生成に成功したか否かを示すメッセージを返信する。
検索要求は、ルームの検索を要求するためのメッセージであって、コマンド名は「RM_SEARCH」である。第2の携帯電話100Aは、検索要求として、第1の携帯電話100AのIPアドレスと検索するルーム名とを送信する。マッチングサーバ400は、検索要求を受け付けて、後述するようにルーム管理テーブル406Aにルーム名が記憶されているか否かを判断する。マッチングサーバ400はルーム名を有するルームが存在するか否かを示すメッセージを返信する。
削除要求は、ルームの削除を要求するためのメッセージであって、コマンド名は「RM_DELETE」である。第1の携帯電話100Aは、削除要求として、第1の携帯電話100AのIPアドレスと削除するルームのルーム名とを送信する。マッチングサーバ400は、削除要求を受け付けて、ルーム管理テーブル406Aからルーム名に対応するルームを削除する。マッチングサーバ400はルームの削除に成功したか否かを示すメッセージを返信する。
入室要求は、ルームに入室するためのメッセージであって、コマンド名は「RM_ENTRY」である。第2の携帯電話100Aは、入室要求として、第2の携帯電話100AのIPアドレスと入室するルーム名とを送信する。マッチングサーバ400は、入室要求を受け付けて、第2の携帯電話100BのIPアドレスをルーム名に対応付けてルーム管理テーブル406Aに格納する。マッチングサーバ400はルームへの入室に成功したか否かを示すメッセージを返信する。
図9に戻って、ルーム生成部4051とルーム入室部4052とルーム削除部4053とは、マッチングサーバ400のCPU405がメモリ406や固定ディスク407などに記憶されるプログラムを実行して図7に示される各ハードウェアを制御することによって発揮される機能である。たとえば、CPU405が有する各機能は、CPU405が、固定ディスク407に記憶されたプログラムを一旦メモリ406へと読み出して、メモリ406からそのプログラムを読み出しながら順次実行することによって実現される。
ルーム生成部4051は、第2の携帯電話100Bからサーバ通信部409を介して生成要求を受け付ける。ルーム生成部4051は、生成要求に応じて、当該生成要求に含まれるルーム名を有する新たなルームを生成する。すなわち、ルーム生成部4051は、当該ルーム名と第1の携帯電話100AのIPアドレスとを対応付けて、ルーム管理テーブル406Aに格納する。
ルーム入室部4052は、第2の携帯電話100Bからサーバ通信部409を介して、ルーム名を有するチャットルームの存否の問い合わせを受け付ける。ルーム入室部4052は、当該ルーム名がルーム管理テーブル406Aに格納されているか否かを判断する。ルーム入室部4052は、サーバ通信部409を介して、判断結果を第2の携帯電話100Bに送信する。
また、ルーム入室部4052は、第2の携帯電話100Bからサーバ通信部409を介して、チャットルームへの入室要求を受け付ける。ルーム入室部4052は、入室要求に応じて、入室要求に含まれるルーム名に対応付けて第2の携帯電話100BのIPアドレスをルーム管理テーブル406Aに格納する。ルーム入室部4052は、当該ルームに関する所定の条件が満たされると、当該ルームに入室している各通信装置に、当該ルームに入室している他の通信装置のIPアドレスを送信する。
なお、所定の条件とは、たとえばルーム名に対応付けられたIPアドレスの個数が予め設定された個数に達することや、あるいはルームが生成されてから予め設定された時間が経過することなどが該当する。
ルーム削除部4053は、第1の携帯電話100Aからサーバ通信部409を介して、ルーム名を有するチャットルームの削除要求を受け付ける。ルーム削除部4053は、削除要求に応じて、ルーム管理テーブル406Aの当該ルーム名に関するデータを削除する、あるいはルーム管理テーブル406Aの当該ルーム名に対応する削除フラグなどをONする。
(第1の携帯電話100Aの機能)
次に、第1の携帯電話100Aが有する機能について説明する。第1の通信部101−1は、第1の携帯電話100Aの通信部101あるいはTEL用通信部102によって実現される。第1の記憶部103−1は、第1の携帯電話100Aの記憶部103によって実現される。第1の入力部110−1は、第1の携帯電話100Aの入力部110によって実現される。第1の生成部1061−1および第1の通信制御部1062−1は、第1の携帯電話100Aの制御部106が記憶部103に記憶されるプログラムを実行して図5に示される各ハードウェアを制御することによって発揮される機能である。
第1の記憶部103−1は、第1の携帯電話100Aを特定するための第1の識別情報(電話番号やメールアドレスやIPアドレスなど)と第2の携帯電話100Bを特定するための第2の識別情報(電話番号やメールアドレスやIPアドレスなど)とを格納する。より詳細には、第1の記憶部103−1は、アドレス帳データ103B、自端末データ103C、自端末のIPアドレスデータ103D、自端末のIPアドレスデータ103Eなどを記憶する。
第1の生成部1061−1は、第1の入力部110−1を介して、ユーザからP2P通信を開始するための開始命令を受け付ける。より詳細には、ユーザは、アドレス帳からP2P通信における相手通信装置を選択して、P2P通信を開始する旨を入力する。すなわち、開始命令は、アドレス帳のメモリNo.などを含む。第1の生成部1061−1は、開始命令に応じて、自身の電話番号と他端末(第2の携帯電話100B)の電話番号とに基づいて、新たなルーム名を生成する。
第1の通信制御部1062−1は、第1の通信部101−1を用いて、新たなチャットルームを生成する生成要求をマッチングサーバ400へ送信する。そして、第1の通信制御部1062−1は、第1の通信部101−1を用いて、第2の携帯電話100Bの電話番号に基づき、キャリア網700を介して第2の携帯電話100Bへ電話をかける(発呼する)。また、第1の通信制御部1062−1は、第1の入力部110−1を介してユーザからのP2P通信の接続を中断する命令を受け付けて、ルーム名に対応するルームを削除する(クローズする)ための削除命令を第1の通信部101−1を介してマッチングサーバ400に送信する。
(第2の携帯電話100Bの機能)
次に、第2の携帯電話100Bが有する機能について説明する。第2の通信部101−2は、第2の携帯電話100Bの通信部101あるいはTEL用通信部102によって実現される。第2の記憶部103−2は、第2の携帯電話100Bの記憶部103によって実現される。第2の入力部110−2は、第2の携帯電話100Bの入力部110によって実現される。第2の生成部1061−2および第2の通信制御部1062−2は、第2の携帯電話100Bの制御部106が記憶部103に記憶されるプログラムを実行して図5に示される各ハードウェアを制御することによって発揮される機能である。
第2の記憶部103−2は、第2の携帯電話100Bを特定するための第2の識別情報(電話番号やメールアドレスやIPアドレスなど)と第1の携帯電話100Aを特定するための第1の識別情報(電話番号やメールアドレスやIPアドレスなど)とを格納する。より詳細には、第1の記憶部103−1は、アドレス帳データ103B、自端末データ103C、自端末のIPアドレスデータ103D、自端末のIPアドレスデータ103Eなどを記憶する。
第2の通信制御部1062−2および第2の生成部1061−2は、第2の通信部101−2を介して、第1の携帯電話100Aから、電話を受け付ける(着呼する)。第2の生成部1061−2は、着呼に応じて、第1の携帯電話100Aの電話番号と自身の電話番号とに基づいて、新たなルーム名を生成する。第2の通信制御部1062−2は、第2の通信部101−2を介して、マッチングサーバ400に、ルーム名に対応するチャットルームが存在するか否かを問い合わせる。
第2の通信制御部1062−2は、ルーム名に対応するチャットルームが存在する場合、図5に示す第1の通知部111や第2の通知部112を稼動することによって、P2P通信の呼びかけを受けた旨をユーザに知らしめる。そして、第2の入力部110を介してユーザからP2P通信を開始するか否かを待ち受ける。第2の通信制御部1062−2は、ルーム名に対応するチャットルームが存在しない場合、図5に示す第1の通知部111や第2の通知部112を稼動することによって、通話の呼びかけを受けた旨をユーザに知らしめる。
第2の入力部110−2は、ルーム名に対応するチャットルームが存在する場合、P2P通信を開始する命令、あるいはルームに入室する入室命令を受け付ける。入室命令に応じて、第2の通信制御部1062−2は、第2の通信部101−2を介してマッチングサーバ400に入室要求を送信する。これによって、第2の通信制御部1062−2は、マッチングサーバ400から相手の通信装置のIPアドレスを取得することができ、第2の通信部101−2を介してP2P通信を行うことが可能にある。
そして、第1の携帯電話100Aは、P2P通信における相手をチャットルームに招待する機能だけでなく、第2の携帯電話100Bが有するようなチャットルームに招待される機能を有してもよい。逆に、第2の携帯電話100Bは、P2P通信における相手からチャットルームに招待される機能だけでなく、第1の携帯電話100Aが有するようなチャットルームに招待する機能を有してもよい。
すなわち、第1の通信制御部1062−1が、第1の通信部101−1を介して第2の携帯電話100Bからの電話を受け付けると、第1の生成部1061−1が第1および第2の携帯電話の電話番号に基づいてルーム名を生成する。第1の通信制御部1062−1は、マッチングサーバ400にルーム名に対応するチャットルームが存在するか否かを問い合わせる。第1の入力部110−1は、当該チャットルームが存在する場合、ユーザからP2P通信に応答するか否かの命令を待ち受ける。一方、第1の入力部110−1は、チャットルームが存在する場合、ユーザから通話に応答するか否かの命令を待ち受ける。
(ルーム名の生成)
ここで、第1の生成部1061−1、第2の生成部1061−2によるルーム名の生成方法について説明する。
たとえば、第1の生成部1061−1は、第1の携帯電話100Aの第1の電話番号と、第2の携帯電話100Bの第2の電話番号とを単純に並べたルーム名を生成する。電話番号は、各端末に固有のデータであるため、第1の電話番号と第2の電話番号とを並べたルーム名は、各グループに固有のデータであって、他のグループのルーム名と重複することがない。
あるいは、第1の生成部1061−1は、第1の携帯電話100Aの電話番号に対応する他の識別情報(メールアドレスやニックネームなど)と、第2の携帯電話100Bの他の識別情報とを、アルファベット順に並べたルーム名を生成してもよい。
また、第1の生成部1061−1は、ハッシュ関数などを用いて第1の電話番号と第2の電話番号とを暗号化した上で、それらを並べてルーム名を生成してもよい。本実施の形態に係るネットワークシステム1においては、元のデータを復元する必要がないため、暗号化の方法は、元のデータがより復元し難いことが好ましい。たとえば、不可逆な関数を用いて、電話番号を暗号化することが好ましい。
本実施の形態に係るネットワークシステム1においては、第2の生成部1061−2が、第1の生成部1061−1と同様の方法でルーム名を生成する。このため、招待される第2の携帯電話100Bが自身でルーム名を生成することができる。すなわち、P2P通信を開始する前に、第1の携帯電話100Aのユーザがルーム名を第2の携帯電話100Bのユーザに通知する必要がなくなる。特に、第1の携帯電話100Aが第2の携帯電話100Bに電話をかけるだけで、第2の携帯電話100Bがルーム名を取得することができるため、第1の携帯電話100Aと第2の携帯電話100BのユーザがP2P通信を開始するまでに行う手間を大幅に削減することができる。
このように、本実施の形態に係るネットワークシステム1においては、各通信装置にて他のチャットルームのルーム名と重複しないルーム名を生成するため、各通信装置のユーザが他のチャットルームのルーム名と重複しないルーム名を考える必要がない。また、一般的に、メールアドレスは各通信装置を特定することができる識別情報であるが故に比較的多くの文字数を含む。そのため、第1のメールアドレスと第2のメールアドレスとを含むチャートルーム毎のルーム名をユーザが入力することは面倒である。本実施の形態に係るネットワークシステム1は、そのようなユーザの手間も省くことができる。
<携帯電話100における通信処理>
次に、本実施の形態に係る携帯電話100における通信処理について説明する。図11は、本実施の形態に係る携帯電話100における通信処理の処理手順を示すフローチャートである。
図11を参照して、制御部106は、メインディスプレイ107に待ち受け画面を表示させる(ステップS052)。制御部106は、アドレス帳ボタン110Dが操作されたか否かを判断する(ステップS054)。アドレス帳ボタン110Dが操作された場合(ステップS054にてYESである場合)、制御部106は、発呼処理(ステップS500)を実行する。なお、発呼処理(ステップS500)については後述する。
アドレス帳ボタン110Dが操作されない場合(ステップS054にてNOである場合)、制御部106は、電話の呼び出し(着呼)があるか否かを判断する(ステップS056)。電話の呼び出しがあった場合(ステップS056にてYESである場合)、制御部106は、着呼処理(ステップS100)を実行する。着呼処理(ステップS100)については後述する。電話の呼び出しがない場合(ステップS056にてNOである場合)、制御部106はステップS054からの処理を繰り返す。
<携帯電話100における発呼処理>
次に、本実施の形態に係る携帯電話100における発呼処理について説明する。図12は、本実施の形態に係る携帯電話100における発呼処理の処理手順を示すフローチャートである。
図12を参照して、制御部106は、アドレス帳ボタン110Dが操作された場合(ステップS054にてYESである場合)、アドレス帳データ103Bに基づいて、メインディスプレイ107にアドレス帳を一覧表示させる(ステップS502)。ユーザは、入力部110を介してP2P通信における相手の通信装置を選択する。すなわち、制御部106は、入力部110を介して通信装置の選択命令を受け付ける(ステップS504)。
制御部106は、相手の通信装置が選択された状態において、TELボタン110Aが操作されたか否かを判断する(ステップS506)。TELボタン110Aが操作された場合(ステップS506にてYESである場合)、制御部106は、TEL発呼処理(ステップS600)を実行する。TEL発呼処理(600)については後述する。
TELボタン110Aが操作されない場合(ステップS506にてNOである場合)、制御部106は、P2Pボタンが操作されたか否かを判断する(ステップS510)。P2Pボタンが操作された場合(ステップS510にてYESである場合)、制御部106は、P2P発呼処理(ステップS800)を実行する。
P2Pボタンが操作されない場合(ステップS510にてNOである場合)、制御部106は、終了ボタン110Eが操作されたか否かを判断する(ステップS512)。終了ボタン110Eが操作された場合(ステップS512にてYESである場合)、制御部106は、発呼処理を終了して、ステップS056からの処理を繰り返す。終了ボタンが操作されない場合(ステップS512にてNOである場合)、制御部106は、ステップS506からの処理を繰り返す。
<携帯電話100におけるTEL発呼処理>
次に、本実施の形態に係る携帯電話100におけるTEL発呼処理について説明する。図13は、本実施の形態に係る携帯電話100におけるTEL発呼処理の処理手順を示すフローチャートである。
図13を参照して、制御部106は、TELボタン110Aが操作された場合(ステップS506にてYESである場合)、TEL用通信部102を用いてSELに格納されているメモリNoに対応する電話番号に発呼する(ステップS602)。すなわち、制御部106は、通信部101あるいはTEL用通信部102を介して、アドレス帳から選択された相手通信装置に電話をかける。
制御部106は、TELボタン110Aが切断用の操作をされたか否かを判断する(ステップS604)。TELボタンが切断用の操作をされた場合(ステップS604にてYESである場合)、制御部106は、TELの発呼を中断したうえで(ステップS612)、ステップS052からの処理を繰り返す。TELボタンが切断用の操作をされない場合(ステップS604にてNOである場合)、制御部106は、相手通信装置の応答を待ち受ける(ステップS606)。相手通信装置の応答が無い場合(ステップS606にてNOである場合)、制御部106は、ステップS604からの処理を繰り返す。
相手通信装置の応答が有った場合(ステップS606にてYESである場合)、制御部106は、通話制御を行う(ステップS608)。制御部106は、TELボタン110Aが切断用の操作をされた、あるいは切断信号を受信した場合(ステップS310にてYESである場合)、TEL発呼処理を終了してステップS052からの処理を繰り返す。制御部106は、TELボタン110Aが切断用の操作をされず、切断信号も受信しない場合(ステップS610にてNOである場合)、ステップS608からの処理を繰り返す。
<携帯電話100におけるP2P発呼処理>
次に、本実施の形態に係る携帯電話100におけるP2P発呼処理について説明する。図14は、本実施の形態に係る携帯電話100におけるP2P発呼処理の処理手順を示すフローチャートである。
図14を参照して、P2Pボタン110Cが操作された場合(ステップS510にてYESである場合)、制御部106は、P2P通信における相手通信装置に発呼する(ステップS802)。このとき、制御部106は、AdrDB[SEL].TELNoから読み出した電話番号の先頭に「186」を付与したうえで、すなわち自端末の電話番号を相手が認識できるモードにおいて、TEL用通信部102を介して相手通信装置に発呼する。
制御部106は、相手通信装置から応答があるか否かを判断する(ステップS804)。相手の通信装置から応答があった場合(ステップS804にてYESである場合)、制御部106はステップS608からの処理を繰り返す。
相手の通信装置から応答がない場合(ステップS804にてNOである場合)、制御部106は発呼の開始時刻から予め設定された時間が経過したか否かを判断する(ステップS806)。発呼の開始時刻から予め設定された時間が経過していない場合(ステップS806にてNOである場合)、制御部106はステップS804からの処理を繰り返す。発呼の開始時刻から予め設定された時間が経過した場合(ステップS806にてYESである場合)、制御部106は発呼を終了したうえで(ステップS808)、所定のルールに基づいて、AdrDB[SEL].TELNoの番号とMyAdr.TELNoの番号からチャットルーム名を生成する(ステップS810)。たとえば、制御部106は、記憶部103のRMNMにHASH関数の戻り値、HASH(AdrDB[SEL].TELNo,MyAdr.TELNo)を代入する。
制御部106は、通信部101を介して、インターネット網500に接続する(ステップS812)。このとき、携帯電話100には、IPアドレスが割り当てられる。制御部106は、通信部101を介して、マッチングサーバ400にRMNMのチャットルーム名を有するチャットルームを生成するための生成要求を送信する(ステップS814)。
制御部106は、入力部110を介して、ユーザによってP2Pボタンが操作されたか否かを判断する(ステップS816)。すなわち、制御部106は、ユーザからP2P通信を中断するための命令を受け付けたか否かを判断する。ユーザによってP2Pボタンが操作された場合(ステップS816にてYESである場合)、制御部106は通信部101を介してマッチングサーバ400にRMNMのチャットルーム名を有するチャットルームを削除するための削除要求を送信して(ステップS818)、ステップS052からの処理を繰り返す。
ユーザによってP2Pボタンが操作されない場合(ステップS816にてNOである場合)、制御部106は、P2P通信における相手通信装置のIPアドレスを受信したか否かを判断する(ステップS820)。P2P通信における相手通信装置のIPアドレスを受信しない場合(ステップS820にてNOである場合)、制御部106はステップS816からの処理を繰り返す。
P2P通信における相手の通信装置のIPアドレスを受信した場合(ステップS820にてYESである場合)、制御部106は、当該IPアドレスをHIS_IPADRに記憶する(ステップS822)。制御部106は通信部101を介してマッチングサーバ400にRMNMのチャットルーム名を有するチャットルームを削除するための削除要求を送信し(ステップS824)、P2P通信の制御を開始する(ステップS826)。
制御部106は、入力部110を介して、ユーザによってP2Pボタンが操作されたか否か(あるいはP2P通信における相手通信装置から通信終了通知を受信したか否か)を判断する(ステップS828)。すなわち、制御部106はユーザからP2P通信を中断するための命令を受け付けたか否かを判断する。P2Pボタンが操作されない場合(ステップS828にてNOである場合)、制御部106はステップS826からの処理を繰り返す。P2Pボタンが操作された場合(ステップS828にてYESである場合)、制御部106はインターネット網500への接続を解除する(ステップS830)。
<携帯電話100における着呼処理>
次に、本実施の形態に係る携帯電話100における着呼処理について説明する。図15は、本実施の形態に係る携帯電話100における着呼処理の処理手順を示すフローチャートである。
図15を参照して、電話の呼び出しがあった場合(ステップS056にてYESである場合)、制御部106は、発信者の電話番号が通知されているか否かを判断する(ステップS102)。発信者の電話番号が通知されていない場合(ステップS102にてNOである場合)、制御部106はTEL着呼処理を実行する(ステップS200)。TEL着呼処理については後述する。
一方、発信者の電話番号が通知されている場合(ステップS102にてYESである場合)、制御部106は発信者の電話番号をRCVTELNOに記憶する(ステップS104)。制御部106は、RCVTELNOの番号が、AdrDB[]に記憶されているいずれかの番号に一致するか否かを判断する(ステップS106)。RCVTELNOの番号が、AdrDB[]に記憶されているいずれかの番号に一致しない場合(ステップS106にてNOである場合)、制御部106はTEL着呼処理を実行する(ステップS200)。
一方、RCVTELNOの番号が、AdrDB[]に記憶されているいずれかの番号に一致する場合(ステップS106にてYESである場合)、制御部106は電話の呼び出し(着呼状態)が終了したか否かを判断する(ステップS108)。電話の呼び出しが終了しない場合、制御部106は呼び出し期間が予め設定された時間に達するか否かを判断する(ステップS110)。呼び出し期間が予め設定された時間に達する場合(ステップS110にてYESである場合)、制御部106はTEL着呼処理を実行する(ステップS200)。呼び出し期間が予め設定された時間に達しない場合(ステップS110にてNOである場合)、制御部106はステップS108からの処理を繰り返す。
一方、呼び出し期間が予め設定された時間に達する前に電話の呼び出しが終了した場合(ステップS108にてYESである場合)、制御部106は通信部101を介してインターネット網500に接続する(ステップS112)。このとき、携帯電話100には、IPアドレスが割り当てられる。
制御部106は、所定のルールに基づいて、RCVTELNOの番号とMyAdr.TELNoの番号からチャットルーム名を生成する(ステップS114)。たとえば、制御部106は、RMNMにHASH関数の戻り値、HASH(RCVTELNO,MyAdr.TELNo)を代入する。
制御部106は、通信部101を介してマッチングサーバ400に、RMNMに格納されているチャットルーム名を有するチャットルームが存在するか否かを問い合わせる(ステップS116)。RMNMに格納されているチャットルーム名を有するチャットルームが存在する場合(ステップS116にてYESである場合)、制御部106はP2P着呼処理(ステップS300)を実行する。P2P着呼処理(ステップS300)については後述する。
一方、RMNMに格納されているチャットルーム名を有するチャットルームが存在しない場合(ステップS116にてNOである場合)、制御部106は、通信部101を介してインターネット網500への接続を解除する(ステップS118)。制御部106は、所定時間だけ第1の通知部111を稼動した後(ステップS120)、第1の通知部111を停止する(ステップS122)。制御部106は、第2の通知部112を点灯させて(ステップS124)、ステップS052からの処理を繰り返す。
<携帯電話100におけるTEL着呼処理>
次に、本実施の形態に係る携帯電話100におけるTEL着呼処理について説明する。図16は、本実施の形態に係る携帯電話100におけるTEL着呼処理の処理手順を示すフローチャートである。
図16を参照して、電話の呼び出しがあった場合(ステップS056にてYESである場合)、制御部106は、第1の通知部111を稼動して(ステップS204)、TEL用LED112Aを点滅させる(ステップS206)。
制御部106は、着呼が終了したか否かを判断する(ステップS208)。制御部106は、着呼が終了した場合(ステップS208にてYESである場合)、通知部111を停止する(ステップS210)。制御部106は、TEL用LED112Aを点灯させて(ステップS212)、ステップS052からの処理を繰り返す。
制御部106は、着呼が終了しなかった場合(ステップS208にてNOである場合)、TELボタン110Aが操作されたか否かを判断する(ステップS214)。制御部106は、TELボタン110Aが操作されなかった場合(ステップS214にてNOである場合)、ステップS208からの処理を繰り返す。制御部106は、TELボタン110Aが操作された場合(ステップS214にてYESである場合)、第1の通知部111を停止して(ステップS216)、TEL用LED112Aを消灯させる(ステップS218)。
制御部106は、着信応答モードへ移行して、すなわちオンフックモードへ移行したうえで(ステップS220)、通話制御を行う(ステップS222)。制御部106は、TELボタン110Aが操作されたか否か(切断信号を受信したか否か)を判断する(ステップS224)。制御部106は、TELボタン110Aが操作された場合(ステップS224にてYESである場合)、TEL着呼処理を終了してステップS052からの処理を繰り返す。制御部106は、TELボタン110Aが操作されず、切断信号も受信しない場合(ステップS224にてNOである場合)、ステップS222からの処理を繰り返す。
<携帯電話100におけるP2P着呼処理>
次に、本実施の形態に係る携帯電話100におけるP2P着呼処理について説明する。図17は、本実施の形態に係る携帯電話100におけるP2P着呼処理の処理手順を示すフローチャートである。
図17を参照して、制御部106は、マッチングサーバ400にRMNMのチャットルーム名を有するチャットルームが存在する場合(ステップS116にてYESである場合)、制御部106は、第1の通知部111を稼動して(ステップS302)、P2P用LED112Bを点滅させる(ステップS304)。ここで、制御部106は、通信部101を介して、マッチングサーバ400にRMNMのチャットルーム名を有するチャットルームが存在するか否かを問い合わせる(ステップS306)。換言すれば、制御部106は、マッチングサーバ400のRMNMのチャットルーム名を有するチャットルームが既に閉鎖されたか否かを判断する。
制御部106は、RMNMのチャットルーム名を有するチャットルームが存在しない場合(ステップS306にてNOである場合)、第1の通知部111を停止する(ステップS308)。制御部106は、P2P用LED112Bを点灯させて(ステップS310)、S052からの処理を繰り返す。このとき、制御部106は、記憶部103に着履登録する。
RMNMのチャットルーム名を有するチャットルームが存在する場合(ステップS306にてYESである場合)、制御部106は、入力部110を介して、ユーザからP2Pボタンの操作命令を待ち受ける(ステップS312)。制御部106は、P2P通信を行う旨の命令が入力されない場合(ステップS312にてNOである場合)、ステップS306からの処理を繰り返す。
入力部110を介してP2P通信を行う旨の命令が入力されると、すなわちユーザがチャットルームへの入室命令を入力すると(ステップS312にてYESである場合)、制御部106は、第1の通知部111を停止したうえで(ステップS314)、P2P用LED112Bを消灯する(ステップS316)。
制御部106は、通信部101を介してマッチングサーバ400のチャットルームへ入室する(ステップS318)。すなわち、制御部106は、通信部101を介してマッチングサーバ400に入室要求を送信し、マッチングサーバ400からP2P通信における相手のIPアドレスを取得する。制御部106は、相手のIPアドレスをHIS_IPADRに記憶して(ステップS320)、P2P通信の制御を行う(ステップS322)。
制御部106は、入力部110を介して、ユーザによってP2Pボタンが操作されたか否か(あるいはP2P通信における相手通信装置から通信終了通知を受信したか否か)を判断する(ステップS324)。すなわち、制御部106はユーザからP2P通信を中断するための命令を受け付けたか否かを判断する。P2Pボタンが操作されない場合(ステップS324にてNOである場合)、制御部106はステップS322からの処理を繰り返す。P2Pボタンが操作された場合(ステップS324にてYESである場合)、制御部106はインターネット網500への接続を解除する(ステップS326)。すなわち、制御部106は、P2P着呼処理を終了したうえで、ステップS056からの処理を繰り返す。
<マッチングサーバ400における応答処理>
次に、本実施の形態に係るマッチングサーバ400における応答処理について説明する。図18は、本実施の形態に係るマッチングサーバ400における応答処理の処理手順を示すフローチャートである。
図18を参照して、マッチングサーバ400のCPU405は、サーバ通信部409を介して、第1の携帯電話100Aからメッセージを待ち受ける(ステップS902)。CPU405は、第1の携帯電話100Aからメッセージを受け付けると(ステップS902にてYESである場合)、メッセージがチャットルームを生成するための生成要求であるか否かを判断する(ステップS904)。
メッセージがチャットルームを生成するための生成要求である場合(ステップS904にてYESである場合)、CPU406は生成要求に含まれるルーム名がルーム管理テーブル406Aに存在するか否かを判断する(ステップS906)。ルーム名がルーム管理テーブル406Aに存在する場合(ステップS906にてYESである場合)、CPU406はルームの生成に失敗した旨を通知して(ステップS932)、ステップS902からの処理を繰り返す。
ルーム名がルーム管理テーブル406Aに存在しない場合(ステップS906にてNOである場合)、CPU406はルーム名のルームを生成する(ステップS908)。すなわち、CPU406は、ルーム管理テーブル406Aにルーム名と生成要求に含まれる呼び出し側のIPアドレスとを対応付けて記憶する。CPU406は、呼び出し側のIPアドレスにルームの生成が成功した旨を通知する(ステップS910)。
メッセージがチャットルームを生成するための生成要求でない場合(ステップS904にてNOである場合)、CPU406はメッセージがルーム名を検索するための検索要求であるか否かを判断する(ステップS912)。
メッセージがチャットルームを検索するための検索要求である場合(ステップS912にてYESである場合)、検索要求に含まれるルーム名がルーム管理テーブル406Aに存在するか否かを判断する(ステップS914)。ルーム名がルーム管理テーブル406Aに存在する場合(ステップS914にてYESである場合)、CPU406は要求元のIPアドレスにルームが見つかった旨を通知して(ステップS910)、ステップS902からの処理を繰り返す。
ルーム名がルーム管理テーブル406Aに存在しない場合(ステップS914にてNOである場合)、CPU406は要求元のIPアドレスにルーム名が見つからない旨を通知して(ステップS932)、ステップS902からの処理を繰り返す。
メッセージがチャットルームを検索するための検索要求でない場合(ステップS912にてNOである場合)、CPU406はメッセージがチャットルームを削除するための削除要求であるか否かを判断する(ステップS916)。
メッセージがチャットルームを削除するための削除要求である場合(ステップS916にてYESである場合)、CPU406は、要求元のIPアドレスが削除要求に含まれるルーム名に対応付けられてルーム管理テーブル406Aに格納されているか否かを判断する(ステップS918)。すなわち、CPU406は、要求元の通信装置が、チャットルームに既に入室している通信装置であるか否かを判断する。要求元のIPアドレスが削除要求に含まれるルーム名に対応付けられてルーム管理テーブル406Aに格納されている場合(ステップS918にてYESである場合)、CPU406はルーム名のチャットルームを削除する(ステップS920)。CPU406は、要求元のIPアドレスにチャットルームの削除が成功した旨を通知して(ステップS910)、ステップS902からの処理を繰り返す。
要求元のIPアドレスが削除要求に含まれるルーム名に対応付けられてルーム管理テーブル406Aに格納されている場合(ステップS918にてNOである場合)、CPU406は要求元のIPアドレスにチャットルームの削除が失敗した旨を通知して(ステップS932)、ステップS902からの処理を繰り返す。
メッセージがチャットルームを削除するための削除要求でない場合(ステップS916にてNOである場合)、CPU406はメッセージがチャットルームに入室するための入室要求であるか否かを判断する(ステップS922)。
メッセージがチャットルームに入室するための入室要求である場合(ステップS922にてYESである場合)、CPU406は、入室要求に含まれるルーム名がルーム管理テーブル406Aに格納されているか否かを判断する(ステップS924)。入室要求に含まれるルーム名がルーム管理テーブル406Aに格納されている場合(ステップS924にてYESである場合)、CPU406はルーム名に対応付けて要求元のIPアドレスをルーム管理テーブル406Aに登録する(ステップS926)。
CPU406は、サーバ通信部409を介して、ルーム名に対応付けられてルーム管理テーブル406Aに既に登録されているIPアドレスに、要求元のIPアドレスを送信する(ステップS928)。CPU406は、サーバ通信部409を介して、要求元のIPアドレスに、ルーム名に対応付けられてルーム管理テーブル406Aに既に登録されているIPアドレスを送信する(ステップS930)。
そして、CPU406は、ステップS902からの処理を繰り返す。一方、メッセージがチャットルームに入室するための入室要求でない場合(ステップS922にてNOである場合)、および入室要求に含まれるルーム名がルーム管理テーブル406Aに格納されていない場合(ステップS924にてNOである場合)、CPU406は要求元のIPアドレスにエラーメッセージを送信して(ステップS932)、ステップS902からの処理を繰り返す。
以上、本実施の形態においては、ネットワークシステム1を、各通信装置が、他の通信装置に対する通話処理や発呼処理を行いながら、同時に、マッチングサーバ400に対するデータ通信処理や他の通信装置に対するP2P通信処理を行わないタイプとして、説明を行った。ただし、上記の技術は、各通信装置がこれらの処理を同時に(時分割あるいは周波数分割によって)行えるタイプのネットワークシステム1に適用することも可能である。
本発明は、システム或いは装置にプログラムを供給することによって達成される場合にも適用できることはいうまでもない。そして、本発明を達成するためのソフトウェアによって表されるプログラムを格納した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の効果を享受することが可能となる。
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
プログラムコードを供給するための記憶媒体としては、例えば、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード(ICメモリカード)、ROM(マスクROM、フラッシュEEPROMなど)などを用いることができる。
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
本実施の形態に係るネットワークシステムの全体構成を示す概略図である。 ネットワークシステムにおける動作概要を示すシーケンス図である。 ネットワークシステムにおける接続手順を示すイメージ図である。 携帯電話の概観を示すイメージ図である。 携帯電話のハードウェア構成を示すブロック図である。 アドレス帳データと自端末データと他端末のIPアドレスデータと自端末のIPアドレスデータとを示すイメージ図である。 マッチングサーバ400のハードウェア構成を示すブロック図である。 ルーム管理テーブルのデータ構造を示す第1のイメージ図とルーム管理テーブルのデータ構造を示す第2のイメージ図である。 ネットワークシステムの機能構成を示すブロック図である。 マッチングサーバと第1の携帯電話および第2の携帯電話との間で送受信されるメッセージ(コマンド)の一例を示すイメージ図である。 携帯電話における通信処理の処理手順を示すフローチャートである。 携帯電話における発呼処理の処理手順を示すフローチャートである。 携帯電話におけるTEL発呼処理の処理手順を示すフローチャートである。 携帯電話におけるP2P発呼処理の処理手順を示すフローチャートである。 携帯電話における着呼処理の処理手順を示すフローチャートである。 携帯電話におけるTEL着呼処理の処理手順を示すフローチャートである。 携帯電話におけるP2P着呼処理の処理手順を示すフローチャートである。 マッチングサーバにおける応答処理の処理手順を示すフローチャートである。
符号の説明
1 ネットワークシステム、100,100A,100B,100C 携帯電話、101、101−1,102−2 通信部、103,103−1,103−2 記憶部、103A,103A−1,103A−2 ワークメモリ、103B,103B−1,103B−2 アドレス帳データ、103C,103C−1,103C−2 自端末データ、103D,103D−1,103D−2 IPアドレスデータ、106,106−1,106−2 制御部、1061,1061−1,1061−2 生成部、1062,1062−1,1062−2 通信制御部、107 メインディスプレイ、108 マイク、109 スピーカ、110,110−1,110−2 入力部、200 カーナビゲーション装置、300 パーソナルコンピュータ、400 マッチングサーバ、405A ルーム生成部、405B ルーム入室部、405C ルーム削除部、406 メモリ、406A ルーム管理テーブル、407 固定ディスク、408 内部バス、409 サーバ通信部、500 インターネット網、700 キャリア網。

Claims (9)

  1. 第1および第2の通信装置とサーバ装置とを備えるネットワークシステムであって、
    前記第1の通信装置は、
    ネットワークを介して前記第2の通信装置および前記サーバ装置との間でデータを送受信する第1の通信部と、
    前記第1および第2の通信装置を特定するための第1および第2の識別情報を格納する第1の記憶部と、
    前記第1の識別情報および第2の識別情報の少なくともいずれかに基づいてルーム名を生成する第1の生成手段と、
    前記第1の通信部を用いて、前記第2の識別情報に基づいて前記第2の通信装置へ接続するとともに、前記第1および第2の通信装置が情報を交換するための前記ルーム名を有するルームを生成するための生成要求を前記サーバ装置へ送信する第1の通信制御手段とを含み、
    前記第1の通信制御手段は、外部からの第1の命令に応じて、前記第1の通信部を用いて、前記ルーム名を有するルームを削除するための削除要求を前記サーバ装置へ送信し、
    前記サーバ装置は、
    前記ネットワークを介して前記第1および第2の通信装置との間でデータを送受信するサーバ通信部と、
    前記第1の通信装置からの前記生成要求に応じて、前記ルーム名を有するルームを生成するルーム生成手段と、
    前記第1の通信装置からの前記削除要求に応じて、前記ルーム名を有するルームを削除するルーム削除手段とを含み、
    前記第2の通信装置は、
    前記ネットワークを介して前記第1の通信装置および前記サーバ装置との間でデータを送受信する第2の通信部と、
    前記第1および第2の識別情報を格納する第2の記憶部と、
    前記第1の通信装置からの接続を受け付けた際に、前記第1および第2の識別情報の少なくともいずれかに基づいてルーム名を生成する第2の生成手段と、
    前記第2の通信部を用いて、前記サーバ装置に前記ルーム名を有する前記ルームが存在するか否かを問い合わせる第2の通信制御手段と、
    前記ルームが存在している間、外部からの第2の命令を受け付ける入力部とを含み、
    前記第2の通信制御手段は、前記第2の命令に応じて、前記第2の通信部を用いて前記ルーム名を有するルームにアクセスする、ネットワークシステム。
  2. 通信装置であって、
    ネットワークを介して他の通信装置およびサーバ装置との間でデータを送受信する通信部と、
    前記通信装置および前記他の通信装置を特定するための第1および第2の識別情報を格納する記憶部と、
    前記第1の識別情報および第2の識別情報の少なくともいずれかに基づいてルーム名を生成する生成手段と、
    前記通信部を用いて、前記第2の識別情報に基づいて前記他の通信装置へ接続するとともに、前記通信装置および前記他の通信装置が情報を交換するための前記ルーム名を有するルームを生成するための生成要求を前記サーバ装置へ送信する通信制御手段とを備え、
    前記通信制御手段は、外部からの第1の命令に応じて、前記通信部を用いて、前記ルーム名を有するルームを削除するための削除要求を前記サーバ装置へ送信する、通信装置。
  3. 前記生成手段は、前記他の通信装置からの接続を受け付けた際に、前記第1および第2の識別情報の少なくともいずれかに基づいてルーム名を生成し、
    前記通信制御手段は、前記通信部を用いて、前記サーバ装置に前記ルーム名を有する前記ルームが存在するか否かを問い合わせ、
    前記ルームが存在している間、外部からの第2の命令を受け付ける入力部をさらに備え、
    前記通信制御手段は、前記第2の命令に応じて、前記通信部を用いて前記ルーム名を有するルームにアクセスする、請求項2に記載の通信装置。
  4. 通信装置であって、
    ネットワークを介して他の通信装置およびサーバ装置との間でデータを送受信する通信部と、
    前記通信装置および前記他の通信装置を特定するための第1および第2の識別情報を格納する記憶部と、
    前記他の通信装置からの接続を受け付けた際に、前記第1および第2の識別情報の少なくともいずれかに基づいてルーム名を生成する生成手段と、
    前記通信部を用いて、前記サーバ装置に前記ルーム名を有する前記ルームが存在するか否かを問い合わせる通信制御手段と、
    前記ルームが存在している間、外部からの第2の命令を受け付ける入力部とを備え、
    前記通信制御手段は、前記第2の命令に応じて、前記通信部を用いて前記ルーム名を有するルームにアクセスする、通信装置。
  5. 前記他の通信装置からの接続は、電話の着信であり、
    前記ルームが存在している間、外部に第1の通知を行ない、前記ルームが存在していない間、外部に第2の通知を行なう通知部をさらに備え、
    前記入力部は、前記ルームが存在していないとき、外部から電話の着信に応答するための第3の命令を受け付け、
    前記通信制御手段は、前記第3の命令に応じて、前記他の通信装置と通話するために前記通信部を制御する、請求項4に記載の通信装置。
  6. 通信装置における他の通信装置と通信するための通信方法であって、
    前記通信装置は、
    演算処理部と、
    ネットワークを介して前記他の通信装置およびサーバ装置との間でデータを送受信する通信部と、
    前記通信装置および前記他の通信装置を特定するための第1および第2の識別情報を格納する記憶部とを備え、
    前記演算処理部が、前記第1の識別情報および第2の識別情報の少なくともいずれかに基づいてルーム名を生成するステップと、
    前記演算処理部が、前記通信部を用いて、前記第2の識別情報に基づいて前記他の通信装置へ接続するステップと、
    前記演算処理部が、前記通信部を用いて、前記通信装置および前記他の通信装置が情報を交換するための前記ルーム名を有するルームを生成するための生成要求を前記サーバ装置へ送信するステップと、
    前記演算処理部が、外部からの第1の命令に応じて、前記通信部を用いて、前記ルーム名を有するルームを削除するための削除要求を前記サーバ装置へ送信するステップとを備える、通信方法。
  7. 通信装置における他の通信装置と通信するための通信方法であって、
    前記通信装置は、
    演算処理部と、
    ネットワークを介して前記他の通信装置およびサーバ装置との間でデータを送受信する通信部と、
    前記通信装置および前記他の通信装置を特定するための第1および第2の識別情報を格納する記憶部とを備え、
    前記演算処理部が、前記他の通信装置からの接続を受け付けた際に、前記第1および第2の識別情報の少なくともいずれかに基づいてルーム名を生成するステップと、
    前記演算処理部が、前記通信部を用いて、前記サーバ装置に前記ルーム名を有する前記ルームが存在するか否かを問い合わせるステップと、
    前記演算処理部が、前記ルームが存在している間、外部からの第2の命令を受け付けるステップと、
    前記演算処理部が、前記第2の命令に応じて、前記通信部を用いて前記ルーム名を有するルームにアクセスするステップとを備える、通信方法。
  8. 通信装置に他の通信装置と通信させるため通信プログラムであって、
    前記通信装置は、
    演算処理部と、
    ネットワークを介して前記他の通信装置およびサーバ装置との間でデータを送受信する通信部と、
    前記通信装置および前記他の通信装置を特定するための第1および第2の識別情報を格納する記憶部とを備え、
    前記通信プログラムは、演算処理部に、
    前記第1の識別情報および第2の識別情報の少なくともいずれかに基づいてルーム名を生成するステップと、
    前記通信部を用いて、前記第2の識別情報に基づいて前記他の通信装置へ接続するステップと、
    前記通信部を用いて、前記通信装置および前記他の通信装置が情報を交換するための前記ルーム名を有するルームを生成するための生成要求を前記サーバ装置へ送信するステップと、
    外部からの第1の命令に応じて、前記通信部を用いて、前記ルーム名を有するルームを削除するための削除要求を前記サーバ装置へ送信するステップとを実行させる、通信プログラム。
  9. 通信装置に他の通信装置と通信させるため通信プログラムであって、
    前記通信装置は、
    演算処理部と、
    ネットワークを介して前記他の通信装置およびサーバ装置との間でデータを送受信する通信部と、
    前記通信装置および前記他の通信装置を特定するための第1および第2の識別情報を格納する記憶部とを備え、
    前記通信プログラムは、前記演算処理部に、
    前記他の通信装置からの接続を受け付けた際に、前記第1および第2の識別情報の少なくともいずれかに基づいてルーム名を生成するステップと、
    前記通信部を用いて、前記サーバ装置に前記ルーム名を有する前記ルームが存在するか否かを問い合わせるステップと、
    前記ルームが存在している間、外部からの第2の命令を受け付けるステップと、
    前記第2の命令に応じて、前記通信部を用いて前記ルーム名を有するルームにアクセスするステップとを実行させる、通信プログラム。
JP2008257331A 2008-10-02 2008-10-02 ネットワークシステム、通信装置、通信方法、および通信プログラム Expired - Fee Related JP5354571B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2008257331A JP5354571B2 (ja) 2008-10-02 2008-10-02 ネットワークシステム、通信装置、通信方法、および通信プログラム
KR1020117007920A KR20110065513A (ko) 2008-10-02 2009-09-30 네트워크 시스템, 통신 장치, 통신 방법 및 컴퓨터 판독가능 기록매체
CN2009801390115A CN102172006A (zh) 2008-10-02 2009-09-30 网络系统、通信装置、通信方法、及通信程序
PCT/JP2009/067014 WO2010038769A1 (ja) 2008-10-02 2009-09-30 ネットワークシステム、通信装置、通信方法、および通信プログラム
EP09817801.5A EP2299672A4 (en) 2008-10-02 2009-09-30 NETWORK SYSTEM, COMMUNICATION DEVICE, COMMUNICATION PROCESS AND COMMUNICATION PROGRAM
US13/057,364 US20110153850A1 (en) 2008-10-02 2009-09-30 Network system, communication device, communication method, and communication program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008257331A JP5354571B2 (ja) 2008-10-02 2008-10-02 ネットワークシステム、通信装置、通信方法、および通信プログラム

Publications (2)

Publication Number Publication Date
JP2010088028A true JP2010088028A (ja) 2010-04-15
JP5354571B2 JP5354571B2 (ja) 2013-11-27

Family

ID=42073529

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008257331A Expired - Fee Related JP5354571B2 (ja) 2008-10-02 2008-10-02 ネットワークシステム、通信装置、通信方法、および通信プログラム

Country Status (6)

Country Link
US (1) US20110153850A1 (ja)
EP (1) EP2299672A4 (ja)
JP (1) JP5354571B2 (ja)
KR (1) KR20110065513A (ja)
CN (1) CN102172006A (ja)
WO (1) WO2010038769A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2014156769A1 (ja) * 2013-03-26 2017-02-16 シャープ株式会社 端末装置、基地局装置および制御装置

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8447813B2 (en) * 2010-07-26 2013-05-21 Scott Redmond Mobile multi-network communications device
TWI429308B (zh) * 2011-02-14 2014-03-01 Wistron Corp 建立點對點傳輸的方法及行動通訊系統
KR101927096B1 (ko) 2012-10-19 2018-12-10 삼성전자주식회사 어플리케이션 프로세서, 이를 구비하는 모바일 기기 및 어플리케이션 프로세서를 위한 클럭 신호 선택 방법
JP7366463B2 (ja) * 2019-09-25 2023-10-23 メイ、キャメロン 顧客の電話機と供給者の電話機との間の通話中に支払カード詳細を伝達する方法およびシステム

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002132694A (ja) * 2000-10-30 2002-05-10 Sanyo Electric Co Ltd チャットシステム、それに用いる端末およびサーバ、ならびにチャット方法
JP2002183064A (ja) * 2000-10-19 2002-06-28 Internatl Business Mach Corp <Ibm> 永続チャット・セッションの方法およびシステム
JP2002199134A (ja) * 2000-12-27 2002-07-12 Nec Corp 電話料金の表示システム、電話料金の請求システム、表示方法、請求方法及びこれらの方法を記録した記録媒体
JP2002278903A (ja) * 2001-03-15 2002-09-27 Sony Corp 情報処理装置および方法、記録媒体、並びにプログラム
JP2003506783A (ja) * 1999-08-04 2003-02-18 アメリカ オンライン インコーポレーテッド コンピュータ・ネットワークのユーザー間の交渉の管理
JP2003091494A (ja) * 2001-09-17 2003-03-28 Sanyo Electric Co Ltd チャットシステム
JP2003174520A (ja) * 2001-12-06 2003-06-20 Kyocera Corp 携帯通信端末、通話方法、通話プログラムおよび記録媒体

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004199134A (ja) 2002-12-16 2004-07-15 Dental Supply:Kk チャットシステム
JP2004247862A (ja) 2003-02-12 2004-09-02 Canon Inc 携帯電話及び携帯電話システム
JP2004274427A (ja) * 2003-03-10 2004-09-30 Sony Ericsson Mobilecommunications Japan Inc 通信システムおよび通信方法、送信装置および方法、並びに受信装置および方法
KR20040090527A (ko) * 2003-04-17 2004-10-26 박성우 이동통신단말기의 1:1 채팅 서비스 방법 및 이 채팅시광고 방법
JP2006140664A (ja) 2004-11-11 2006-06-01 Toshiba Corp 携帯電話端末および携帯電話通信システム
JP2007096486A (ja) 2005-09-27 2007-04-12 Oki Electric Ind Co Ltd 移動通信方式選択方法およびこれに用いる移動通信端末装置
US20070244968A1 (en) * 2006-04-18 2007-10-18 Sony Ericsson Mobile Communications Ab Method and arrangement in a communications network
JP4277028B2 (ja) * 2006-05-12 2009-06-10 株式会社カシオ日立モバイルコミュニケーションズ 無線通信端末装置、無線通信方法及びプログラム
CN100555972C (zh) * 2007-03-30 2009-10-28 腾讯科技(深圳)有限公司 在网络聊天室中多成员聚集交流的方法、服务器

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003506783A (ja) * 1999-08-04 2003-02-18 アメリカ オンライン インコーポレーテッド コンピュータ・ネットワークのユーザー間の交渉の管理
JP2002183064A (ja) * 2000-10-19 2002-06-28 Internatl Business Mach Corp <Ibm> 永続チャット・セッションの方法およびシステム
JP2002132694A (ja) * 2000-10-30 2002-05-10 Sanyo Electric Co Ltd チャットシステム、それに用いる端末およびサーバ、ならびにチャット方法
JP2002199134A (ja) * 2000-12-27 2002-07-12 Nec Corp 電話料金の表示システム、電話料金の請求システム、表示方法、請求方法及びこれらの方法を記録した記録媒体
JP2002278903A (ja) * 2001-03-15 2002-09-27 Sony Corp 情報処理装置および方法、記録媒体、並びにプログラム
JP2003091494A (ja) * 2001-09-17 2003-03-28 Sanyo Electric Co Ltd チャットシステム
JP2003174520A (ja) * 2001-12-06 2003-06-20 Kyocera Corp 携帯通信端末、通話方法、通話プログラムおよび記録媒体

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2014156769A1 (ja) * 2013-03-26 2017-02-16 シャープ株式会社 端末装置、基地局装置および制御装置

Also Published As

Publication number Publication date
US20110153850A1 (en) 2011-06-23
JP5354571B2 (ja) 2013-11-27
EP2299672A4 (en) 2015-04-22
WO2010038769A1 (ja) 2010-04-08
EP2299672A1 (en) 2011-03-23
CN102172006A (zh) 2011-08-31
KR20110065513A (ko) 2011-06-15

Similar Documents

Publication Publication Date Title
KR101203248B1 (ko) 네트워크 시스템, 통신 단말기, 통신 방법 및 통신 프로그램을 기록한 컴퓨터 판독가능 기록매체
US10924531B2 (en) Sophisticated automated relationship alerter
US7912020B2 (en) Methods and devices for dynamic mobile conferencing with automatic pairing
TW527825B (en) A method and system for internet-based video chat
JP4724733B2 (ja) 映像編集システム、映像編集サーバ、通信端末
WO2006129692A1 (ja) 電話装置及び電話装置の制御方法
CN102823228A (zh) 使用用户终端进行通信
JP5354571B2 (ja) ネットワークシステム、通信装置、通信方法、および通信プログラム
US20100015955A1 (en) Call management between communication devices
JP4682681B2 (ja) 接続切替プログラム、電子会議システム、接続切替方法
JP5978872B2 (ja) 通信システム、通信装置及びプログラム
WO2011102196A1 (ja) 通信端末、通信方法、および通信プログラムを記録したコンピュータ読取可能な記録媒体
JP4880442B2 (ja) 通信システム
JP2007116545A (ja) 認証方法、認証システム、認証サーバ、通話端末、及び認証プログラム
CN106657533B (zh) 通话处理方法及装置
JP6252633B2 (ja) 通信装置及びプログラム
JP2020031436A (ja) 電話営業用ctiシステム
JP2010140083A (ja) 通信端末
JP5170558B2 (ja) 通信装置および通信方法
JP4725247B2 (ja) ワークプレース提供システムおよび方法
JP2005197816A (ja) 通信制御装置、端末装置、通信システム及び通信方法
WO2012014813A1 (ja) ネットワークシステムおよび通信方法
KR20230077329A (ko) 오프라인 커뮤니티 서비스에서 대화방을 생성하는 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110914

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: 20130730

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130821

R150 Certificate of patent or registration of utility model

Ref document number: 5354571

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees