(57)【特許請求の範囲】
【請求項１】
複数の会話装置と該複数の会話装置にネットワークを介して仮想空間を提供する配信装置とを含み、前記配信装置が前記ネットワーク上に設営した前記仮想空間を、前記複数の会話装置が共有して同時に会話可能な会話システムに用いられる会話送出方法であって、
予め、仮想空間毎に、当該仮想空間で発言が行われた場合に、当該発言を送出する他の仮想空間と、当該発言を前記他の仮想空間にも送出するか否かを判定するための送出条件と、を対応付けて記憶手段に記憶するステップと、
一の会話装置における仮想空間での発言を取得すると、当該仮想空間に対応付けて記憶された送出条件に基づいて、他の仮想空間への転送の要否を判断するステップと、
他の仮想空間への転送が必要と判断された場合には、当該仮想空間に対応付けて記憶された他の仮想空間にも、前記取得した発言を送出するステップと、を有し、
前記配信装置が前記各ステップを実行することを特徴とする会話送出方法。
【請求項２】
複数の会話装置と該複数の会話装置にネットワークを介して仮想空間を提供する配信装置とを含み、前記配信装置が前記ネットワーク上に設営した前記仮想空間を、前記複数の会話装置が共有して同時に会話可能な会話システムであって、
一の会話装置における仮想空間で行われた発言を取得する取得手段と、
仮想空間毎に、当該仮想空間での発言を送出する他の仮想空間と、当該発言を前記他の仮想空間にも送出するか否かを判定するための送出条件とを対応付けて記憶している条件テーブルを参照して、前記取得した発言を他の仮想空間に送出するか否かを判断する判断手段と、
前記判断手段にて前記取得した発言を他の仮想空間にも転送すると判断した場合に、前記取得した発言を他の仮想空間にも送出する送出手段と、
を前記配信装置に備える会話システム。
【請求項３】
前記仮想空間と他の仮想空間における発言の送出条件の設定を受け付け、前記条件テーブルに登録する設定手段をさらに備える、請求項２に記載の会話システム。
【請求項４】
指定されたキーワードが前記発言に含まれていることを前記送出条件とする、請求項２に記載の会話システム。
【請求項５】
指定された情報端末からの発言であることを前記送出条件とする、請求項２に記載の会話システム。
【請求項６】
各仮想空間での発言に持ち点及び持ち点の削減値を設定し、前記発言の持ち点を前記削減値だけ削減して求めた新たな持ち点が所定の基準値以上であることを前記送出条件とする、請求項２に記載の会話システム。
【請求項７】
指定された期間内の発言であることを前記送出条件とする、請求項２に記載の会話システム。
【請求項８】
発言の送出元及び送出先の指定が前記送出条件に含まれている、請求項２に記載の会話システム。
【請求項９】
仮想空間から他の仮想空間に送出される発言の加工条件を記憶する加工条件テーブルと、
前記加工条件に従い、送出する発言の加工を行う加工手段とをさらに備える、請求項２に記載の会話システム。
【請求項１０】
発言の加工条件の設定を受け付け、記憶手段に登録する加工設定手段をさらに備える、請求項２に記載の会話システム。
【請求項１１】
前記情報端末は、前記仮想空間と他の仮想空間との間における発言の送出条件を出力可能な出力手段を備える、請求項２に記載の会話システム。
【請求項１２】
複数の会話装置と該複数の会話装置にネットワークを介して仮想空間を提供し、前記ネットワーク上に設営した前記仮想空間を共有して同時に会話可能な前記複数の会話装置からの発言を、前記仮想空間内の他の会話装置に同報可能な配信装置であって、
一の会話装置における仮想空間で行われた発言を取得する取得手段と、
仮想空間毎に、当該仮想空間での発言を送出する他の仮想空間と、当該発言を前記他の仮想空間にも送出するか否かを判定するための送出条件とを対応付けて記憶している条件テーブルを参照して、前記取得した発言を他の仮想空間に送出するか否かを判断する判断手段と、
前記判断手段にて前記取得した発言を他の仮想空間にも転送すると判断した場合、前記取得した発言を他の仮想空間にも送出する送出手段と、
を備える配信装置。
【請求項１３】
複数の会話装置にネットワークを介して仮想空間を提供する配信装置により前記ネットワーク上に設営された仮想空間を共有して同時に会話可能な会話装置であって、
一の会話装置における仮想空間で行われた発言を取得する取得手段と、
仮想空間毎に、当該仮想空間での発言を送出する他の仮想空間と、当該発言を前記他の仮想空間にも送出するか否かを判定するための送出条件と、を対応付けて記憶している条件テーブルを参照して、前記取得した発言を他の仮想空間に送出するか否かを判断する判断手段と、
前記判断手段にて前記取得した発言を他の仮想空間にも転送すると判断した場合に、前記取得した発言を他の仮想空間にも送出する送出手段と、
を備える会話装置。
【請求項１４】
複数の会話装置と該複数の会話装置にネットワークを介して仮想空間を提供し、前記ネットワーク上に設営した前記仮想空間を共有して同時に会話可能な前記複数の会話装置からの発言を、前記仮想空間内の他の会話装置に同報可能な配信装置に用いられる、会話制御プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
一の会話装置における仮想空間で行われた発言を取得する段階と、
仮想空間毎に、当該仮想空間での発言を送出する他の仮想空間と、当該発言を前記他の仮想空間にも送出するか否かを判定するための送出条件とを対応付けて記憶している条件テーブルを参照して、前記取得した発言を他の仮想空間に送出するか否かを判断する段階と、
前記判断手段にて前記取得した発言を他の仮想空間にも転送すると判断した場合に、前記取得した発言を他の仮想空間にも送出する段階と、
を実行するための会話制御プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１５】
複数の会話装置にネットワークを介して仮想空間を提供する配信装置により前記ネットワーク上に設営された仮想空間を共有して同時に会話可能な会話装置に用いられる会話制御プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
一の会話装置における仮想空間で行われた発言を取得する段階と、
仮想空間毎に、当該仮想空間での発言を送出する他の仮想空間と、当該発言を前記他の仮想空間にも送出するか否かを判定するための送出条件とを対応付けて記憶している条件テーブルを参照して、前記取得した発言を他の仮想空間に送出するか否かを判断する段階と、
前記判断手段にて前記取得した発言を他の仮想空間にも転送すると判断した場合に、前記取得した発言を他の仮想空間にも送出する段階と、
を実行するための会話制御プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、他のユーザとネットワーク上に設営された仮想空間（以下、単に仮想空間と称する）を共有して同時に会話可能なユーザの会話を支援する技術に関する。
本発明において、会話システムとは、複数のユーザが仮想空間を共有して実質的にリアルタイムで文字メッセージ（以下、発言という）を送受信可能であり、前記送受信される発言を表示可能なシステムを言う。
【０００２】
ＩＲＣ(Internet Relay Chat)システムとは、ＩＲＣプロトコル（ＲＦＣ１４５９）に準拠して構築され、ＩＲＣサーバとＩＲＣクライアントとから構成される会話システムを言う。ＩＲＣサーバは、チャネル内でＩＲＣクライアントからの発言を他のＩＲＣクライアントに同報する。ＩＲＣクライアントは、ＩＲＣサーバを介し、他のＩＲＣクライアントと発言の送受信を行う。
【０００３】
チャネルとは、ＩＲＣシステムにおいて、ＩＲＣクライアントが共有する仮想空間を言う。ニックネームとは、ＩＲＣシステムにおいてユーザを一義的に特定するための識別子を言う。トピックとは、各チャネルにおける会話の話題を言う。モードとは、チャネルの特性を言う。
【背景技術】
【０００４】
従来、複数ユーザが仮想空間を共有し、テキストベースで同時に会話可能な会話システムが種々提供されている。その一例として、ＩＲＣシステムを挙げることができる。ＩＲＣシステムでは、トピックと呼ばれる話題毎にチャネルが形成される。ユーザは、興味のあるトピックを有するチャネルに参加し、トピックについて互いに会話する。チャネルへの発言は、文字メッセージを入力してリターンキーを押すことによりなされる。自己及び他のＩＲＣクライアントから発言された文字メッセージは、ディスプレイに表示される。
【０００５】
複数のユーザが仮想空間を共有してコミュニケーション可能な他のシステムとしては、電話ネットワーク上のパーティラインサービスやメーリングシステムを挙げることができる。パーティラインサービスでは、３人以上のユーザが電話ネットワーク上の仮想空間を共有し、ＩＲＣと同様にリアルタイムに会話を行うことができる。メーリングシステムでは、メーリングリスト宛の電子メールを、複数のメールアドレスに同時に配信することができる。複数のメールアドレスは、メーリングリストで表される仮想空間を共有している。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、ＩＲＣシステムでは、チャネルに参加しているユーザ数が多くなると、たとえ同一チャネル内であっても同時に複数の話題が進行することが多い。その場合、異なる話題に関する発言が混在して表示され、会話が混乱する。また、現在のＩＲＣでは発言対象のチャネルは常に１つに限定されているあるため、ユーザにとって不便な場合が生じている。
【０００７】
例えば、以下のような状況が生じる。ある研究部の研究員５０名がチャネル＃ＣＨ１に参加している。研究部内のグループＡとグループＢとが、同一のテーマで研究を行っている。各グループの研究員は、各グループ内で研究について会話したい。また、他の研究員が会話内容を見られるように、チャネル＃ＣＨ１内で会話したい。しかし、２つの会話が同じチャネル内で並行して進行し、ディスプレイ上で混在して表示されると、会話が混乱してしまう。他の会話システムでも同様の問題が生ずる。
【０００８】
一方で、前記研究部の別のグループＣが、チャネル#meetingにおいて会議しているとする。会議内容が進展したため、グループＣは、別チャネル＃LABに参加しているグループＤにも会議に参加して欲しい。しかし、従来の会話システムでは、グループＤ内のユーザが自発的にチャネル#meetingに参加しない限り、両グループＣおよびＤがチャネル#meetingにおける会話を共有することは出来ない。しかも、グループＤ内のユーザが不在の場合なども考えられ、複数のユーザがそろってチャネル#meetingに参加することが難しい。
【０００９】
また、例えば次のようなニーズも考えられる。チャネル＃TALKにおいて、有料で参加を許可されたユーザが、芸能人やスポーツ選手などの有名人と会話している。チャネル＃TALKの管理者は、所定の時間帯において、チャネル＃TALKの内容を他の一般のチャネルに流し、チャネル＃TALKの会話をコマーシャルとして活用したい。
さらに、ＩＲＣなどの会話システムを用いてユーザサポートを行う場合、全てのサポート要員を１つのサポートチャネルに参加させる必要がある。ところが１人の質問者からの問い合わせに対して複数のサポート要員が応答すると、質問者にとっては質問の度に回答者が変化することになりかねない。これでは、質問者に煩雑な印象を与えてしまう。これを避けるためには、複数のサポート要員からの回答を、あたかも一人のサポート要員からの回答のようにユーザに表示することが好ましい。
【００１０】
なお、電話を用いたサポートシステムとして、複数のサポート要員が電話の前で待機して問い合わせに応対するシステムは既に行われている。しかし、電話では、１人の回答者で応対しきれない場合に、複数の回答者からの回答をあたかも１人の回答者からの回答のように質問者に感じさせることができない。また、メーリングシステムでは、複数の回答者からの回答を１人の回答者からの回答であるかのように電子メールを作成できても、質問者は質問に対する回答をリアルタイムに入手できない。
【００１１】
本発明は、前記ニーズに応え、仮想空間を共有してテキストベースで同時に会話する複数ユーザが複数の話題を共有しつつ混乱なく会話するために、仮想空間における会話を共有及び分離する技術を提供することを目的とする。
【課題を解決するための手段】
【００１２】
前記課題を解決するために、本願第１発明は、複数の会話装置と該複数の会話装置にネットワークを介して仮想空間を提供する配信装置とを含み、前記配信装置が前記ネットワーク上に設営した前記仮想空間を、前記複数の会話装置が共有して同時に会話可能な会話システムに用いられる会話送出方法であって、
・予め、仮想空間毎に、当該仮想空間で発言が行われた場合に、当該発言を送出する他の仮想空間と、当該発言を前記他の仮想空間にも送出するか否かを判定するための送出条件と、を対応付けて記憶手段に記憶するステップと、
・一の会話装置における仮想空間での発言を取得すると、当該仮想空間に対応付けて記憶された送出条件に基づいて、他の仮想空間への転送の要否を判断するステップと、
・他の仮想空間への転送が必要と判断された場合には、当該仮想空間に対応付けて記憶された他の仮想空間にも、前記取得した発言を送出するステップと、を有し、
・前記配信装置が前記各ステップを実行することを特徴とする会話送出方法を提供する。
【００１３】
ここでネットワークとは、例えばチャットシステムのチャネルのように、通信手段を介して複数の人が仮想的に共有できる通信網上の空間を指す。
ＩＲＣシステムを例に取り説明する。例えば、チャネル＃ＣＨ１に生じた発言の送出先をチャネル＃CH2とする。送出条件をキーワード「＃CUSTOMER*」とする。チャネル＃ＣＨ１で発言が生じると、「＃CUSTOMER」が含まれているか否かが判断される。含まれていれば、生じた発言は、チャネル＃CH2に送出される。従って、チャネル＃ＣＨ１内の発言のうち、特定のキーワード「＃CUSTOMER*」を含む発言のみがチャネル＃CH2に送出される。
【００１４】
本願第２発明は、複数の会話装置と該複数の会話装置にネットワークを介して仮想空間を提供する配信装置とを含み、前記配信装置が前記ネットワーク上に設営した前記仮想空間を、前記複数の会話装置が共有して同時に会話可能な会話システムであって、
・一の会話装置における仮想空間で行われた発言を取得する取得手段と、
・仮想空間毎に、当該仮想空間での発言を送出する他の仮想空間と、当該発言を前記他の仮想空間にも送出するか否かを判定するための送出条件とを対応付けて記憶している条件テーブルを参照して、前記取得した発言を他の仮想空間に送出するか否かを判断する判断手段と、
・前記判断手段にて前記取得した発言を他の仮想空間にも転送すると判断した場合に、前記取得した発言を他の仮想空間にも送出する送出手段と、
を前記配信装置に備える会話システムを提供する。
【００１５】
再びＩＲＣシステムを例に取り説明する。ＩＲＣサーバに条件テーブル、判断手段及び送出手段を持たせる。ＩＲＣサーバは、所定のチャネル情報及び条件テーブルをチャネル毎に記憶する。各チャネルの条件テーブルには、そのチャネルで生じる発言の送出先と、送出条件とが対応付けられている。判断手段は、チャネルで発言が生じる度に、発言が条件テーブルの送出条件に合致するか否かを判断する。送出条件に合致すると判断されると、送出手段は送出先チャネルに発言を送出する。ユーザは、送出先チャネルに参加すれば特定の発言だけを見ることができ、会話の混乱が防止される。
【００１６】
本願第３発明は、前記第２発明において、前記仮想空間と他の仮想空間における発言の送出条件の設定を受け付け、条件テーブルに登録する設定手段をさらに備える会話システムを提供する。
例えば、ＩＲＣクライアントに設定手段を設ける。設定手段は、発言の送出元チャネル、送出先チャネル及び送出条件の設定を受け付ける。条件テーブルをＩＲＣサーバが有している場合、ＩＲＣクライアントは、設定された情報を所定の形式の設定コマンドに記述し、ＩＲＣサーバに送信する。ＩＲＣサーバは、コマンドを解析し、条件テーブルを更新する。ただし、設定コマンドは予め用意しておく。条件テーブルをＩＲＣクライアントが有している場合、設定手段は設定された情報を条件テーブルに書き込む。
【００１７】
本願第４発明は、前記第２発明において、指定されたキーワードが発言に含まれていることを送出条件とする会話システムを提供する。
条件テーブルの送出条件に、キーワード「＃CUSTOMER*」が登録されている場合を考える。判断手段は、「＃CUSTOMER」の文字列で始まる発言である場合、その発言を対応する送出先チャネルに送出すると判断する。
【００１８】
本願第５発明は、前記第２発明において、指定された情報端末からの発言であることを送出条件とする会話システムを提供する。
例えば、条件テーブルの送出条件に、ニックネーム「user-A; user-B」が登録されている。判断手段は、「user-A」または「user-B」からの発言であれば、発言を送出すると判断する。
【００１９】
本願第６発明は、前記第２発明において、各仮想空間での発言に持ち点及び持ち点の削減値を設定し、発言の持ち点を削減値だけ削減して求めた新たな持ち点が所定の基準値以上であることを送出条件とする会話システムを提供する。
例えば、条件テーブルの送出条件に、1)チャネル＃ＣＨ１での発言の持ち点が２０点及び削減値が１５点、2)基準値が０点と設定されている。判断手段は、チャネル＃ＣＨ１で発言があると、発言が他のチャネルに送出された場合の持ち点を求める。持ち点は、２０−１５＝５点となるので、判断手段は発言を送出すると判断する。また、他のチャネルからチャネル＃ＣＨ１に送出された発言の持ち点が仮に１０点であれば、１５点を削減すると基準値を下回る。この場合、判断手段は発言を送出しないと判断する。
【００２０】
本願第７発明は、前記第２発明において、指定された期間内の発言であることを前記送出条件とする会話システムを提供する。
例えば、条件テーブルに、期間○年○月○時〜△年△月△時が登録されている。判断手段は、前記期間になされた発言であれば発言を送出すると判断する。
本願第８発明は、前記第２発明において、発言の送出元及び送出先の指定が前記送出条件に含まれている会話システムを提供する。例えば、送出元及び送出先チャネルをユーザが指定可能な会話システムである。
【００２１】
本願第９発明は、前記第２発明において、仮想空間から他の仮想空間に送出される発言の加工条件を記憶する加工条件テーブルと、加工条件に従い送出する発言の加工を行う加工手段とをさらに備える会話システムを提供する。
例えば、チャネル#CH1からチャネル#CH2に発言を送出する場合、加工手段は発言の頭部分にチャネル名#CH1を付加する。逆にチャネル#CH2からチャネル#CH1に発言を送出する場合、加工手段は発言者のニックネームを全て「SUPPORT」に変更する。
【００２２】
本願第１０発明は、前記第２発明において、発言の加工条件の設定を受け付け、記憶手段に登録する加工設定手段をさらに備える会話システムを提供する。これにより、ユーザは加工条件を指定可能になる。
本願第１１発明は、前記第２発明において、情報端末が、仮想空間と他の仮想空間との間における発言の送出条件を出力可能な出力手段を備える会話システムを提供する。
【００２３】
出力手段は、例えばＩＲＣクライアントに設けられる。条件テーブルがＩＲＣサーバに設けられている場合、出力手段は、前記条件テーブルの内容をＩＲＣサーバから取得して記憶する。取得対象は、ＩＲＣクライアントが参加しているチャネルの条件テーブルの内容である。出力手段は、設定に応じ、参加チャネルを表示するチャネルウインドウにチャネル間の関係を表示したり、送出条件を表示したりする。例えば、チャネル＃ＣＨ１からチャネル＃CH2に全ての発言が送出されるとする。出力手段は、チャネルウインドウに「＃ＣＨ１→＃CH2」と表示する。また、出力手段は、矢印をクリックされると、「全ての発言」と表示されたバルーンを表示する。
【００２４】
条件テーブルがＩＲＣクライアントに設けられている場合、出力手段は、参加しているチャネルに関し、条件テーブルの内容を条件テーブルから読み出して出力する。
【００２５】
本願第１２発明は、複数の会話装置と該複数の会話装置にネットワークを介して仮想空間を提供し、前記ネットワーク上に設営した前記仮想空間を共有して同時に会話可能な前記複数の会話装置からの発言を、前記仮想空間内の他の会話装置に同報可能な配信装置であって、
・一の会話装置における仮想空間で行われた発言を取得する取得手段と、
・仮想空間毎に、当該仮想空間での発言を送出する他の仮想空間と、当該発言を前記他の仮想空間にも送出するか否かを判定するための送出条件とを対応付けて記憶している条件テーブルを参照して、前記取得した発言を他の仮想空間に送出するか否かを判断する判断手段と、
・前記判断手段にて前記取得した発言を他の仮想空間にも転送すると判断した場合、前記取得した発言を他の仮想空間にも送出する送出手段と、
を備える配信装置を提供する。
【００２６】
前記第２発明と同様の作用効果を有する。
【００２７】
本願第１３発明は、複数の会話装置にネットワークを介して仮想空間を提供する配信装置により前記ネットワーク上に設営された仮想空間を共有して同時に会話可能な会話装置であって、
・一の会話装置における仮想空間で行われた発言を取得する取得手段と、
・仮想空間毎に、当該仮想空間での発言を送出する他の仮想空間と、当該発言を前記他の仮想空間にも送出するか否かを判定するための送出条件と、を対応付けて記憶している条件テーブルを参照して、前記取得した発言を他の仮想空間に送出するか否かを判断する判断手段と、
・前記判断手段にて前記取得した発言を他の仮想空間にも転送すると判断した場合に、前記取得した発言を他の仮想空間にも送出する送出手段と、
を備える会話装置を提供する。
【００２８】
前記第２発明と同様の作用効果を有する。
本願第１４発明は、複数の会話装置と該複数の会話装置にネットワークを介して仮想空間を提供し、前記ネットワーク上に設営した前記仮想空間を共有して同時に会話可能な前記複数の会話装置からの発言を、前記仮想空間内の他の会話装置に同報可能な配信装置に用いられる、会話制御プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
・一の会話装置における仮想空間で行われた発言を取得する段階と、
・仮想空間毎に、当該仮想空間での発言を送出する他の仮想空間と、当該発言を前記他の仮想空間にも送出するか否かを判定するための送出条件とを対応付けて記憶している条件テーブルを参照して、前記取得した発言を他の仮想空間に送出するか否かを判断する段階と、
・前記判断手段にて前記取得した発言を他の仮想空間にも転送すると判断した場合に、前記取得した発言を他の仮想空間にも送出する段階と、
を実行するための会話制御プログラムを記録したコンピュータ読み取り可能な記録媒体を提供する。
【００２９】
前記第２及び第９発明と同様の作用効果を有する。ここで記録媒体としては、コンピュータが読み書き可能なフレキシブルディスク、ハードディスク、半導体メモリ、CD-ROM、ＤＶＤ、光磁気ディスク（ＭＯ）、その他のものが挙げられる。
【００３０】
本願第１５発明は、複数の会話装置にネットワークを介して仮想空間を提供する配信装置により前記ネットワーク上に設営された仮想空間を共有して同時に会話可能な会話装置に用いられる会話制御プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
・一の会話装置における仮想空間で行われた発言を取得する段階と、
・仮想空間毎に、当該仮想空間での発言を送出する他の仮想空間と、当該発言を前記他の仮想空間にも送出するか否かを判定するための送出条件とを対応付けて記憶している条件テーブルを参照して、前記取得した発言を他の仮想空間に送出するか否かを判断する段階と、
・前記判断手段にて前記取得した発言を他の仮想空間にも転送すると判断した場合に、前記取得した発言を他の仮想空間にも送出する段階と、
を実行するための会話制御プログラムを記録したコンピュータ読み取り可能な記録媒体を提供する。
【００３１】
前記第２及び第１０発明と同様の作用効果を有する。記録媒体としては、前述と同様のものが挙げられる。
【発明の効果】
【００３２】
本発明を用いれば、複数のユーザが共有するネットワーク内で複数の話題に関する会話が生じた場合に、話題毎に会話を分離でき、しかもニーズに応じて複数の話題に関する会話を共有しながら、テキストベースで混乱なく会話することができる。しかも、必要に応じて発言を変形することにより、送出先における表示を最適化することが出来る。
【発明を実施するための最良の形態】
【００３３】
次に、本発明の会話システムについて、実施形態例を挙げながら具体的に説明する。
＜第１実施形態例＞
図１は、本発明の第１実施形態例に係る会話システムの全体構成図を示す。図１は、ＩＲＣシステムを用いて本発明の会話システムを実現する例を示している。ＩＲＣシステムは、ＩＲＣサーバ１と複数のＩＲＣクライアント２とがインターネット３により接続されて構成される。ＩＲＣサーバ１は、各ＩＲＣクライアント２からの発言を、同じチャネル内の他のＩＲＣクライアント２に同報する。また、ＩＲＣサーバ１は、所定のチャネル情報をチャネル毎にチャネルＤＢ１１で管理している。チャネル情報とは、具体的には、チャネル名、トピック、チャネルへの参加ユーザや離脱ユーザ、モード、チャネルの管理者などである。ＩＲＣサーバ１は、チャネル情報を管理し、所定のチャネル情報をＩＲＣクライアント２に通知する。ＩＲＣクライアント２は、参加チャネルでの発言の送受信を行う。また、ＩＲＣクライアント２は、ＩＲＣサーバ１から通知される所定のチャネル情報を保持している。ＩＲＣクライアント２が保持するチャネル情報としては、チャネル名、トピック、チャネルへの参加ユーザや離脱ユーザなどである。
【００３４】
［サーバ］
本実施形態例においては、ＩＲＣサーバ１は、前記チャネル情報に加え、所定のチャネル関連情報をチャネルＤＢ１１で管理する。また、ＩＲＣサーバ１には、判断部１２及び送出部１３が付加されている。
図２は、チャネルＤＢ１１に保持されるチャネル関連情報の概念説明図である。ＩＲＣサーバ１は、チャネル関連情報として、条件テーブル及びホップテーブルを各チャネル毎に有している。図２（ａ）は、任意のチャネル＃ＣＨ１についての条件テーブルの概念説明図である。条件テーブルには、チャネル＃ＣＨ１内で発言された発言が送出される送出先チャネル名と、送出条件と、表示形式とが対応付けられて記憶されている。表示形式とは、送出条件を視覚的に出力する場合の形式である。後述するように送出条件をディスプレイ上に表示する場合、表示形式に指定されている形式で送出条件が表示される。表示形式の指定がない場合は、指定されている送出条件がそのまま表示される。
【００３５】
送出条件として、本実施形態例では、１）無送出、２）全て送出、３）キーワード、４）ニックネームを指定することが可能である。例えば、送出条件に「ＮＵＬＬ」を指定すれば、対応する送出先チャネルにチャネル＃ＣＨ１の発言が全く送出されない。送出条件に「CONTENT *」を指定すれば、チャネル＃ＣＨ１の発言の全てが、対応する送出先チャネルに送出される。図２では、送出先チャネル＃ＣＨ２に、チャネル＃ＣＨ１内の発言が全て送出される。また、送出条件の指定に当たり、いわゆる正規文字を使用しても良い。
【００３６】
送出条件に「キーワード」を指定すれば、指定されたキーワードを含む発言が、対応する送出先チャネルに送出される。図２では、送出先チャネル＃ＣＨ３への送出条件に、「CONTENT #CUSTOMER*」が指定されている。従って、チャネル＃ＣＨ１での発言のうち、「#CUSTOMER」で開始される発言が、チャネル＃ＣＨ３に送出される。
送出条件に「ニックネーム」を指定すれば、ニックネームで特定されるユーザからの発言が、対応する送出先チャネルに送出される。図２では、送出先チャネル＃ＣＨ４への送出条件に、「NICK USER4」が指定されている。従って、ニックネーム「USER４」のユーザからの発言が、チャネル＃ＣＨ４に送出される。
【００３７】
なお、前記送出条件を、複数選択して組み合わせることも可能である。本実施形態例においては、前記送出条件とホップテーブルに設定されている削減数とを組み合わせて発言の送出を行う。また、送出条件は、前記条件に限定されない。例えば、期間の指定を可能にし、指定された期間内の発言を送出することもできる。
図２（ｂ）は、チャネル＃ＣＨ１のホップテーブルの概念説明図である。ホップテーブルには、チャネル＃ＣＨ１のホップ数の初期値及びホップ数の削減値が設定されている。本実施形態例においては、ホップテーブルをチャネル毎に設ける。ここで、ホップ数は発言の持ち点であり、送出される度に設定された削減値だけ減点される。チャネル＃ＣＨ１が発言元である場合、発言の新たなホップ数は、初期値から削減値を引いた値である。ＩＲＣサーバ１は、新たなホップ数が所定の基準値以下になる場合、発言を送出しない。送出条件に合致する送出先チャネルが多数ある場合でも、通信トラフィックが過度に増加することを防止できる。本実施形態例では０点を基準値とする。ホップ数の削減値や基準値を送出条件で指定可能にすることも可能である。
【００３８】
前記チャネル関連情報のうち、条件テーブルの内容は、ＩＲＣクライアント２から送信されてくる所定の設定コマンドに基づいて設定される。設定コマンドについては後述する。ホップテーブルの内容は、本実施形態例では、ＩＲＣサーバ１がチャネルの作成に応じて自動的に設定する。特定のユーザ、例えばチャネルの管理者が、ホップテーブルを設定可能にしても良い。
【００３９】
判断部１２は、チャネル内で生じた発言を他のチャネルに送出するか否かを、前記条件テーブルに基づいて判断する。判断部１２は、送出すると判断すると、発言内容及び送出先チャネル名を送出部１３に通知する。また、判断部１２は、条件テーブルの設定コマンドをＩＲＣクライアント２から受け取り、条件テーブルを更新する。さらに、判断部１２は、チャネルを構成するＩＲＣクライアント２に変化が生じた場合や、チャネル関連情報が変化した場合、該当チャネルのＩＲＣクライアント２に関連情報を送出部１３を介して通知する。
【００４０】
送出部１３は、判断部１２からの通知に応じ、通知された発言内容を送出先チャネルに送出する。また、送出部１３は、判断部１２からの通知に応じ、チャネル関連情報をＩＲＣクライアント２に通知する。
［ＩＲＣクライアント］
図１のＩＲＣクライアント２には、設定部２１及び関連表示部２２が付加されている。設定部２１は、前記チャネル関連情報の設定を受け付け、設定内容をＩＲＣサーバ１に送信する。
【００４１】
関連表示部２２は、所定のチャネル情報に加え、参加チャネルのチャネル関連情報をＩＲＣサーバ１から受信して記憶する。また、関連表示部２２は、受信したチャネルの関連情報の表示を制御する。
［画面］
（１）チャネル関連情報の設定
次に、前記チャネル関連情報の設定を受け付ける画面例について説明する。図３は、ＩＲＣクライアント２により表示される、送出先設定前のチャット画面の一例である。画面には、主チャネルウインドウ３１、主会話ウインドウ３２、入力ウインドウ３３、副会話ウインドウ３４、ユーザウインドウ３５及びチャネルウインドウ３６が表示されている。これらのウインドウは、通常のＩＲＣクライアント２により表示されるウインドウである。主チャネルウインドウ３１には、現在ユーザが発言対象としているチャネル（以下、単に主チャネルという）が表示される。主会話ウインドウ３２には、主チャネルでの発言が表示される。入力ウインドウ３３は、主チャネルへの発言の入力を受け付ける。副会話ウインドウ３４には、ＩＲＣクライアント２が参加しているチャネルであって、主チャネル以外のチャネル（以下、副チャネルという）での発言が表示される。ユーザウインドウ３５は、主チャネルに参加しているユーザのニックネームが表示される。チャネルウインドウ３６には、ＩＲＣクライアント２が参加しているチャネル名が表示される。今、主チャネル#CHOCOAに、ユーザUSER1-5が参加している。また、副チャネルが＃channel1及び＃channel2とする。
【００４２】
設定部２１は、前記ウインドウに加え、関連付けボタン３７を表示する。関連付けボタン３７を押すと、図４（ａ），（ｂ）に例示する設定ウインドウが表示される。本例では、ユーザウインドウ３５でUSER1, USER3及びUSER4を選択してから関連付けボタン３７が
押されている。
図４（ａ）は「チャネル設定ウインドウ」の一例を示す。「チャネル設定ウインドウ」では、ユーザは主チャネルでの発言を送出するチャネルを設定する。送出先チャネルとして、新たなチャネルを設定することもできる。また、副チャネルなど既存の他のチャネルから、送出先チャネルを選択可能にしてもよい。図４では、新たなチャネル#meetingを作成し、送出先チャネルに設定する場合を示している。チャネル設定ウインドウでチャネル名を設定し、「ＯＫボタン」を押すと、図４（ｂ）の条件設定ウインドウが表示される。
【００４３】
図４（ｂ）は「条件設定ウインドウ」の一例を示す。「条件設定ウインドウ」では、主チャネル#CHOCOAからチャネル#meetingへ発言を送出する条件の設定を行う。本実施形態例では、送出条件として、「無送出」、「全て送出」、「キーワード設定」及び「ユーザ選択」を選択可能である。これらの条件を複数選択し、組み合わせることもできる。各条件は、前記条件テーブルにおいて設定可能な送出条件と対応する。ユーザウインドウ３５ですでにユーザを選択している場合、「無送出」及び「全て送出」を選択できないようにしてもよい。
【００４４】
「キーワード設定」が選択されると、キーワードを入力するためのキーワードボックス４１にカーソルが点滅し、入力を受け付ける。「条件設定ウインドウ」で「ユーザ選択」を選択しても、前記図３のユーザウインドウ３５でユーザを選択しても、どちらでもよい。「条件設定ウインドウ」で「ユーザ選択」が選択された場合、主チャネル#CHOCOAの構成ユーザ一覧を表示し、ユーザの選択を受け付けるようにすると良い。
【００４５】
図４で「ＯＫボタン」が押されると、ＩＲＣクライアント２からＩＲＣサーバ１に設定コマンドが送信される。設定コマンドには、送出元チャネル、送出先チャネル及び送出条件が記述される。図４の例では、前記図３で指定したユーザ以外の条件を設定していない。この場合の設定コマンドの例を示す。
"CREATESUB #CHOCOA #meeting NICK(USER1,USER3,USER4) "前記設定コマンドは、新たなチャネル#meetingを作成し、チャネル#CHOCOAからチャネル#meetingに対し、「USER1」、「USER3」及び「USER4」の発言を送出するための設定コマンドである。また、チャネル#meetingが既存のチャネルの場合、以下の設定コマンドがＩＲＣサーバ１に送信される。
【００４６】
“RELATION #CHOCOA #meeting NICK(USER1,USER3,USER4)”
前記設定コマンドは、既存のチャネル#meetingを送出先に、チャネル#CHOCOAを送出元に指定し、チャネル#CHOCOAからチャネル#meetingに対し、「USER1」、「USER3」及び「USER4」の発言を送出するための設定コマンドである。設定コマンドを送信した「USER1」のＩＲＣクライアント２は、図５に例示する画面を表示する。
【００４７】
図５は、チャネル#CHOCOAの送出先チャネル#meetingにおける画面例である。主チャネルウインドウ３１には、主チャネルとして#CHOCOA.meetingが表示されている。これは、#CHOCOAの送出先チャネルであることを示している。主会話ウインドウ３２には、チャネル#meetingにおける発言が表示される。送出元チャネル#CHOCOAからの送出条件が「ユーザ選択」なので、指定されたユーザからの発言だけが主会話ウインドウ３２に表示される。また、ユーザウインドウ３５には、チャネル#meetingの構成ユーザのニックネームが表示される。副会話ウインドウ３４には、チャネル#meeting内で発言された内容がチャネル#CHOCOAにおける発言として表示される。これは、チャネル#meetingにおける発言がチャネル#CHOCOAに送出されていることを示している。
【００４８】
図６は、前記チャネル#CHOCOA及び#meetingの条件テーブルの概念説明図である。図６（ａ）は、前記設定コマンドに応じて作成される、送出元チャネル#CHOCOAの条件テーブルである。送出先としてチャネル#meetingが登録されている。また、チャネル#meetingへの送出条件として、図３のユーザウインドウ３５で選択されたユーザのニックネームが記述されている。送出条件の表示形式として、「USER1,3,4の発言を送出」が指定されている。
【００４９】
図６（ｂ）は、新たに作成されたチャネル#meetingの条件テーブルである。この例では、送出先としてチャネル#CHOCOAが、また送出条件として「CONTENT *」が設定されている。従って、チャネル#meetingにおける発言は、全てチャネル#CHOCOAに送出される。表示形式としては、「全て送出」が指定されている。チャネル#meetingからチャネル#CHOCOAへの送出条件の設定は、ユーザの指示に応じて行っても良いし、#CHOCOAから#meetingへの送出条件に応じて自動的にデフォルト値を設定するようにしても良い。例えば、チャネル#CHOCOAの構成ユーザを指定してチャネル#meetingが作成された場合は、チャネル#meetingからチャネル#CHOCOAへの送出条件のデフォルト値を「CONTENT *」に設定する。
【００５０】
次に、図４の「条件設定ウインドウ」で「キーワード設定」を選択した場合を説明する。なお、説明を容易にするため、チャネル＃SUPPORTの送出先としてチャネル＃CUSTOMERが設定されているとする。また、送出元チャネル＃SUPPORTの構成ユーザをSUPPORT1,2,3とする。ユーザがキーワードボックス４１にキーワード「＃CUSTOMER*」を入力して「ＯＫボタン」を押すと、図７に示す画面が表示される。
【００５１】
図７は、キーワードに基づく発言の送出の表示例を示す説明図である。このチャット画面は、送出元チャネル＃SUPPORTを主チャネルとしている。チャネル＃SOPPORTでの発言のうちキーワード「＃CUSTOMER」で始まる発言が、チャネル＃CUSTOMERに送出されている。例えば、主会話ウインドウ３２で、「SUPPORT３」がキーワード「＃CUSTOMER」で始まる発言を行っている。この発言は、副会話ウインドウ３４で、チャネル＃CUSTOMERでの発言として表示されている。このようにすると、次のような場合に便利である。チャネル＃CUSTOMERで顧客の質問を受け付け、チャネル＃SUPPORTで複数の対応者が返答内容を検討し、検討中の会話を顧客に知られることなく検討結果だけを顧客に返す。
【００５２】
図８（ａ）及び（ｂ）に、チャネル＃SUPPORT及びチャネル＃CUSTOMERの条件テーブルを示す。図（ａ）の＃SUPPORTの条件テーブルには、送出先チャネル＃CUSTOMERに、キーワード「＃CUSTOMER」から始まる発言を送出する設定がなされている。一方、図８（ｂ）の＃CUSTOMERの条件テーブルには、送出先チャネル＃SUPPORTに、発言を送出しない設定がなされている。
【００５３】
（２）チャネル関連情報の表示
図９は、チャネル関連情報が表示されたチャネルウインドウ３６である。ＩＲＣクライアント２がＩＲＣサーバ１からチャネル関連情報を取得すると、チャネルウインドウ３６にチャネル関連情報が表示される。図９（ａ）は、前記図５のチャネルウインドウ３６の拡大図である。このチャネルウインドウ３６には、図６に示すチャネル関連情報に基づいて、チャネル#CHOCOAとチャネル#meetingとの関係が表示される。例えば#meetingから#CHOCOAの方向へ両者間の線をなぞると、バルーンが表示される。バルーンには、#meetingから#CHOCOAへの発言の送出条件が記述されている。また、両者間の線上の#CHOCOA寄りにカーソルを持ってくると、#CHOCOAへの送出条件を記述したバルーンが表示されるようにしてもよい。
【００５４】
図９（ｂ）は、関連表示部２２により表示される、送出条件の他の表示例を示す。図９（ｂ）では、前記図８に示すチャネル関連情報に基づいて、送出条件が表示されている。本例では、矢印上にポインティングデバイスを持ってくることにより、送出条件がバルーン中に表示される。
この他に、送出元チャネルと送出先チャネルとを上下に並記し、両者を矢印や線で結んで関係を表示するなど、様々な表示形態が可能である。送出条件の他に、ホップテーブルの内容を表示するようにしても良い。その場合、ＩＲＣクライアント２は、参加チャネルのホップテーブルの内容を適当なタイミングでＩＲＣサーバ１から取得し、記憶しておく。
【００５５】
なお、チャネルの表示は、関連表示部２２により制御される。具体的には、関連表示部２２は、送出条件に基づいて、ＩＲＣクライアント２が構成ユーザに含まれていないチャネルを表示しないように制御可能である。例えば、図９（ａ）において、チャネル#CHOCOAを構成するがチャネル#meetingを構成しないＩＲＣクライアント２「USER2」の関連表示部２２は、チャネル#meetingを表示しない。
【００５６】
また、関連表示部２２は、ＩＲＣクライアント２が構成ユーザに含まれているかいないかに関わらず、チャネル間の関連を全て表示することもできる。さらにその場合、ＩＲＣクライアント２が構成ユーザに含まれているか否かを併せて表示することも可能である。例えば、ＩＲＣクライアント２が構成ユーザであるチャネルと構成ユーザでないチャネルとを、フォントの色やスタイル、サイズなどを変えて区別可能に表示することが挙げられる。表示されているチャネルで発言したい場合の操作は、副チャネルを主チャネルにする通常の手続と同様である。
【００５７】
［処理の流れ］
（１）サーバ
（１−１）発言送出処理
図１０は、ＩＲＣサーバ１が行う発言送出処理の流れを示すフローチャートである。ＩＲＣサーバ１がいずれかのチャネルにおける発言を受信することにより、以下の処理が開始される。なお、チャネル内のＩＲＣクライアント２への発言の同報処理は、通常と同様であるので説明を省略する。
【００５８】
ステップＳ１では、判断部１２は、受信データから発言元チャネル名及び発言を取得する。
ステップＳ２では、判断部１２は、後述する送出先決定サブルーチンを実行する。
ステップＳ３では、送出部１３は、前記ステップＳ２において決定した送出先に発言を送出する。
【００５９】
ＩＲＣサーバ１は、前記処理の他に、各ＩＲＣクライアント２にチャネル関連情報を送信する処理を行う。送信のタイミングは、チャネル構成ユーザに変化が生じたとき及び条件テーブルまたはホップテーブルが更新されたときである。
（１−２）送出先決定処理
図１１は、前記発言送出処理で実行される送出先決定処理の流れを示すフローチャートである。前記発言送出処理においてステップＳ２に移行すると、以下の処理が開始される。
【００６０】
ステップＳ１０１では、所定の初期設定が行われる。例えば、変数LEVEL＝０に設定する。発言元チャネルを基準チャネルに設定する。また、基準チャネルリストに、発言元チャネル及びそのLEVEL=0を対応付けて書き込む。また、送出先リスト及びホップリストをクリアする。
なお、LEVELについて、前記図９（ｂ）を用いて説明する。発言元チャネル#CHOCOAを基準、すなわちLEVEL=0とする。チャネル#CHOCOAから発言が直接送出されるチャネル#meeting及び＃SUPPORTのLEVELを１とする。チャネル＃SUPPORTから発言が送出される＃CUSTOMERのLEVELを２とする。以下、同様にして、送出先の階層を発言元チャネルを基準として表す。基準チャネルリストは、発言元チャネルから順次送出先チャネルを辿っていく過程で用いる作業領域である。送出先リストは、送出先チャネル名を一時的に蓄積するメモリ領域である。ホップリストは、送出元と送出先と送出先でのホップ数（以下、基準ホップ値という）とを対応付けて記憶する領域である。
【００６１】
ステップＳ１０２では、判断部１２は、発言が基準チャネルから送出された場合の新たなホップ数を計算する。基準チャネルが発言元チャネルであれば、（新たなホップ数）＝（初期値）−（削減値）である。ホップ数の削減値としては、各基準チャネルのホップテーブルに設定されている削減値を用いる。
ステップＳ１０３では、判断部１２は、求めたホップ数が０よりも大きいか否かを判断する。“Ｙｅｓ”であればステップＳ１０４に移行する。“Ｎｏ”であれば発言の送出を行わないので、前記発言送出処理に戻る。なお、前述したように、本実施形態例では、ホップ数の基準値を“０”としている。
【００６２】
ステップＳ１０４では、判断部１２は、変数Ｎ＝１に設定する。「Ｎ」は、基準チャネルの条件テーブルにおけるエントリ番号を表す。
ステップＳ１０５では、判断部１２は、基準チャネルの条件テーブルのＮ番目のエントリに、送出先及び送出条件の設定があるか否かを判断する。“Ｙｅｓ”と判断するとステップＳ１０６に移行する。“Ｎｏ”と判断すると後述するステップＳ１１１に移行する。
【００６３】
ステップＳ１０６では、判断部１２は、発言がＮ番目のエントリにおける送出条件に合致するか否かを判断する。“Ｙｅｓ”と判断するとステップＳ１０７に移行する。“Ｎｏ”と判断すると、条件テーブルの次のエントリについて判断するために、後述するステップＳ１１０に移行する。
ステップＳ１０７では、判断部１２は、送出条件に合致する送出先チャネルを、送出先リストに書き込む。
【００６４】
ステップＳ１０８では、判断部１２は、送出先として決定したチャネルを基準チャネルリストに追加する。
ステップＳ１０９では、判断部１２は、基準チャネル、送出先チャネル及び新たなホップ数を、送出元、送出先及び基準ホップ値としてホップリストに書き込む。
ステップＳ１１０では、判断部１２は、エントリ番号Ｎをインクリメントする。その後前記ステップＳ１０５に戻り、条件テーブルの次のエントリについて、前述の処理を繰り返す。
【００６５】
ステップＳ１０５で、Ｎ番目のエントリに送出先及び送出条件の設定がないと判断されると、ステップＳ１１１に移行する。ステップＳ１１１では、判断部１２は、基準チャネルを基準チャネルリストから削除する。基準チャネルの条件テーブルに設定されている送出先及び送出条件について、送出先か否かの判断が終了したからである。
ステップＳ１１２では、判断部１２は、現在のLEVELを有する全てのチャネルについて、条件テーブルをチェックしたか否かを判断する。この判断は、基準チャネルリストに現在のLEVELのチャネルが残っているか否かにより行う。“Ｎｏ”と判断すると、ステップＳ１１３に移行する。“Ｙｅｓ”と判断すると、後述するステップＳ１１４に移行する。
【００６６】
ステップＳ１１３では、判断部１２は、基準チャネルリストから、現在のLEVELを有するチャネル名を取得し、基準チャネルに設定する。その後前記ステップＳ１０２に戻り前述の処理を繰り返す。
ステップＳ１１４では、判断部１２は、次のLEVELのチャネルがあるか否かを判断する。この判断は、基準チャネルリストにチャネルが残っているか否かにより行う。“Ｙｅｓ”と判断するとステップＳ１１５に移行する。“Ｎｏ”と判断すると前記発言送出処理に戻る。
【００６７】
ステップＳ１１５では、判断部１２は、変数LEVELをインクリメントする。
ステップＳ１１６では、判断部１２は、次のLEVELのチャネルを基準チャネルリストから１つ取得し、基準チャネルに設定する。その後、前記ステップＳ１０２に戻る。
前記送出先決定処理について、具体的に説明する。説明を容易にするためにチャネル同士が図１２に示すように関連付けられているものとする。図１２は、チャネル#CHOCOAの条件テーブルに、送出先としてチャネル#meeting及び＃SUPPORTが設定されていることを示す。また、チャネル#meetingの条件テーブルに、チャネル＃ＣＨ１及び＃CH2が送出先として設定されていることを示す。全てのチャネルについて、ホップ数の削減値は「３」に設定されているとする。いま、チャネル#CHOCOAで発言が生じ、発言は全ての送出条件に合致すると仮定する。
【００６８】
まず初期設定（Ｓ１０１）では、LEVEL=0に設定され、LEVEL=０のチャネル#CHOCOAが基準チャネルリストに記述される。また、チャネル#CHOCOAが基準チャネルとして設定される。チャネル#CHOCOAのホップ数の初期値が２０であれば、チャネル#CHOCOAから送出される発言の新たなホップ数は１７＞０になる（Ｓ１０２、Ｓ１０３）。判断部１２は、チャネル#CHOCOAの条件テーブルの最初のエントリを読み込む（Ｓ１０４）。
【００６９】
チャネル#meetingへの送出条件が満足されていれば（Ｓ１０６）、チャネル#meetingは送出先リスト及び基準チャネルリストに書き込まれる（Ｓ１０７，Ｓ１０８）。また、送出元#CHOCOA、送出先#meeting及び基準ホップ値１７が対応付けられてホップリストに書き込まれる（Ｓ１０９）。同様に、チャネル＃SUPPORTも送出先リスト、基準チャネルリスト及びホップリストに書き込まれる。Ｎ＝３になった段階で設定がないと判断され（Ｓ１０５）、基準チャネルである#CHOCOAが基準チャネルから削除される（Ｓ１１１）。LEVEL０に対応する基準チャネルは、発言元チャネルだけなので、LEVEL０が終了する（Ｓ１１２）。
【００７０】
基準チャネルリストにチャネル#meeting及び＃SUPPORTが書き込まれているので（Ｓ１１４）、LEVEL=1となり（Ｓ１１５）、基準チャネルがチャネル#meetingに設定される（Ｓ１１６）。
次いで、LEVEL=１から送出される発言の新たなホップ数が計算される。基準チャネル#meetingの基準ホップ値は１７であるので、（新たなホップ数）＝１７−３＝１４となる（Ｓ１０２）。
【００７１】
次いで、チャネル#meetingからの送出先に設定されているチャネル＃ＣＨ１及び＃CH2について、前記ステップＳ１０５ステップＳ１１０の処理が繰り返される。発言が送出条件に合致しているので、チャネル＃ＣＨ１及び＃CH2はいずれも送出先リスト、基準チャネルリスト及びホップリストに追加される。両者のホップ基準値は１４である。Ｎ＝３となったところで設定が無いと判断され（Ｓ１０５）、基準チャネル#meetingが基準チャネルリストから削除される。しかし、LEVEL=１のチャネル＃SUPPORTが基準チャネルリストに残っている（Ｓ１１２）。そこでチャネル＃SUPPORTが基準チャネルに設定される（Ｓ１１３）。
【００７２】
次いで基準チャネル＃SUPPORTについて、新たなホップ数が計算される。新たなホップ数は１４となるので、条件テーブルの最初のエントリを読み込む（Ｓ１０２〜１０４）。しかし＃SUPPORT の条件テーブルには何も設定されていない（Ｓ１０５）。＃SUPPORTは基準チャネルリストから削除される（Ｓ１１１）。ここで、LEVEL=１のチャネルは基準チャネルリストになくなり、LEVEL１が終了したと判断される（Ｓ１１２）。
【００７３】
次いで、LEVEL＝２となる（Ｓ１１５）。基準チャネルが＃ＣＨ１に設定される（Ｓ１１６）。しかし、チャネル＃ＣＨ１の条件テーブルには何も設定されていないので（Ｓ１０５）、基準チャネルから削除される（Ｓ１１１）。同様に、チャネル＃CH2も基準チャネルリストから削除される。チャネル＃ＣＨ１及び＃CH2が全て基準チャネルリストから削除されると、次のLEVELは無いので（Ｓ１１４）、発言送出処理に戻る。
【００７４】
（２）ＩＲＣクライアント
図１３は、ＩＲＣクライアント２が行うチャネル関連情報の設定処理の流れを示すフローチャートである。前記関連付けボタン３７が押されることにより、以下の処理がスタートする。
まず、ステップＳ２１では、設定部２１は、ユーザウインドウ３５のユーザが選択されているか否かを判断する。“Ｙｅｓ”と判断すると、ステップＳ２２に移行する。“Ｎｏ”と判断すると、後述するステップＳ２３に移行する。
【００７５】
ステップＳ２２では、設定部２１は、選択されているユーザのニックネームを取得する。
ステップＳ２３では、設定部２１は、図４（ａ）の「チャネル設定ウインドウ」を表示し、送出先チャネルの設定を受け付ける。
ステップＳ２４では、設定部２１は、いずれかのボタンが押されるまで待機し、「ＯＫボタン」が押されるとステップＳ２５に移行する。「キャンセルボタン」が押された場合には、処理を終了する。
【００７６】
ステップＳ２５では、設定部２１は、図４（ｂ）の「条件設定ウインドウ」を表示し、送出条件の設定を受け付ける。
ステップＳ２６では、ＩＲＣクライアント２は、いずれかのボタンが押されるのを待機し、「ＯＫボタン」が押されるとステップＳ２７に移行する。「キャンセルボタン」が押された場合には、処理を終了する。
【００７７】
ステップＳ２７では、設定部２１は、設定コマンドを作成し、ＩＲＣサーバ１に送信する。設定コマンドには、送出元チャネル名、送出先チャネル名及び送出条件が記述される。
なお前記設定処理の他に、ＩＲＣクライアント２では、関連表示部２２が、参加チャネルの条件テーブルをＩＲＣサーバ１から受信し、記憶する。また、関連表示部２２は、記憶した条件テーブルの内容を表示する。
【００７８】
＜第２実施形態例＞
次に、本発明の第２実施形態例について、図面を参照して説明する。図１４は、本発明の第２実施形態例に係る会話システムの全体構成図を示す。図１４は、前記第１実施形態例と同様に、ＩＲＣシステムに本発明を適用した例を示している。図１４の会話システムは、ＩＲＣサーバに加工部１４が付加された点を除き、前記第１実施形態例と同様の構成を有している。
【００７９】
［サーバ］
ＩＲＣサーバ１は、第１実施形態例と同様にチャネル情報及びチャネル関連情報を管理する。ただし、チャネル関連情報には、加工条件が付加されている点が第１実施形態例と異なる。さらにＩＲＣサーバ１には、判断部１２及び送出部１３に加え、加工部１４が付加されている。
【００８０】
図１５は、チャネルＤＢ１１に保持されるチャネル関連情報の概念説明図である。ＩＲＣサーバ１は、チャネル関連情報として、条件テーブル及びホップテーブルを各チャネル毎に有している。ホップテーブルは、第１実施形態例と同様の構成である。条件テーブルには、送出元チャネル名、送出先チャネル名、送出条件及び表示形式に加え、加工条件が対応付けられて記憶されている。送出条件及び表示形式は、第１実施形態例と同様である。
【００８１】
「加工条件」には、送出される発言をどのように加工するか、が記述される。この図では、送出先に応じ、「チャネル名を付加」、「代表名で応答」及び「フォントを変更」がそれぞれ指定されている。
判断部１２は、第１実施形態例と同様に、チャネル内で生じた発言の送出先を決定する。さらに判断部１２は、発言内容及び加工条件を決定した送出先と共に加工部１４に通知する。条件テーブルの更新及びチャネル関連情報の通知については、判断部１２は第１実施形態例と同様に行う。
【００８２】
加工部１４は、判断部１２から通知された発言内容を加工条件に従って加工し、送出部１３に通知する。
送出部１３は、加工された発言内容を送出先チャネルに送出する。また、送出部１３は、判断部１２からの通知に応じ、チャネル関連情報をＩＲＣクライアント２に通知する。
［ＩＲＣクライアント］
ＩＲＣクライアント２は、前記第１実施形態例と同様の機能を有する。すなわち、設定部２１は、前記チャネル関連情報の設定を受け付け、設定内容をＩＲＣサーバ１に送信する。関連表示部２２は、所定のチャネル情報及びチャネル関連情報をＩＲＣサーバ１から受信し、その表示を制御する。
【００８３】
［画面］
（１）チャネル関連情報の設定
次に、送出された発言の加工例及び加工条件の設定について説明する。図１６は、ＩＲＣクライアント２により表示される、発言の送出前のチャット画面の一例である。画面には、主チャネルウインドウ３１、主会話ウインドウ３２、入力ウインドウ３３、副会話ウインドウ３４、ユーザウインドウ３５、チャネルウインドウ３６及び関連付けボタン３７が表示されている。これらのウインドウ及びボタンは、第１実施形態例と同様の機能を有する。
【００８４】
今、ＩＲＣクライアント２が２つのチャネル#CH1及び#CH2に参加しており、主チャネルが#CH1、副チャネルが#CH2とする。主チャネル#CH1には、ユーザUSER11、USER12、USER13、USER14及びUSER15が参加しているとする。主会話ウインドウ３２及び副会話ウインドウ３４には、主チャネル#CH1及び副チャネル#CH2のそれぞれにおける会話が表示されている。
【００８５】
図１７は、チャネル#CH1と#CH2とで双方向に全ての発言が送出される場合の、それぞれのチャネルにおける発言の表示例である。チャネル#CH1において、チャネル#CH2からの発言は、全てニックネーム"SUPPORT"からの発言として表示されている（主会話ウインドウ３２参照）。チャネル#CH2においては、チャネル#CH1からの発言は、全て頭にチャネル名[#CH1]を埋め込んで表示されている（副会話ウインドウ３４参照）。なお、チャネル関連情報については、第１実施形態例と同様に表示される。
図１８は第２実施形態例において表示される「条件設定ウインドウ」の一例を示す。このウインドウは第１実施形態例の図４（ｂ）に相当し、加工条件の設定を受け付ける点が図４（ｂ）と異なる。第１実施形態例と同様に関連付けボタン３７を押して図４（ａ）の「チャネル設定ウインドウ」で送出元及び送出先チャネルを設定し、「ＯＫボタン」を押すと、図１８の条件設定ウインドウが表示される。
【００８６】
この「条件設定ウインドウ」では、チャネル#CH1からチャネル#CH2へ発言を送出する条件に加え、さらに発言の加工条件が設定される。送出条件の設定については、第１実施形態例と同様に、「無送出」、「全て送出」、「キーワード設定」及び「ユーザ選択」を選択して設定可能である。
「加工条件設定」が選択されると、加工条件の一覧がプルダウンメニューで表示される。図示した例では、ユーザは、「チャネル名を付加する」、「代表名で応答」、「フォントを変更」及び「表示色を変更」のいずれかを選択することができる。図のように「代表名で応答」が選択された場合、代表名の入力を受け付けるためのフィールド４２がさらに表示される。また、「フォントを変更」及び「表示色を変更」のいずれかが選択された場合、設定可能なフォントや表示色を選択するプルダウンメニューが表示される（図示せず）。
【００８７】
図１８で「ＯＫボタン」が押されると、ＩＲＣクライアント２からＩＲＣサーバ１に設定コマンドが送信される。設定コマンドには、送出元チャネル、送出先チャネル及び送出条件に加え、さらに加工条件が記述される。この場合の設定コマンドの例を示す。
“RELATION #CH1 #CH2 CONTENT* CHANNEL”
前記設定コマンドは、チャネル#CH1の全ての発言を、頭にチャネル名を付けて既存のチャネル#CH2に送出するための設定コマンドである。
【００８８】
“RELATION #CH2 #CH1 CONTENT* REPRESENTATIVE(SUPPORT)”
前記設定コマンドは、チャネル#CH2の全ての発言を代表名“SUPPORT”からの発言として既存のチャネル#CH1に送出するための設定コマンドである。
図１９は、図１７に示すチャネル#CH1及び＃ＣＨ２間での発言の転送を行う場合の、チャネル#CH1及び#CH2の条件テーブルである。チャネル#CH1の条件テーブルには、加工条件として、発言に「チャネル名を付加」することが記述されている。また、チャネル#CH2の条件テーブルには、加工条件として、「代表名SUPPORTで応答」することが記述されている。また、両テーブルとも、送出条件として全ての発言を送出することが設定されている。
【００８９】
なお、図示していないが、加工条件として「フォントを変更」または「表示色を変更」が選択された場合、選択されたフォントまたは表示色が併せて条件テーブルに記憶される。
［処理の流れ］
（１）サーバ
（１−１）発言送出処理
図２０は、ＩＲＣサーバ１が行う発言送出処理の流れを示すフローチャートである。ＩＲＣサーバ１がいずれかのチャネルにおける発言を受信することにより、以下の処理が開始される。なお、チャネル内のＩＲＣクライアント２への発言の同報処理は、通常と同様であるので説明を省略する。
【００９０】
ステップＳ１では、判断部１２は、受信データから発言元チャネル名及び発言を取得する。
ステップＳ２では、判断部１２は、前述の送出先決定サブルーチンを実行する。送出先決定サブルーチンは、第１実施形態例と同様にして、送出条件に合致しているか否かかつ発言のホップ数が基準値を満たしているか否かの判断により送出先を決定する。
【００９１】
ステップＳ３では、加工部１４は、加工条件に従い発言を加工する。発言は、送出先ごとに設定された加工条件に従って、送出先ごとに別々の加工を施される。「チャネル名を付加する」が設定されていれば、発言の頭に送出元チャネル名が付加される。「代表名で応答」が設定されていれば、発言者のニックネームが指定された代表名に書き換えられる。「フォントを変更」が設定されていれば、発言が指定されたフォントに書き換えられる。「表示色を変更」が設定されていれば、発言は指定された表示色に書き換えられる。
【００９２】
ステップＳ４では、送出部１３は、前記ステップＳ２において決定した送出先に、加工された発言を送出する。
前記処理の他に、ＩＲＣサーバ１が各ＩＲＣクライアント２にチャネル関連情報を送信するのは、第１実施形態例と同様である。
（２）ＩＲＣクライアント
ＩＲＣクライアント２は、第１実施形態例と同様に、前記図１３に示すチャネル関連情報の設定処理を行う。すなわち、ユーザからの指示に従い、図４（ａ）のチャネル設定ウインドウや図１８の条件設定ウインドウを表示する。また、これらのウインドウへの入力を受け付け、入力された内容を記述したコマンドをＩＲＣサーバ１に送信する。
【００９３】
なお前記設定処理の他に、ＩＲＣクライアント２が参加チャネルの条件テーブルをＩＲＣサーバ１から受信したり、条件テーブルの内容を表示するのは、第１実施形態例と同様である。
＜他の実施形態例＞
（Ａ）前記実施形態例では、チャネル関連情報をＩＲＣサーバ１に持たせているが、ＩＲＣクライアント２に持たせることも可能である。その場合、ＩＲＣクライアント２は、あるチャネルで入力された発言をそのチャネルに送出し、かつそのチャネルの条件テーブルを参照して送出先を決定する。次いで、送出先チャネルに入力された発言を送出する。送出先チャネルの決定処理は、前記図１１の送出先決定処理と同様である。ＩＲＣクライアント２で発言の送出を行えば、ＩＲＣサーバを用いない会話システムを構築可能となる。
【００９４】
（Ｂ）前記実施形態例では、条件テーブルの変更のために、ＩＲＣクライアントに設定部２１を設けている。しかし、既存のアプリケーションを用いて条件テーブルの変更を行うことも可能である。図２１は、ＷＷＷサーバ及びブラウザを用いて条件テーブルの変更を行う場合の会話システム構成図である。
送出条件や加工条件を入力するためのウェブページが、予めＷＷＷサーバに準備されている。ユーザは、ユーザ端末６上のブラウザ５によりウェブページにアクセスし、条件の設定を行う。このウェブページ（図示せず）は、図４や図１８の設定ウインドウに相当する。
【００９５】
ＩＲＣサーバには書換部１５が設けられている。ウェブページで設定された内容は、書換部１５に送出され、書換部１５によりチャネルＤＢ１１内の条件テーブルに書き込まれる。このようにすれば、ＩＲＣサーバ１に書換部１５を設けておくだけで、ユーザがＩＲＣサーバ上の条件テーブルを書き換えることが出来るようになる。
（Ｃ）前述の実施形態例は、会話システムとしてＩＲＣを用いた場合を例に取り、説明した。しかし、本発明は、ＩＲＣ以外の会話システムにも適用可能である。例えば、ウェブチャット、ニフティのフォーラムを挙げることが出来る。
【００９６】
（Ｄ）前述した本発明の方法を実行するプログラムを記録した記録媒体は、本発明に含まれる。ここで記録媒体としては、コンピュータが読み書き可能なフレキシブルディスク、ハードディスク、半導体メモリ、CD-ROM、ＤＶＤ、光磁気ディスク（ＭＯ）、その他の
ものが挙げられる。
（Ｅ）前述した本発明の方法を実行するプログラムを伝送する伝送媒体についても本発明に含まれる。ここで伝送媒体としては、プログラム情報を搬送波として伝搬させて供給するためのコンピュータネットワーク（ＬＡＮ、インターネット、無線通信ネットワーク）システムにおける通信媒体（光ファイバ、無線回線、その他）を挙げることが出来る。
【図面の簡単な説明】
【００９７】
【図１】本発明の第１実施形態例に係る会話システムの全体構成図。
【図２】チャネル関連情報の概念説明図。（ａ）条件テーブルの概念説明図。（ｂ）ホップテーブルの概念説明図。
【図３】送出先設定前のチャット画面の一例を示す説明図。
【図４】設定ウインドウの一例を示す説明図。（ａ）「チャネル設定ウインドウ」の一例。（ｂ）「条件設定ウインドウ」の一例。
【図５】送出先チャネルにおける画面例。
【図６】送出元チャネル及び送出先チャネルの条件テーブルの概念説明図。
【図７】キーワードに基づく発言の送出の表示例を示す説明図。
【図８】送出元チャネル及び送出先チャネルの条件テーブルの概念説明図。
【図９】（ａ），（ｂ）チャネル関連情報の表示例。
【図１０】発言送出処理の流れを示すフローチャート。
【図１１】送出先決定処理の流れを示すフローチャート。
【図１２】チャネル同士の関連の説明図。
【図１３】関連情報設定処理の流れを示すフローチャート。
【図１４】本発明の第２実施形態例に係る会話システムの全体構成図。
【図１５】チャネル関連情報の概念説明図（加工条件）。  （ａ）条件テーブルの概念説明図。  （ｂ）ホップテーブルの概念説明図。
【図１６】発言の送出がない場合の表示例。
【図１７】送出された発言の加工例。
【図１８】加工条件の設定例。
【図１９】（ａ），（ｂ）図１７に示す発言の加工を行う場合のチャネル関連情報の例。
【図２０】発言送出処理の流れを示すフローチャート（第２実施形態例）。
【図２１】ＩＲＣクライアントに設定部を設けない場合のシステム構成例。
【符号の説明】
【００９８】
１１；チャネルＤＢ
１２；判断部
１３；送出部
１４；加工部
２１；設定部
２２；関連表示部
【図１】
0004468935.tif 000002
【図２】
0004468935.tif 000003
【図３】
0004468935.tif 000004
【図４】
0004468935.tif 000005
【図５】
0004468935.tif 000006
【図６】
0004468935.tif 000007
【図７】
0004468935.tif 000008
【図８】
0004468935.tif 000009
【図９】
0004468935.tif 000010
【図１０】
0004468935.tif 000011
【図１１】
0004468935.tif 000012
【図１２】
0004468935.tif 000013
【図１３】
0004468935.tif 000014
【図１４】
0004468935.tif 000015
【図１５】
0004468935.tif 000016
【図１６】
0004468935.tif 000017
【図１７】
0004468935.tif 000018
【図１８】
0004468935.tif 000019
【図１９】
0004468935.tif 000020
【図２０】
0004468935.tif 000021
【図２１】
0004468935.tif 000022