JPH1115667A - メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体 - Google Patents

メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体

Info

Publication number
JPH1115667A
JPH1115667A JP9152426A JP15242697A JPH1115667A JP H1115667 A JPH1115667 A JP H1115667A JP 9152426 A JP9152426 A JP 9152426A JP 15242697 A JP15242697 A JP 15242697A JP H1115667 A JPH1115667 A JP H1115667A
Authority
JP
Japan
Prior art keywords
conversation
message processing
conversation thread
processing device
message
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
JP9152426A
Other languages
English (en)
Other versions
JP3883647B2 (ja
Inventor
Akifumi Nakada
田 章 文 中
Hajime Tsuchitani
谷 一 槌
Osamu Furusawa
澤 修 古
Toshihiro Suzuki
木 俊 宏 鈴
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP15242697A priority Critical patent/JP3883647B2/ja
Priority to CNB98107975XA priority patent/CN1159653C/zh
Priority to TW087107344A priority patent/TW455771B/zh
Priority to KR1019980017148A priority patent/KR100342726B1/ko
Priority to GB9812142A priority patent/GB2327516B/en
Priority to GB9921267A priority patent/GB2338575B/en
Publication of JPH1115667A publication Critical patent/JPH1115667A/ja
Priority to US09/832,488 priority patent/US8949309B2/en
Priority to US11/034,697 priority patent/US7512660B2/en
Application granted granted Critical
Publication of JP3883647B2 publication Critical patent/JP3883647B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Multi Processors (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

(57)【要約】 【課題】 エージェント間の会話に柔軟に対応すること
ができるコミュニケーション・システムを提供すること
にある。 【解決手段】本発明は、耳と口に相当するソフトウェア
会話部品200をエージェント201に提供する。エー
ジェントは、会話を発するときは、人間の会話に近いエ
ージェント・コミュニケーション言語を用意し、それを
メッセージ・パケットとして会話部品200に送る。会
話部品200は会話単位に複数の会話スレッドを生成
し、非同期並列に複数のノードと会話する。この一方、
メッセージ・パケットを受領する他のノードにおいて
は、プロトコル・マネジャ230が、ネットワークから
のデータ(メッセージ・パケット)を受け取り、会話部
品200へ渡す。会話部品200はメッセージ・パケッ
トを理解し内容を実施する。本発明の好適な実施例の一
態様においては、会話部品200は、移動エージェント
とともに他のプレースに移動する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、コンピュータネット
ワークにおけるデータ処理方法に関し、より詳しくは、
分散コンピュータ環境あって、ネットワーク上に存在す
る2以上のノード間のコミュニケーションをサポートす
るための改良されたデータ処理方法に関する。
【0002】
【従来の技術】従来より、分散コンピュータ環境におい
て、ネットワーク上に存在するサーバに提供されている
プレースに自分自身の内部状態を保持したまま移動し、
移動先のプレースにおいてインストラクションを形成す
る移動エージェント(モーバイルエージェント)技術が
存在する(特開平7−182174号公報(USP5,603,03
1)、「日経コミュニケーション別冊、最新インターネッ
トテクノロジ」日経BP社pp104−117、西田
文比古、藤原 進 著等)。
【0003】かかる移動エージェントは、この移動先の
プレースにおいて他のエージェント(移動エージェント
または常駐エージェント)とコンタクトし、必要なサー
ビスを受けることができる。プレースは、ネットワーク
上に存在するサーバによって提供されているエージェン
トの移動場所であり、エージェント間のコンタクトをサ
ポートし、また、ハードウエア及びプラットフォームの
違いを吸収している。
【0004】かかる移動エージェントの技術は、社内会
議のセッティングを社員のスケジュールや会議室の予約
状況に応じてダイナミックに調整したり、ネットワーク
上に分散する所望の情報を入手する等、これまで人手に
よってなされていた作業をこの移動エージェントが代行
することを可能にしている。
【0005】しかし、従来の移動エージェントにおい
て、エージェント間のコミュニケーションは従来通りの
メソッド呼び出し(サブルーチン・コール)もしくは低
レベルのメッセージ・パッシングによって実現されてい
たため、エージェント間での柔軟で円滑な情報交換およ
び協調動作の実現を困難なものとしていた。また、エー
ジェントを用いてコミュニケーションを行う為には、定
形的な会話の処理をも規定する必要があり、エージェン
トの利用者の負担となっていた。さらに、様々なエージ
ェントの間でのコミュニケーションを実現するためのエ
ージェント・コミュニケーション言語を使用していない
ため、異種エージェント間でのコミュニケーションは非
常に困難なものとなっていた。
【0006】この一方、人間同士が会話をする場合、一
般に、 1.話し手は、話し手の意図を聞き手に伝えるために、
話す内容を用意し、 2.話を開始する。 3.聞き手は、その話を聞き、話の流れを理解し、 4.その話の背景を自分の経験したものから連想し、関
連付け、 5.その話の内容を理解し、 6.その結果行為を起こす。 といったステップにより構成される。
【0007】このように会話をパターン化することによ
り、単なるコンピューターのメッセージング・システム
をより自然言語のメッセージ処理に近いものとして定義
し、再利用可能なデザインとすれば、従来より自然言語
系に近いメッセージの処理を可能となり、利用するユー
ザに親しみやすく、何らかの文脈を持つ一連のパケット
の流れのやり取りを文脈を意識しながら行うインテリジ
ェントなメッセージ・システムを構築することができ
る。
【0008】
【発明が解決しようとする課題】本発明の一つの目的
は、エージェント(移動エージェントまたは常駐エージ
ェント)にコミュニケーションを行わせるに際して、人
間にとって直感的に判りやすいエージェント・コミュニ
ケーション言語を用いて会話を行うことのできるコミュ
ニケーション・システムを提供することにある。
【0009】本発明の他の一つの目的は、複数のエージ
ェント(移動エージェントまたは常駐エージェント)と
の間で非同期に会話を同時進行することのできるコミュ
ニケーション・システムを提供することにある。
【0010】本発明の他の一つの目的は、エージェント
が様々なエージェント・コミュニケーション言語やコミ
ュニケーション・プロトコルを意識せずにコミュニケー
ションを行うことのできるコミュニケーション・システ
ムを提供することにある。
【0011】本発明の他の一つの目的は、高速な並列会
話処理を実現したコミュニケーション・システムを提供
することにある。
【0012】本発明の他の一つの目的は、エージェント
間のコミュニケーションをサポートするに際し、プログ
ラマの開発や保守に要する労力及び時間を可能な限り軽
減することにある。
【0013】本発明の他の一つの目的は、エージェント
間の会話に柔軟に対応することができるコミュニケーシ
ョン・システムを提供することにある。
【0014】本発明の他の一つの目的は、通信システム
への負担が少ないメッセージ処理システムを提供するこ
とにある。
【0015】
【課題を解決するための手段】本発明は、耳と口に相当
するソフトウェア部品(エージェント・コミュニケーシ
ョン・システム)をエージェントに提供する。このエー
ジェント・コミュニケーション・システムにおいて、耳
は、"handleMessage"というAPI(Application Program I
nterface)により提供され、口は、"sendMessage"という
APIにより提供される。本発明の一態様において、これ
らのAPIは、エージェント・コミュニケーション・シス
テムのエージェント・コミュニケーション言語マネジャ
・オブジェクトのメソッド(オブジェクト指向用語とし
てのメソッド)として実装されている。
【0016】エージェントは、会話を発するときは、人
間の会話に近いエージェント・コミュニケーション言語
(ACL)を用意し、それをsendMessageに渡して送
る。発話により発信されるメッセージ・パケットには、
送信元と宛先のフィールドが含まれているためエージェ
ント・コミュニケーション・システムは相手の場所を認
識することができる。
【0017】この一方、メッセージ・パケットを受領す
る他のノードにおいては、ネットワークを介して流れて
くるデータを処理するコンポーネントであるプロトコル
・マネジャが、ネットワークからのデータ(メッセージ
・パケット)を受け取り、エージェント・コミュニケー
ション言語マネジャ・オブジェクトのhandleMessageメ
ソッドへ渡す。handleMessageメソッドがメッセージ・
パケットを理解し内容を実施する。
【0018】本発明の一態様においては、エージェント
・コミュニケーション・システムがメッセージ・パケッ
トを送信または受信する際に、新たな会話が開始された
か否かを判断し、新たな会話が開始されたと判断した場
合には、会話スレッドを新たに生成する。この会話スレ
ッドにより複数のエージェント(移動エージェントまた
は常駐エージェント)との間で非同期に会話を同時進行
することができる。
【0019】また、本発明の一態様においては、この耳
と口をエージェントに付けるためには、エージェント・
コミュニケーション言語マネジャ・オブジェクトをイン
スタンシエートするだけで実現できる。
【0020】本発明の一態様においては、(a)送付先
情報と、会話スレッド識別情報を含むメッセージ・パケ
ットを検出する段階と、(b)前記メッセージ・パケッ
トに含まれる会話スレッド識別情報に対応した会話スレ
ッドが前記メッセージ処理装置に存在するか否か判断す
る段階と、(c)前記対応した会話スレッドが前記メッ
セージ処理装置に存在しないと判断された場合、新たな
会話スレッドを生成する段階と、(d)前記送付先情報
に対応した送付先に前記メッセージ・パケットを送信す
る段階と、を含む複数の会話スレッドを生成可能な会話
スレッド制御部を有し、ネットワークに接続したメッセ
ージ処理装置で実行されるメッセージ処理方法が提供さ
れる。
【0021】本発明の他の一態様においては、(a)送
付先情報と、会話スレッド識別情報と、コンテント情報
を含むメッセージ・パケットを検出する段階と、(b)
前記メッセージ・パケットに含まれる会話スレッド識別
情報に対応した会話スレッドが前記メッセージ処理装置
に存在するか否か判断する段階と、(c)前記対応した
会話スレッドが前記メッセージ処理装置に存在しないと
判断された場合、新たな会話スレッドを生成する段階
と、(d)前記メッセージ・パケットを前記メッセージ
処理装置が接続するネットワークに対応したプロトコル
に変換する段階と、(e)前記送付先情報に対応した送
付先に前記メッセージ・パケットを送信する段階と、を
含む複数の会話スレッドを生成可能な会話スレッド制御
部を有し、ネットワークに接続したメッセージ処理装置
で実行されるメッセージ処理方法が提供される。
【0022】本発明の他の一態様においては、(a)会
話スレッド識別情報を含むメッセージ・パケットを検出
する段階と、(b)前記メッセージ・パケットに含まれ
る会話スレッド識別情報に対応した会話スレッドが前記
メッセージ処理装置に存在するか否か判断する段階と、
(c)前記対応した会話スレッドが前記メッセージ処理
装置に存在しないと判断された場合、新たな会話スレッ
ドを生成する段階と、を含む複数の会話スレッドを生成
可能な会話スレッド制御部を有し、ネットワークに接続
したメッセージ処理装置で実行されるメッセージ処理方
法が提供される。
【0023】本発明の他の一態様においては、(a)会
話スレッド識別情報とコンテント情報を含むメッセージ
・パケットを検出する段階と、(b)前記メッセージ・
パケットに含まれる会話スレッド識別情報に対応した会
話スレッドが前記メッセージ処理装置に存在するか否か
判断する段階と、(c)前記対応した会話スレッドが前
記メッセージ処理装置に存在すると判断された場合、該
対応する会話スレッドに制御を渡す段階と、を含む複数
の会話スレッドを生成可能な会話スレッド制御部を有
し、ネットワークに接続したメッセージ処理装置で実行
されるメッセージ処理方法が提供される。
【0024】本発明の他の一態様においては、(a)会
話スレッド識別情報を含むメッセージ・パケットを受領
する段階と、(b)前記メッセージ・パケットに含まれ
る会話スレッド識別情報に対応した会話スレッドが前記
メッセージ処理装置に存在するか否か判断する段階と、
(c)前記対応した会話スレッドが前記メッセージ処理
装置に存在しないと判断された場合、新たな会話スレッ
ドを生成する段階と、を含む複数の会話スレッドを生成
可能な会話スレッド制御部を有し、ネットワークに接続
したメッセージ処理装置で実行されるメッセージ処理方
法が提供される。
【0025】本発明の他の一態様においては、(a)会
話スレッド識別情報とコンテント情報を含むメッセージ
・パケットを受領する段階と、(b)前記メッセージ・
パケットに含まれる会話スレッド識別情報に対応した会
話スレッドが前記メッセージ処理装置に存在するか否か
判断する段階と、(c)前記対応した会話スレッドが前
記メッセージ処理装置に存在すると判断された場合、該
対応する会話スレッドに制御を渡す段階と、(d)前記
コンテント情報の内容を解析する段階と、を含む複数の
会話スレッドを生成可能な会話スレッド制御部を有し、
ネットワークに接続したメッセージ処理装置で実行され
るメッセージ処理方法が提供される。
【0026】本発明の他の一態様においては、(a)前
記複数の会話スレッドを停止する段階と、(b)前記会
話部品オブジェクトを前記ネットワークを介して他のプ
レースに送出する段階と、(c)前記他のメッセージ処
理装置において、前記複数の会話スレッドを再開する段
階と、を含む複数の会話スレッドと前記複数の会話スレ
ッドを制御可能な会話スレッド制御部を含む会話部品オ
ブジェクトを有し、ネットワークを介して他のメッセー
ジ処理装置にメッセージを送出可能なメッセージ処理装
置で実行されるメッセージ処理方法が提供される。
【0027】本発明の他の一態様においては、(a)複
数の会話スレッドと、(b)送付先情報と、会話スレッ
ド識別情報と、コンテント情報を含むメッセージ・パケ
ットを検出するエージェント・コミュニケーション言語
マネジャと、(c−1)前記メッセージ・パケットに含
まれる会話スレッド識別情報に対応した会話スレッドが
前記メッセージ処理装置に存在するか否か判断し、(c
−2)前記対応した会話スレッドが前記メッセージ処理
装置に存在しないと判断された場合、新たな会話スレッ
ドを生成する会話スレッド制御部と、(d)前記メッセ
ージ・パケットを前記メッセージ処理装置が接続するネ
ットワークに対応したプロトコルに変換するプロトコル
・マネジャと、を含むネットワークに接続したメッセー
ジ処理装置が提供される。
【0028】本発明の他の一態様においては、(a)会
話スレッド識別情報を含むメッセージ・パケットを検出
するエージェント・コミュニケーション言語マネジャ
と、(b−1)前記メッセージ・パケットに含まれる会
話スレッド識別情報に対応した会話スレッドが前記メッ
セージ処理装置に存在するか否か判断し、(b−2)前
記対応した会話スレッドが前記メッセージ処理装置に存
在しないと判断された場合、新たな会話スレッドを生成
する会話スレッド制御部と、を含む複数の会話スレッド
を生成可能な会話スレッド制御部を有し、ネットワーク
に接続したメッセージ処理装置が提供される。
【0029】本発明の他の一態様においては、(a)会
話スレッド識別情報とコンテント情報を含むメッセージ
・パケットを検出するエージェント・コミュニケーショ
ン言語マネジャと、(b−1)前記メッセージ・パケッ
トに含まれる会話スレッド識別情報に対応した会話スレ
ッドが前記メッセージ処理装置に存在するか否か判断
し、(b−2)前記対応した会話スレッドが前記メッセ
ージ処理装置に存在すると判断された場合、該対応する
会話スレッドに制御を渡す会話スレッド制御部と、を含
む複数の会話スレッドを生成可能な会話スレッド制御部
を有し、ネットワークに接続したメッセージ処理装置が
提供される。
【0030】本発明の他の一態様においては、(a)会
話スレッド識別情報を含むメッセージ・パケットを受領
するプロトコル・マネジャと、(b−1)前記メッセー
ジ・パケットに含まれる会話スレッド識別情報に対応し
た会話スレッドが前記メッセージ処理装置に存在するか
否か判断し、(b−2)前記対応した会話スレッドが前
記メッセージ処理装置に存在しないと判断された場合、
新たな会話スレッドを生成する会話スレッド制御部と、
を含む複数の会話スレッドを生成可能な会話スレッド制
御部を有し、ネットワークに接続したメッセージ処理装
置が提供される。
【0031】本発明の他の一態様においては、(a)会
話スレッド識別情報とコンテント情報を含むメッセージ
・パケットを受領するプロトコル・マネジャと、(b−
1)前記メッセージ・パケットに含まれる会話スレッド
識別情報に対応した会話スレッドが前記メッセージ処理
装置に存在するか否か判断し、(b−2)前記対応した
会話スレッドが前記メッセージ処理装置に存在すると判
断された場合、該対応する会話スレッドに制御を渡す会
話スレッド制御部と、(d)前記コンテント情報の内容
を解析するインタプリタと、を含む複数の会話スレッド
を生成可能な会話スレッド制御部を有し、ネットワーク
に接続したメッセージ処理装置が提供される。
【0032】本発明の他の一態様においては、(a)送
付先情報と、会話スレッド識別情報を含むメッセージ・
パケットを検出することを前記メッセージ処理装置に指
示するためのプログラムコードと、(b)前記メッセー
ジ・パケットに含まれる会話スレッド識別情報に対応し
た会話スレッドが前記メッセージ処理装置に存在するか
否か判断することを前記メッセージ処理装置に指示する
ためのプログラムコードと、(c)前記対応した会話ス
レッドが前記メッセージ処理装置に存在しないと判断さ
れた場合、新たな会話スレッドを生成することを前記メ
ッセージ処理装置に指示するためのプログラムコード
と、(d)前記送付先情報に対応した送付先に前記メッ
セージ・パケットを送信することを前記メッセージ処理
装置に指示するためのプログラムコードと、を含む複数
の会話スレッドを生成可能な会話スレッド制御部を有
し、ネットワークに接続したメッセージ処理装置で実行
されるメッセージ処理プログラムを格納した記録媒体が
提供される。
【0033】本発明の他の一態様においては、(a)送
付先情報と、会話スレッド識別情報と、コンテント情報
を含むメッセージ・パケットを検出することを前記メッ
セージ処理装置に指示するためのプログラムコードと、
(b)前記メッセージ・パケットに含まれる会話スレッ
ド識別情報に対応した会話スレッドが前記メッセージ処
理装置に存在するか否か判断することを前記メッセージ
処理装置に指示するためのプログラムコードと、(c)
前記対応した会話スレッドが前記メッセージ処理装置に
存在しないと判断された場合、新たな会話スレッドを生
成することを前記メッセージ処理装置に指示するための
プログラムコードと、(d)前記メッセージ・パケット
を前記メッセージ処理装置が接続するネットワークに対
応したプロトコルに変換することを前記メッセージ処理
装置に指示するためのプログラムコードと、(e)前記
送付先情報に対応した送付先に前記メッセージ・パケッ
トを送信することを前記メッセージ処理装置に指示する
ためのプログラムコードと、を含む複数の会話スレッド
を生成可能な会話スレッド制御部を有し、ネットワーク
に接続したメッセージ処理装置で実行されるメッセージ
処理プログラムを格納した記録媒体が提供される。
【0034】本発明の他の一態様においては、(a)会
話スレッド識別情報を含むメッセージ・パケットを検出
することを前記メッセージ処理装置に指示するためのプ
ログラムコードと、(b)前記メッセージ・パケットに
含まれる会話スレッド識別情報に対応した会話スレッド
が前記メッセージ処理装置に存在するか否か判断するこ
とを前記メッセージ処理装置に指示するためのプログラ
ムコードと、(c)前記対応した会話スレッドが前記メ
ッセージ処理装置に存在しないと判断された場合、新た
な会話スレッドを生成することを前記メッセージ処理装
置に指示するためのプログラムコードと、を含む複数の
会話スレッドを生成可能な会話スレッド制御部を有し、
ネットワークに接続したメッセージ処理装置で実行され
るメッセージ処理プログラムを格納した記録媒体が提供
される。
【0035】本発明の他の一態様においては、(a)会
話スレッド識別情報とコンテント情報を含むメッセージ
・パケットを検出することを前記メッセージ処理装置に
指示するためのプログラムコードと、(b)前記メッセ
ージ・パケットに含まれる会話スレッド識別情報に対応
した会話スレッドが前記メッセージ処理装置に存在する
か否か判断することを前記メッセージ処理装置に指示す
るためのプログラムコードと、(c)前記対応した会話
スレッドが前記メッセージ処理装置に存在すると判断さ
れた場合、該対応する会話スレッドに制御を渡すことを
前記メッセージ処理装置に指示するためのプログラムコ
ードと、を含む複数の会話スレッドを生成可能な会話ス
レッド制御部を有し、ネットワークに接続したメッセー
ジ処理装置で実行されるメッセージ処理プログラムを格
納した記録媒体が提供される。
【0036】本発明の他の一態様においては、(a)会
話スレッド識別情報を含むメッセージ・パケットを受領
することを前記メッセージ処理装置に指示するためのプ
ログラムコードと、(b)前記メッセージ・パケットに
含まれる会話スレッド識別情報に対応した会話スレッド
が前記メッセージ処理装置に存在するか否か判断するこ
とを前記メッセージ処理装置に指示するためのプログラ
ムコードと、(c)前記対応した会話スレッドが前記メ
ッセージ処理装置に存在しないと判断された場合、新た
な会話スレッドを生成することを前記メッセージ処理装
置に指示するためのプログラムコードと、を含む複数の
会話スレッドを生成可能な会話スレッド制御部を有し、
ネットワークに接続したメッセージ処理装置で実行され
るメッセージ処理プログラムを格納した記録媒体が提供
される。
【0037】本発明の他の一態様においては、(a)会
話スレッド識別情報とコンテント情報を含むメッセージ
・パケットを受領することを前記メッセージ処理装置に
指示するためのプログラムコードと、(b)前記メッセ
ージ・パケットに含まれる会話スレッド識別情報に対応
した会話スレッドが前記メッセージ処理装置に存在する
か否か判断することを前記メッセージ処理装置に指示す
るためのプログラムコードと、(c)前記対応した会話
スレッドが前記メッセージ処理装置に存在すると判断さ
れた場合、該対応する会話スレッドに制御を渡すことを
前記メッセージ処理装置に指示するためのプログラムコ
ードと、(d)前記コンテント情報の内容を解析するこ
とを前記メッセージ処理装置に指示するためのプログラ
ムコードと、を含む複数の会話スレッドを生成可能な会
話スレッド制御部を有し、ネットワークに接続したメッ
セージ処理装置で実行されるメッセージ処理プログラム
を格納した記録媒体が提供される。
【0038】本発明の他の一態様においては、(a)前
記複数の会話スレッドを停止することを前記メッセージ
処理装置に指示するためのプログラムコードと、(b)
前記会話部品オブジェクトを前記ネットワークを介して
他のプレースに送出することを前記メッセージ処理装置
に指示するためのプログラムコードと、(c)前記複数
の会話スレッドを再開することを前記他のメッセージ処
理装置に指示するためのプログラムコードと、を含む複
数の会話スレッドと前記複数の会話スレッドを制御可能
な会話スレッド制御部を含む会話部品オブジェクトを有
し、ネットワークを介して他のメッセージ処理装置にメ
ッセージを送出可能なメッセージ処理装置で実行される
メッセージ処理プログラムを格納した記録媒体が提供さ
れる。
【0039】本発明の他の一態様においては、(a)複
数の会話スレッドと、(b)送付先情報と、会話スレッ
ド識別情報と、コンテント情報を含むメッセージ・パケ
ットを検出するエージェント・コミュニケーション言語
マネジャと、(c−1)前記メッセージ・パケットに含
まれる会話スレッド識別情報に対応した会話スレッドが
前記メッセージ処理装置に存在するか否か判断し、(c
−2)前記対応した会話スレッドが前記メッセージ処理
装置に存在しないと判断された場合、新たな会話スレッ
ドを生成する会話スレッド制御部と、(d)前記メッセ
ージ・パケットを前記メッセージ処理装置が接続するネ
ットワークに対応したプロトコルに変換するプロトコル
・マネジャと、を含む複数の会話スレッドを生成可能な
会話スレッド制御部を有し、ネットワークに接続したメ
ッセージ処理装置にロードされる複数のオブジェクトを
含む会話部品オブジェクトを格納した記録媒体が提供さ
れる。
【0040】本発明の他の一態様においては、(a)会
話スレッド識別情報を含むメッセージ・パケットを検出
するエージェント・コミュニケーション言語マネジャ
と、(b−1)前記メッセージ・パケットに含まれる会
話スレッド識別情報に対応した会話スレッドが前記メッ
セージ処理装置に存在するか否か判断し、(b−2)前
記対応した会話スレッドが前記メッセージ処理装置に存
在しないと判断された場合、新たな会話スレッドを生成
する会話スレッド制御部と、を含む複数の会話スレッド
を生成可能な会話スレッド制御部を有し、ネットワーク
に接続したメッセージ処理装置にロードされる複数のオ
ブジェクトを含む会話部品オブジェクトを格納した記録
媒体が提供される。
【0041】本発明の他の一態様においては、(a)会
話スレッド識別情報とコンテント情報を含むメッセージ
・パケットを検出するエージェント・コミュニケーショ
ン言語マネジャと、(b−1)前記メッセージ・パケッ
トに含まれる会話スレッド識別情報に対応した会話スレ
ッドが前記メッセージ処理装置に存在するか否か判断
し、(b−2)前記対応した会話スレッドが前記メッセ
ージ処理装置に存在すると判断された場合、該対応する
会話スレッドに制御を渡す会話スレッド制御部と、を含
む複数の会話スレッドを生成可能な会話スレッド制御部
を有し、ネットワークに接続したメッセージ処理装置に
ロードされる複数のオブジェクトを含む会話部品オブジ
ェクトを格納した記録媒体が提供される。
【0042】本発明の他の一態様においては、(a)会
話スレッド識別情報を含むメッセージ・パケットを受領
するプロトコル・マネジャと、(b−1)前記メッセー
ジ・パケットに含まれる会話スレッド識別情報に対応し
た会話スレッドが前記メッセージ処理装置に存在するか
否か判断し、(b−2)前記対応した会話スレッドが前
記メッセージ処理装置に存在しないと判断された場合、
新たな会話スレッドを生成する会話スレッド制御部と、
を含む複数の会話スレッドを生成可能な会話スレッド制
御部を有し、ネットワークに接続したメッセージ処理装
置にロードされる複数のオブジェクトを含む会話部品オ
ブジェクトを格納した記録媒体が提供される。
【0043】
【実施例】以下、図面を参照して本発明の実施例を説明
する。図1を参照すると、本発明の移動オブジェクトを
実行する分散ネットワーク環境150が示されている。
各サーバ112〜115には、移動エージェント12
5、135、141等にサービスを与えることが可能な
プレース102〜105が用意されている。この分散ネ
ットワーク環境におけるプレース群はクラウドと呼ばれ
ている。
【0044】クライアント・システム101において
は、移動エージェントを生成し、移動させるためのアプ
リケーション113が存在する。アプリケーション11
3が送り出した移動エージェント125等は、各プレー
ス102〜105において存在する他のエージェント
(移動エージェントまたは常駐エージェント)とコンタ
クトし、サービスを提供するエージェントを特にアクタ
ー・エージェントと呼ぶ)、リクエストを送出し、その
リクエストの結果を受けることができる。プレースは、
エージェント間のコンタクトをサポートしている。ま
た、移動エージェント125等は、アクター・エージェ
ントから受領したリクエストの結果を保持し、移動を継
続し、または、移動途中で結果をクライアント101ま
たは、他のプレースに送出することもできる。
【0045】また、移動エージェント(または常駐エー
ジェント)125は、他のプレースにメッセージ・パケ
ットを送出して、他のプレースで会話を実行し、インス
トラクションを実行することもできる。
【0046】図2は、図1に示された分散ネットワーク
環境上に存在する各ノード(サーバまたはクライアント
サイト)のハードウェア構成の概観図が示されている。
各ノード100は、中央処理装置(CPU)1とメモリ
4とを含んでいる。CPU1とメモリ4は、バス2を介
して、補助記憶装置としてのハードディスク装置13と
を接続してある。フロッピーディスク装置20、ハード
ディスク装置13,30、CD−ROMドライブ26,
29、MOドライブ28等の記憶媒体駆動装置は、フロ
ッピーディスク・コントローラ19、IDEコントロー
ラ25、SCSIコントローラ27等の各種コントロー
ラを介してバス2へ接続されている。
【0047】フロッピーディスク装置20等の記憶媒体
駆動装置には、フロッピーディスク等の可搬型記憶媒体
が挿入され、このフロッピーディスク等やハードディス
ク装置13、ROM14等の記憶媒体には、オペレーテ
ィングシステムと協働してCPU等に命令を与え、本発
明を実施するためのコンピュータ・ソフトウエアを記録
することができ、メモリ4にロードされることによって
実行される。このコンピュータ・ソフトウエアは圧縮
し、または、複数に分割して、複数の媒体に記録するこ
ともできる。
【0048】ノード・システム100は更に、ユーザ・
インターフェース・ハードウェアを備えたシステムとす
ることができ、ユーザ・インターフェース・ハードウェ
アとしては、例えば、入力をするためのポインティング
・デバイス(マウス、ジョイスティック等)7またはキ
ーボード6や、視覚データをユーザに提示するためのデ
ィスプレイ12があり、また、パラレルポート16を介
してプリンタを接続するも可能である。このノード・シ
ステム100は、シリアルポート15を介してモデムを
接続することが可能であり、シリアルポート15および
モデムまたはトークンリングや通信アダプタ18等を介
してネットワークに接続し、他のコンピュータシステム
と通信を行っている。
【0049】このように、本発明は、通常のパーソナル
コンピュータ(PC)、ワークステーション、汎用機
や、これらの組合せによって実施可能であることを容易
に理解できるであろう。ただし、これらの構成要素は例
示であり、その全ての構成成要素が本発明の必須の構成
要素となるわけではない。
【0050】例えば、サーバ側においては、ユーザイン
タフェース等は不要であり、CPUやメモリ等の基本的
なデータ処理機能と通信機能があれば足りる。また、ク
ライアント側においては、後述するメッセージ・パケッ
トを送出するに必要な構成を有していればよく、通信機
能と、メッセージ・パケットの指定を行い、メッセージ
・パケットの送出を指示するための何らかのデータ処理
機能と入力手段があればよい。さらにクライアント側の
マシンを携帯情報端末等から遠隔操作する場合には、携
帯情報端末等からメッセージ・パケット送出する命令を
受信し、それを検出し、メッセージ・パケットを送出す
るデータ処理機能と通信機能があれば足る。
【0051】クライアントシステム側、サーバシステム
側ともに、オペレーティング・システムとしては、Wi
ndowsNT(マイクロソフトの商標)、Windo
ws95(マイクロソフトの商標)、Windows
3.x(マイクロソフトの商標)、OS/2(IBMの
商標)、AIX(IBMの商標)上のX−WINDOW
システム(MITの商標)、Solaris(サンマイ
クロシステムズの商標)などの、標準でGUIマルチウ
インドウ環境をサポートするものや、PC−DOS(I
BMの商標)、MS−DOS(マイクロソフトの商標)
などのキャラクタ・ベース環境のもの、さらにはOS/
Open(IBMの商標)VxWorks(Wind
River Systems, Inc.の商標)等の
リアルタイムOSでも実現可能であり、特定のオペレー
ティング・システム環境に限定されるものではない。
【0052】B.システム構成 次に、図3のブロック図を参照して、本発明の好適な実
施例におけるサーバ側のシステム構成について説明す
る。
【0053】エージェント201は、このサーバに送ら
れてきた移動エージェントまたはこのサーバに常駐して
いる常駐エージェントである。このエージェント201
は、後述するメッセージ・パケットを送出し、または、
受領することによってエージェント・コミュニケーショ
ン・システム200と対話することができる。
【0054】エージェント・コミュニケーション言語マ
ネジャ203は、エージェント201や既存システム、
ネットワークから送付されるメッセージを受領し、ま
た、メッセージをこれらのシステムに送信するためのコ
ンポーネントである。
【0055】会話スレッド制御部205は、エージェン
ト201等と対話する各会話に対応するスレッド207
(複数の会話を非同期に受け付けるため、マルチスレッ
ド化している。このスレッドを会話スレッドと呼ぶ)を
管理し、会話の流れに応じて適切なスレッドを生成し、
または既に生成されたスレッドに制御を渡すコンポーネ
ントである。本発明の一態様においては、この会話スレ
ッド207は複数生成され、これによって複数のエージ
ェントと並列非同期で会話を行うことができる。
【0056】メッセージ・ログ211は、会話を記憶す
るコンポーネントである。会話内容監視部217は、メ
ッセージ・ログ211に格納された会話のログと現在の
発話されている内容から会話が成立するかどうかのポリ
シー・チェックを行うコンポーネントである。また、会
話内容監視部用ローダ215は、メッセージ・パケット
300のメッセージ・タイプに応じた会話内容監視部2
17を呼び出すためのコンポーネントである。
【0057】トランスレータ221は、会話に使われて
いるエージェント・コミュニケーション言語を他の言語
に翻訳するコンポーネントである。トランスレータ用ロ
ーダ219は、このトランスレータ群を管理するコンポ
ーネントである。
【0058】インタプリタ225は、会話の内容を理解
し実行するコンポーネントである。このインタプリタ
は、後述するオントロジーや記述言語に対応して複数種
類設けられており、夫々オントロジーに特化したフォー
マット・チェック・ルーチンやコンテント解釈ルーチ
ン、実行ルーチンを有している。例えば、交通機関の予
約に関するオントロジーであった場合、"Reserve, flig
ht, Narita to Tacoma, 1997/07/06/15:00-1997/07/06/
18:00"といったコンテントを受領し、所定のフォーマッ
ト・チェックを行い、"R"を予約を指示するコマンドと
解釈する等の特有のコンテント解釈ルーチンを実行し、
所定の航空会社のデータベースにアクセスして、予約状
況等をチェックする等の固有の実行ルーチンを実行す
る。そして、最終的に、1997年7月5日17時10
分成田空港発、シアトルのタコマ空港行のxx航空26
便、エコノミーの禁煙席の予約を行い、送信者に対し予
約の確認を行う。
【0059】インタプリタ用ローダ223は、このイン
タプリタ225群を管理するコンポーネントである。プ
ロトコル・マネジャ230は、接続するネットワークの
種類に応じたプロトコルに変換するためのコンポーネン
トである。
【0060】以上図3に示す各機能ブロックを説明した
が、これらの機能ブロック(コンポーネント)は、論理
的機能ブロックであり、各々1つのまとまりを持ったハ
ードウエアやソフトウエアによって実現されることのみ
を意味するのではなく、複合し、または共通したハード
ウエアやソフトウエアによっても実現可能である。ま
た、この図3に示す全ての機能ブロックが本発明に必須
の構成要素という訳ではない。
【0061】例えば、本発明は、エージェントに他のエ
ージェントや既存システムと会話するための特別な機能
を提供するものであるため、会話内容監視部217、ト
ランスレータ221、インタプリタ225等の解釈実行
部品の何れかが存在すればよく、会話内容監視部用ロー
ダ215、トランスレータ用ローダ219、インタプリ
タ用ローダ223は不要な構成要素である。本発明の一
態様においては、特定のエージェント等と会話を行うた
め、会話スレッドは、1以上の特定数用意されているた
め、エージェント・コミュニケーション言語マネジャ2
03、会話スレッド制御部205、メッセージ・ログ2
11、IDジェネレータ213も必須の構成要素とはな
らない。
【0062】C.動作説明 図4は、本発明の好適な実施例において使用されるメッ
セージ・パケット300の概念図であり、図5は、図3
に示した各コンポーネントの発話時の動作状態を示す図
である。
【0063】本発明の好適な実施例においては、図4の
メッセージ・パケット300に含まれるメッセージタイ
プ301は、エージェント・コミュニケーション言語
(ACL:Agent Communication Language)のパフォー
マティブが使用されている。ACLは、エージェント間
のコミュニケーションを人間の言葉に近い形で提供して
いる高級言語であり、FIPA(Foundation for Intel
ligent Physical Agents)の提供しているACLや、K
QML(Knowledge Query Manipulation Language)、K
IF(Knowledge Interchange Format)等があり、これら
の言語は、"SEMANTICS FOR AN AGENT COMMUNICATION LA
NGUAGE, Yannis Labrou, A Doctoral Dissertation for
the PhD Defense Examination, Submitted to the Def
ense Committee, at the Computer Science and Electr
ical Engineering Department (CSEE), University of
Maryland Graduate School"や"TR CS-97-03, A Proposa
l fora new KQML Specification, Yannis Labrou and T
im Finin February 3, 1997"等により公表されている。
【0064】ACLの1つであるKQMLのパフォーマ
ティブには次のようなものがある。 ask-if,ask-all,ask-one,stream-all,eos,tell,untell,
deny,insert,uninsert,delete-one,delete-all,undelet
e,achieve,unachieve,advertise,unadvertise,subscrib
e,error,sorry,standby,ready,next,rest,discard,regi
ster,unregister,forward,broadcast,transport-addres
s,broker-one,broker-all,recommend-one,recommend-al
l,recruit-one,recruit-all
【0065】センダー303は、メッセージの送出元で
あり、レシーバ305は、メッセージの受け取り先であ
る。
【0066】応答ID307は、先行する会話に続くI
Dである。エージェント201が複数の相手と会話する
場合、後述する会話スレッドに対応して複数の応答ID
が割りふられる。
【0067】会話ID309は、会話相手にこのIDで
応答することを指示するためのIDである。
【0068】記述言語タイプ311は、コンテントを記
述している言語を特定する情報である。オントロジー3
13は、コンテントが規定しているオントロジーを特定
する情報である。本発明の好適な実施例にいてはチケッ
ト購入オントロジー、数値計算オントロジー、株式情報
オントロジー、イエローページ・オントロジー等が提供
されている。
【0069】コンテント315は、メッセージの具体的
内容であり、本発明の好適な実施例においては、他のプ
レースに移動した後にインストラクションを形成するた
めのソフトウエアを含んでいる。このコンテント315
の内部には、さらにメッセージ・パケットを含めること
もでき、中継点を介して、他のプレースに移動させるこ
ともできる。本発明の好適な実施例においては、かかる
場合、センダー303とレシーバ305とは別に、真の
送信者と最終的な受信者をしめすFromエントリとt
oエントリが設けられている。
【0070】次に図5を参照しつつ図3に示した各コン
ポーネントの発話時の動作状態を説明する。エージェン
ト201は、エージェント・コミュニケーション・シス
テム200に対し図4のメッセージ・パケットを送出す
る。本発明の好適な実施例においては、図3に示したコ
ンポーネントはオブジェクト指向言語のクラスとして定
義されており、発話に際しての各オブジェクトは、図6
のコンポーネント間のオブジェクト・インストラクショ
ン・ダイアグラムに示すように、他のオブジェクトにイ
ンストラクションを送出することによって他のオブジェ
クトの動作を促している。
【0071】メッセージ・パケット300を受領したエ
ージェント・コミュニケーション言語マネジャ203
は、自分が"sendMessage"で呼ばれたか、"receiveMessa
ge"で呼ばれたかによって、このメッセージ・パケット
300が発話のためのメッセージ・パケットであると判
断し、会話スレッド制御部205に処理を依頼する。
【0072】会話スレッド制御部205は、メッセージ
・パケット300に含まれる応答ID307を参照し、
既に生成されている会話スレッドに処理を依頼すべきも
のか否か判断する。会話スレッド制御部205が、新た
な会話であると判断した場合には、会話スレッド207
を新たに生成し、IDジェネレータ213に新たな会話
ID309の割りふりを会話スレッド207を介して指
示し、処理を会話スレッド207に移す。
【0073】本発明においては、このように会話スレッ
ドを動的に生成しているため、他のシステム(エージェ
ントまたは既存システム等)との会話を並列非同期で行
うことができる。本発明の好適な実施例において、この
応答ID307は、「URL+Date+Time+シ
リアル番号」等のネットワーク上で一意に決まるような
IDが割り振られる。
【0074】応答ID307に対応する会話スレッド2
07が存在している場合、会話スレッド制御部205
は、新たな会話ではないと判断し、対応する会話スレッ
ド207に処理を移す。会話を継続することを欲する場
合には、会話スレッド207は、IDジェネレータ21
3に、会話ID309の割りふりを指示する。
【0075】メッセージ・ログ211は、会話スレッド
207に送られたメッセージ・パケット300を記憶す
る。
【0076】会話内容監視部用ローダ215は、メッセ
ージ・パケット300のメッセージ・タイプ301に応
じた会話内容監視部217を呼び出す。メッセージ・タ
イプ301に応じた会話内容監視部217を呼び出し
は、図7に示すような会話内容監視部品テーブルを設け
ても、会話内容監視部品のクラス名をメッセージ・タイ
プと同じにして直接呼び出してもよい。
【0077】会話内容監視部217は、メッセージ・ロ
グ211に格納された会話のログと現在の発話されてい
る内容から会話が成立するかどうかのポリシー・チェッ
クを行う。例えば、受領したメッセージ・パケット30
0のメッセージ・タイプ301が"sorry"(会話の内容
は理解可能であるが、自分には処理能力がないことを示
すメッセージ・タイプ)であった場合、メッセージ・ロ
グ211から対応する応答IDを有し、1つ前の会話I
Dを有するメッセージのメッセージ・タイプを参照
し、"ask-if"(相手側の処理能力を問い合わせる場合の
メッセージ・タイプ)等の会話として成立するメッセー
ジ・タイプであれば問題なしと判断し、例えば"sorry"
等の会話として成立しないメッセージ・タイプと判断し
た場合は、エラーと判断し、メッセージ・パケット30
0のセンダ303に対し"error"(エラーを示すメッセー
ジ・タイプ)のメッセージ・パケットを送付する等の処
理を行う。
【0078】会話として成立すると判断された場合、メ
ッセージ・パケット300は、会話スレッド207から
プロトコル・マネジャ230を介してレシーバ303に
指定されたノードに対し送信する。このとき、プロトコ
ル・マネジャ230は、接続するネットワークの種類に
応じたプロトコルに変換するため、エージェント・コミ
ュニケーション・システム200は、ネットワーク・プ
ロトコルを意識せずにメッセージ・パケット300の送
受信をすることができる。
【0079】次に図8、9を参照して、この送出された
メッセージ・パケット300を受領したノードにおける
各コンポーネントの動作状態を説明する。
【0080】プロトコル・マネジャ230からメッセー
ジ・パケット300を受領したエージェント・コミュニ
ケーション言語マネジャ203は、"handleMessage"に
よって呼ばれたことから、受領したメッセージ・パケッ
ト300が受話のためのメッセージ・パケットであると
判断し、会話スレッド制御部205に処理を依頼する。
本発明の好適な実施例においてはプロトコル・マネジャ
230は、エージェント・コミュニケーション言語マネ
ジャ203が内部的にインスタンシエートしているの
で、エージェント・コミュニケーション言語マネジャ2
03の存在を知っており、流れてきたデータをエージェ
ント・コミュニケーション言語マネジャ203に渡すこ
とができる。
【0081】会話スレッド制御部205は、メッセージ
・パケット300に含まれる応答ID307を参照し、
既に生成されている会話スレッドに処理を依頼すべきも
のか否か判断する。会話スレッド制御部205が、新た
な会話であると判断した場合には、会話スレッド207
を新たに生成し、処理を会話スレッド207に移す。
【0082】応答ID307に対応する会話スレッド2
07が存在している場合、会話スレッド制御部205
は、新たな会話ではないと判断し、対応する会話スレッ
ド207に処理を移す。
【0083】メッセージ・ログ211は、会話スレッド
207に送られたメッセージ・パケット300を記憶す
る。
【0084】会話内容監視部用ローダ215は、メッセ
ージ・パケット300のメッセージ・タイプ301に応
じた会話内容監視部217を呼び出す。
【0085】会話内容監視部217は、メッセージ・ロ
グ211に格納された会話のログと現在の発話されてい
る内容から会話が成立するかどうかのポリシー・チェッ
クを行う。
【0086】会話として成立すると判断された場合、会
話スレッド207は、インタプリタ用ローダ223に処
理を移す。インタプリタ用ローダ223は、メッセージ
・パケット300のエージェント・コミュニケーション
言語を把握し、また、メッセージ・パケット300に含
まれる記述言語タイプ311、オントロジー313に対
応するインタプリタが図10に示すようなインタプリタ
管理テーブル350に登録されているか否かを判断す
る。
【0087】もし、受領したメッセージ・パケット30
0のエージェント・コミュニケーション言語、記述言語
タイプ311、オントロジー313に対応するインタプ
リタがインタプリタ管理テーブル350に登録されてい
る場合には、そのインタプリタを使用してコンテント3
15の解釈を行う。受領したメッセージ・パケット30
0のエージェント・コミュニケーション言語、記述言語
タイプ311、オントロジー313に対応するインタプ
リタがインタプリタ管理テーブル350に登録されてい
ない場合、本発明の好適な実施例においては、システム
の管理する(アクセス可能な)インタプリタ・ライブラ
リにその組み合わせに対応するインタプリタが存在する
か否かを判断する。
【0088】存在した場合には、インタプリタ管理テー
ブル350に登録を行い、そのインタプリタを使用して
コンテント315の解釈を行う。エージェント・コミュ
ニケーション言語、記述言語タイプ311、オントロジ
ー313の組み合わせに対応するインタプリタがインタ
プリタ・ライブラリに存在しない場合は、記述言語タイ
プ311、オントロジー313の組み合わせに対応する
インタプリタがインタプリタ・ライブラリに存在するか
否かを判断する。存在しない場合には、処理不能として
処理する。本発明の好適な実施例においては、オントロ
ジーは階層構造によって対応付けられており、最も対応
関係の深いオントロジーのインタプリタを使用すること
もできる。
【0089】存在した場合には、コンテント315を発
見されたインタプリタのエージェント・コミュニケーシ
ョン言語に翻訳すべく、トランスレータ用ローダ219
に処理を移す。トランスレータ用ローダ219は、図1
1に示すようなトランスレータ管理テーブル340を参
照し、要求された翻訳を実行可能なトランスレータが存
在するか否か判断する。本発明の好適な実施例におい
て、存在しない場合は、インタプリタの場合と同様にト
ランスレータ・ライブラリを探索して、テーブルへの登
録を行い、翻訳されたコンテント315を選択されたイ
ンタプリタによって処理する。存在しない場合には、処
理不能として処理する。
【0090】本発明の好適な実施例において、インタプ
リタ225の解釈した結果は、エージェント231に伝
達され、コンテント315に記載されたインストラクシ
ョンの内容に応じた処理を行う。このコンテント315
の内容によっては、会話スレッドを消滅させる処理を行
ったり、新たな発話を開始する処理に移行したり、新た
にエージェントを生成する処理を行ったりする。本発明
の好適な実施例においてインタプリタ225は、処理を
会話スレッド207に戻す。会話スレッド207は、次
のメッセージ・パケットを受領するまで待機する。
【0091】会話は、従来のプロシージュアルなシステ
ムにおけるAPI呼び出しの多くとは異なり、非同期に行
われので、何らかの発話が送り手から受け手へ送られて
も受け手はいつ返事を返すかはわからない。受け手の持
っている情報が他の外力(他のエージェントの働きかけ
など)によって変更されたタイミングで返事が発せられ
るかもしれない。その場合も、返事はメッセージ・パケ
ット300として送られる。会話のスレッド207は、
その会話の続行となる返事が返ってくるまでは、wait()
で待ち続けている。この"wait()"は会話スレッド20
7を待ち状態にし、他から"notify()"などの関数(メソ
ッド)によって起こされる(ウエイクアップされる)のを
待機するためのメソッドである。返事が返ってくるとエ
ージェント・システム200にメッセージが渡される。
そして、そのメッセージが既存の会話の後続のメッセー
ジであることが判明すると、休止していた会話のスレッ
ドが起こされメッセージが渡される。
【0092】本発明の好適な実施例において、エージェ
ント231が、過去に発話し、その答を待っている場
合、その会話はエージェント・コミュニケーション・シ
ステム200経由で発話(エージェント・コミュニケー
ション・システム200に"sendMessage"を送出)して
おり、"sendMessage"の戻り値として"Conversation"オ
ブジェクトが返される。この"Conversation"オブジェク
トには、"Result"オブジェクトと呼ばれるステートを保
持するオブジェクトが関連付けられている。本発明の好
適な実施例において、エージェント231は、この"Res
ult"オブジェクトの保持するステートをポーリングをか
けることにより検査をすることによって、通知(Notific
ation) を受けることができる。
【0093】本発明の好適な実施例においては、本発明
の会話部品であるエージェント・コミュニケーション・
システム200をエージェント201に提供するため、
JDK(Java Development Kit:
Javaは、サンマイクロシステムズ社の商標)を用い
てコーディングしており、
【表1】aclManager = new ACLManager(agentName, pro
tocolName, port);
【0094】とACLManagerをインスタンシエートするだ
けで本発明のエージェント・コミュニケーション・シス
テム200をエージェント201に提供することができ
る。
【0095】また、発話するに際しては、例えば、kqml
オブジェクトを用意し、
【表2】ConversationThread conv =(ConversationThre
ad) aManager.sendMessage(kqml);
【0096】とするだけで発話を行うことができる。
【0097】さらに返事を待つ場合には、
【表3】
【0098】とポーリングするだけである。実際に、返
ってきた返事または、相手から発話された内容は、デフ
ォルトのエージェント・コミュニケーション・システム
200内のインタプリタが正しく解釈実行する。
【0099】以上説明した本発明の好適な実施例におい
ては、解釈実行部品の各種管理テーブルへの登録を実行
時に行っているが、実行時には行わず、始動時にのみ解
釈実行部品のディレクトリーを走査し、どのような解釈
実行部品が存在するか検査し、解釈実行部品テーブルを
作成し管理してもよい。
【0100】また、メッセージ・パケット300がノー
ド間を移動する形式を採用しているが、図12、13に
示すように、メッセージ・パケット300を移動エージ
ェント233に添付して送付することもできる。かかる
場合、移動エージェント233はメッセージ・パケット
300を保持しつつ、複数のプレースを渡り歩き、会話
を行い、また、その処理結果を使用して他のプレースで
会話を行うこと等の複雑な作業をすることも可能とな
る。
【0101】移動エージェントがネットワーク上を移動
する場合、図14に示されるステップを実行することに
よって移動を可能になる。
【0102】
【発明の効果】以上説明したように、本発明によれば、
エージェント(移動エージェントまたは常駐エージェン
ト)にコミュニケーションを行わせるに際して、人間に
とって直感的に判りやすいエージェント・コミュニケー
ション言語を用いて会話を行うことのできるコミュニケ
ーション・システムを提供することができる。
【0103】本発明の一態様においては、不要な判断ロ
ジックを削減し、高速処理を可能としたメッセージ処理
システムを提供することができる。
【0104】本発明の一態様においては、エージェント
が様々なエージェント・コミュニケーション言語やコミ
ュニケーション・プロトコルを意識せずにコミュニケー
ションを行うことのできるコミュニケーション・システ
ムを提供することができる。
【0105】本発明の一態様においては、高速な並列会
話処理を実現したコミュニケーション・システムを提供
することができる。
【0106】本発明の一態様においては、エージェント
間のコミュニケーションをサポートするに際し、プログ
ラマの開発や保守に要する労力及び時間を可能な限り軽
減することができる。
【0107】本発明の一態様においては、エージェント
間の会話に柔軟に対応することができるコミュニケーシ
ョン・システムを提供することができる。
【0108】本発明の一態様においては、通信システム
への負担が少ないメッセージ処理システムを提供するこ
とができる。
【0109】
【図面の簡単な説明】
【図1】 本発明の移動エージェントが動作する分散ネ
ットワーク環境を示す図である。
【図2】 本発明におけるクライアントシステムまたは
サーバシステムのハードウェア構成の一実施例を示すブ
ロック図である。
【図3】 本発明のクライアントサイトまたはサーバサ
イトにおける処理要素の一実施例を示すブロック図であ
る。
【図4】 本発明のメッセージ・パケットの一例を示す
概念図である。
【図5】 本発明のクライアント(またはサーバ)サイ
トにおける処理要素の一実施例を示すブロック図であ
る。
【図6】 本発明の好適な実施例におけるコンポーネン
ト間のオブジェクト・インタラクション・ダイアグラム
である。
【図7】 本発明の好適な実施例における会話内容監視
部品管理テーブルを示す概念図である。
【図8】 本発明のサーバ(またはクライアント)サイ
トにおける処理要素の一実施例を示すブロック図であ
る。
【図9】 本発明の好適な実施例におけるコンポーネン
ト間のオブジェクト・インタラクション・ダイアグラム
である。
【図10】 本発明の好適な実施例におけるインタプリ
タ管理テーブルを示す概念図である。
【図11】 本発明の好適な実施例におけるトランスレ
ータ管理テーブルを示す概念図である。
【図12】 本発明のクライアント(またはサーバ)サ
イトにおける処理要素の一実施例を示すブロック図であ
る。
【図13】 本発明のサーバ(またはクライアント)サ
イトにおける処理要素の一実施例を示すブロック図であ
る。
【図14】 本発明のエージェント・コミュニケーショ
ン・システムをネットワーク上移動させる場合の処理手
順の一実施例を示すフローチャートである。
【図15】 本発明の好適な実施例におけるコンポーネ
ント間のオブジェクト・インタラクション・ダイアグラ
ムである。
【符号の説明】
100 ノード・システム 200 エージェント・コミュニケーション・システム 203 エージェント・コミュニケーション言語マネジ
ャ 205 会話スレッド制御部 207 会話スレッド 211 メッセージ・ログ 213 IDジェネレータ 215 会話内容監視部用ローダ 217 会話内容監視部 219 トランスレータ用ローダ 221 トランスレータ 223 インタプリタ用ローダ 225 インタプリタ
【手続補正書】
【提出日】平成10年5月19日
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正内容】
【特許請求の範囲】
───────────────────────────────────────────────────── フロントページの続き (72)発明者 槌 谷 一 神奈川県大和市下鶴間1623番地14 日本ア イ・ビー・エム株式会社 大和事業所内 (72)発明者 古 澤 修 神奈川県大和市下鶴間1623番地14 日本ア イ・ビー・エム株式会社 大和事業所内 (72)発明者 鈴 木 俊 宏 神奈川県大和市下鶴間1623番地14 日本ア イ・ビー・エム株式会社 大和事業所内

Claims (23)

    【特許請求の範囲】
  1. 【請求項1】複数の会話スレッドを生成可能な会話スレ
    ッド制御部を有し、ネットワークに接続したメッセージ
    処理装置で実行されるメッセージ処理方法であって、 (a)送付先情報と、会話スレッド識別情報を含むメッ
    セージ・パケットを検出する段階と、 (b)前記メッセージ・パケットに含まれる会話スレッ
    ド識別情報に対応した会話スレッドが前記メッセージ処
    理装置に存在するか否か判断する段階と、 (c)前記対応した会話スレッドが前記メッセージ処理
    装置に存在しないと判断された場合、新たな会話スレッ
    ドを生成する段階と、 (d)前記送付先情報に対応した送付先に前記メッセー
    ジ・パケットを送信する段階と、 を含むメッセージ処理方法。
  2. 【請求項2】複数の会話スレッドを生成可能な会話スレ
    ッド制御部を有し、ネットワークに接続したメッセージ
    処理装置で実行されるメッセージ処理方法であって、 (a)送付先情報と、会話スレッド識別情報と、コンテ
    ント情報を含むメッセージ・パケットを検出する段階
    と、 (b)前記メッセージ・パケットに含まれる会話スレッ
    ド識別情報に対応した会話スレッドが前記メッセージ処
    理装置に存在するか否か判断する段階と、 (c)前記対応した会話スレッドが前記メッセージ処理
    装置に存在しないと判断された場合、新たな会話スレッ
    ドを生成する段階と、 (d)前記メッセージ・パケットを前記メッセージ処理
    装置が接続するネットワークに対応したプロトコルに変
    換する段階と、 (e)前記送付先情報に対応した送付先に前記メッセー
    ジ・パケットを送信する段階と、 を含むメッセージ処理方法。
  3. 【請求項3】複数の会話スレッドを生成可能な会話スレ
    ッド制御部を有し、ネットワークに接続したメッセージ
    処理装置で実行されるメッセージ処理方法であって、 (a)会話スレッド識別情報を含むメッセージ・パケッ
    トを検出する段階と、 (b)前記メッセージ・パケットに含まれる会話スレッ
    ド識別情報に対応した会話スレッドが前記メッセージ処
    理装置に存在するか否か判断する段階と、 (c)前記対応した会話スレッドが前記メッセージ処理
    装置に存在しないと判断された場合、新たな会話スレッ
    ドを生成する段階と、 を含むメッセージ処理方法。
  4. 【請求項4】複数の会話スレッドを生成可能な会話スレ
    ッド制御部を有し、ネットワークに接続したメッセージ
    処理装置で実行されるメッセージ処理方法であって、 (a)会話スレッド識別情報とコンテント情報を含むメ
    ッセージ・パケットを検出する段階と、 (b)前記メッセージ・パケットに含まれる会話スレッ
    ド識別情報に対応した会話スレッドが前記メッセージ処
    理装置に存在するか否か判断する段階と、 (c)前記対応した会話スレッドが前記メッセージ処理
    装置に存在すると判断された場合、該対応する会話スレ
    ッドに制御を渡す段階と、 を含むメッセージ処理方法。
  5. 【請求項5】複数の会話スレッドを生成可能な会話スレ
    ッド制御部を有し、ネットワークに接続したメッセージ
    処理装置で実行されるメッセージ処理方法であって、 (a)会話スレッド識別情報を含むメッセージ・パケッ
    トを受領する段階と、 (b)前記メッセージ・パケットに含まれる会話スレッ
    ド識別情報に対応した会話スレッドが前記メッセージ処
    理装置に存在するか否か判断する段階と、 (c)前記対応した会話スレッドが前記メッセージ処理
    装置に存在しないと判断された場合、新たな会話スレッ
    ドを生成する段階と、 を含むメッセージ処理方法。
  6. 【請求項6】複数の会話スレッドを生成可能な会話スレ
    ッド制御部を有し、ネットワークに接続したメッセージ
    処理装置で実行されるメッセージ処理方法であって、 (a)会話スレッド識別情報とコンテント情報を含むメ
    ッセージ・パケットを受領する段階と、 (b)前記メッセージ・パケットに含まれる会話スレッ
    ド識別情報に対応した会話スレッドが前記メッセージ処
    理装置に存在するか否か判断する段階と、 (c)前記対応した会話スレッドが前記メッセージ処理
    装置に存在すると判断された場合、該対応する会話スレ
    ッドに制御を渡す段階と、 (d)前記コンテント情報の内容を解析する段階と、 を含むメッセージ処理方法。
  7. 【請求項7】複数の会話スレッドと前記複数の会話スレ
    ッドを制御可能な会話スレッド制御部を含む会話部品オ
    ブジェクトを有し、ネットワークを介して他のメッセー
    ジ処理装置にメッセージを送出可能なメッセージ処理装
    置で実行されるメッセージ処理方法であって、 (a)前記複数の会話スレッドを停止する段階と、 (b)前記会話部品オブジェクトを前記ネットワークを
    介して他のプレースに送出する段階と、 (c)前記他のメッセージ処理装置において、前記複数
    の会話スレッドを再開する段階と、 を含むメッセージ処理方法。
  8. 【請求項8】ネットワークに接続したメッセージ処理装
    置であって、 (a)複数の会話スレッドと、 (b)送付先情報と、会話スレッド識別情報と、コンテ
    ント情報を含むメッセージ・パケットを検出するエージ
    ェント・コミュニケーション言語マネジャと、 (c−1)前記メッセージ・パケットに含まれる会話ス
    レッド識別情報に対応した会話スレッドが前記メッセー
    ジ処理装置に存在するか否か判断し、 (c−2)前記対応した会話スレッドが前記メッセージ
    処理装置に存在しないと判断された場合、新たな会話ス
    レッドを生成する会話スレッド制御部と、 (d)前記メッセージ・パケットを前記メッセージ処理
    装置が接続するネットワークに対応したプロトコルに変
    換するプロトコル・マネジャと、 を含むメッセージ処理装置。
  9. 【請求項9】複数の会話スレッドを生成可能な会話スレ
    ッド制御部を有し、ネットワークに接続したメッセージ
    処理装置であって、 (a)会話スレッド識別情報を含むメッセージ・パケッ
    トを検出するエージェント・コミュニケーション言語マ
    ネジャと、 (b−1)前記メッセージ・パケットに含まれる会話ス
    レッド識別情報に対応した会話スレッドが前記メッセー
    ジ処理装置に存在するか否か判断し、 (b−2)前記対応した会話スレッドが前記メッセージ
    処理装置に存在しないと判断された場合、新たな会話ス
    レッドを生成する会話スレッド制御部と、 を含むメッセージ処理装置。
  10. 【請求項10】複数の会話スレッドを生成可能な会話ス
    レッド制御部を有し、ネットワークに接続したメッセー
    ジ処理装置であって、 (a)会話スレッド識別情報とコンテント情報を含むメ
    ッセージ・パケットを検出するエージェント・コミュニ
    ケーション言語マネジャと、 (b−1)前記メッセージ・パケットに含まれる会話ス
    レッド識別情報に対応した会話スレッドが前記メッセー
    ジ処理装置に存在するか否か判断し、 (b−2)前記対応した会話スレッドが前記メッセージ
    処理装置に存在すると判断された場合、該対応する会話
    スレッドに制御を渡す会話スレッド制御部と、 を含むメッセージ処理装置。
  11. 【請求項11】複数の会話スレッドを生成可能な会話ス
    レッド制御部を有し、ネットワークに接続したメッセー
    ジ処理装置であって、 (a)会話スレッド識別情報を含むメッセージ・パケッ
    トを受領するプロトコル・マネジャと、 (b−1)前記メッセージ・パケットに含まれる会話ス
    レッド識別情報に対応した会話スレッドが前記メッセー
    ジ処理装置に存在するか否か判断し、 (b−2)前記対応した会話スレッドが前記メッセージ
    処理装置に存在しないと判断された場合、新たな会話ス
    レッドを生成する会話スレッド制御部と、 を含むメッセージ処理装置。
  12. 【請求項12】複数の会話スレッドを生成可能な会話ス
    レッド制御部を有し、ネットワークに接続したメッセー
    ジ処理装置であって、 (a)会話スレッド識別情報とコンテント情報を含むメ
    ッセージ・パケットを受領するプロトコル・マネジャ
    と、 (b−1)前記メッセージ・パケットに含まれる会話ス
    レッド識別情報に対応した会話スレッドが前記メッセー
    ジ処理装置に存在するか否か判断し、 (b−2)前記対応した会話スレッドが前記メッセージ
    処理装置に存在すると判断された場合、該対応する会話
    スレッドに制御を渡す会話スレッド制御部と、 (d)前記コンテント情報の内容を解析するインタプリ
    タと、 を含むメッセージ処理装置。
  13. 【請求項13】複数の会話スレッドを生成可能な会話ス
    レッド制御部を有し、ネットワークに接続したメッセー
    ジ処理装置で実行されるメッセージ処理プログラムを格
    納した記録媒体であって、 該メッセージ処理プログラムは、 (a)送付先情報と、会話スレッド識別情報を含むメッ
    セージ・パケットを検出することを前記メッセージ処理
    装置に指示するためのプログラムコードと、 (b)前記メッセージ・パケットに含まれる会話スレッ
    ド識別情報に対応した会話スレッドが前記メッセージ処
    理装置に存在するか否か判断することを前記メッセージ
    処理装置に指示するためのプログラムコードと、 (c)前記対応した会話スレッドが前記メッセージ処理
    装置に存在しないと判断された場合、新たな会話スレッ
    ドを生成することを前記メッセージ処理装置に指示する
    ためのプログラムコードと、 (d)前記送付先情報に対応した送付先に前記メッセー
    ジ・パケットを送信することを前記メッセージ処理装置
    に指示するためのプログラムコードと、 を含む記録媒体。
  14. 【請求項14】複数の会話スレッドを生成可能な会話ス
    レッド制御部を有し、ネットワークに接続したメッセー
    ジ処理装置で実行されるメッセージ処理プログラムを格
    納した記録媒体であって、 該メッセージ処理プログラムは、 (a)送付先情報と、会話スレッド識別情報と、コンテ
    ント情報を含むメッセージ・パケットを検出することを
    前記メッセージ処理装置に指示するためのプログラムコ
    ードと、 (b)前記メッセージ・パケットに含まれる会話スレッ
    ド識別情報に対応した会話スレッドが前記メッセージ処
    理装置に存在するか否か判断することを前記メッセージ
    処理装置に指示するためのプログラムコードと、 (c)前記対応した会話スレッドが前記メッセージ処理
    装置に存在しないと判断された場合、新たな会話スレッ
    ドを生成することを前記メッセージ処理装置に指示する
    ためのプログラムコードと、 (d)前記メッセージ・パケットを前記メッセージ処理
    装置が接続するネットワークに対応したプロトコルに変
    換することを前記メッセージ処理装置に指示するための
    プログラムコードと、 (e)前記送付先情報に対応した送付先に前記メッセー
    ジ・パケットを送信することを前記メッセージ処理装置
    に指示するためのプログラムコードと、 を含む記録媒体。
  15. 【請求項15】複数の会話スレッドを生成可能な会話ス
    レッド制御部を有し、ネットワークに接続したメッセー
    ジ処理装置で実行されるメッセージ処理プログラムを格
    納した記録媒体であって、 該メッセージ処理プログラムは、 (a)会話スレッド識別情報を含むメッセージ・パケッ
    トを検出することを前記メッセージ処理装置に指示する
    ためのプログラムコードと、 (b)前記メッセージ・パケットに含まれる会話スレッ
    ド識別情報に対応した会話スレッドが前記メッセージ処
    理装置に存在するか否か判断することを前記メッセージ
    処理装置に指示するためのプログラムコードと、 (c)前記対応した会話スレッドが前記メッセージ処理
    装置に存在しないと判断された場合、新たな会話スレッ
    ドを生成することを前記メッセージ処理装置に指示する
    ためのプログラムコードと、 を含む記録媒体。
  16. 【請求項16】複数の会話スレッドを生成可能な会話ス
    レッド制御部を有し、ネットワークに接続したメッセー
    ジ処理装置で実行されるメッセージ処理プログラムを格
    納した記録媒体であって、 該メッセージ処理プログラムは、 (a)会話スレッド識別情報とコンテント情報を含むメ
    ッセージ・パケットを検出することを前記メッセージ処
    理装置に指示するためのプログラムコードと、 (b)前記メッセージ・パケットに含まれる会話スレッ
    ド識別情報に対応した会話スレッドが前記メッセージ処
    理装置に存在するか否か判断することを前記メッセージ
    処理装置に指示するためのプログラムコードと、 (c)前記対応した会話スレッドが前記メッセージ処理
    装置に存在すると判断された場合、該対応する会話スレ
    ッドに制御を渡すことを前記メッセージ処理装置に指示
    するためのプログラムコードと、 を含む記録媒体。
  17. 【請求項17】複数の会話スレッドを生成可能な会話ス
    レッド制御部を有し、ネットワークに接続したメッセー
    ジ処理装置で実行されるメッセージ処理プログラムを格
    納した記録媒体であって、 該メッセージ処理プログラムは、 (a)会話スレッド識別情報を含むメッセージ・パケッ
    トを受領することを前記メッセージ処理装置に指示する
    ためのプログラムコードと、 (b)前記メッセージ・パケットに含まれる会話スレッ
    ド識別情報に対応した会話スレッドが前記メッセージ処
    理装置に存在するか否か判断することを前記メッセージ
    処理装置に指示するためのプログラムコードと、 (c)前記対応した会話スレッドが前記メッセージ処理
    装置に存在しないと判断された場合、新たな会話スレッ
    ドを生成することを前記メッセージ処理装置に指示する
    ためのプログラムコードと、 を含む記録媒体。
  18. 【請求項18】複数の会話スレッドを生成可能な会話ス
    レッド制御部を有し、ネットワークに接続したメッセー
    ジ処理装置で実行されるメッセージ処理プログラムを格
    納した記録媒体であって、 該メッセージ処理プログラムは、 (a)会話スレッド識別情報とコンテント情報を含むメ
    ッセージ・パケットを受領することを前記メッセージ処
    理装置に指示するためのプログラムコードと、 (b)前記メッセージ・パケットに含まれる会話スレッ
    ド識別情報に対応した会話スレッドが前記メッセージ処
    理装置に存在するか否か判断することを前記メッセージ
    処理装置に指示するためのプログラムコードと、 (c)前記対応した会話スレッドが前記メッセージ処理
    装置に存在すると判断された場合、該対応する会話スレ
    ッドに制御を渡すことを前記メッセージ処理装置に指示
    するためのプログラムコードと、 (d)前記コンテント情報の内容を解析することを前記
    メッセージ処理装置に指示するためのプログラムコード
    と、 を含む記録媒体。
  19. 【請求項19】複数の会話スレッドと前記複数の会話ス
    レッドを制御可能な会話スレッド制御部を含む会話部品
    オブジェクトを有し、ネットワークを介して他のメッセ
    ージ処理装置にメッセージを送出可能なメッセージ処理
    装置で実行されるメッセージ処理プログラムを格納した
    記録媒体であって、 該メッセージ処理プログラムは、 (a)前記複数の会話スレッドを停止することを前記メ
    ッセージ処理装置に指示するためのプログラムコード
    と、 (b)前記会話部品オブジェクトを前記ネットワークを
    介して他のプレースに送出することを前記メッセージ処
    理装置に指示するためのプログラムコードと、 (c)前記複数の会話スレッドを再開することを前記他
    のメッセージ処理装置に指示するためのプログラムコー
    ドと、 を含む記録媒体。
  20. 【請求項20】複数の会話スレッドを生成可能な会話ス
    レッド制御部を有し、ネットワークに接続したメッセー
    ジ処理装置にロードされる複数のオブジェクトを含む会
    話部品オブジェクトを格納した記録媒体であって、 該会話部品オブジェクトは、 (a)複数の会話スレッドと、 (b)送付先情報と、会話スレッド識別情報と、コンテ
    ント情報を含むメッセージ・パケットを検出するエージ
    ェント・コミュニケーション言語マネジャと、 (c−1)前記メッセージ・パケットに含まれる会話ス
    レッド識別情報に対応した会話スレッドが前記メッセー
    ジ処理装置に存在するか否か判断し、 (c−2)前記対応した会話スレッドが前記メッセージ
    処理装置に存在しないと判断された場合、新たな会話ス
    レッドを生成する会話スレッド制御部と、 (d)前記メッセージ・パケットを前記メッセージ処理
    装置が接続するネットワークに対応したプロトコルに変
    換するプロトコル・マネジャと、 を含む記録媒体。
  21. 【請求項21】複数の会話スレッドを生成可能な会話ス
    レッド制御部を有し、ネットワークに接続したメッセー
    ジ処理装置にロードされる複数のオブジェクトを含む会
    話部品オブジェクトを格納した記録媒体であって、 該会話部品オブジェクトは、 (a)会話スレッド識別情報を含むメッセージ・パケッ
    トを検出するエージェント・コミュニケーション言語マ
    ネジャと、 (b−1)前記メッセージ・パケットに含まれる会話ス
    レッド識別情報に対応した会話スレッドが前記メッセー
    ジ処理装置に存在するか否か判断し、 (b−2)前記対応した会話スレッドが前記メッセージ
    処理装置に存在しないと判断された場合、新たな会話ス
    レッドを生成する会話スレッド制御部と、 を含む記録媒体。
  22. 【請求項22】複数の会話スレッドを生成可能な会話ス
    レッド制御部を有し、ネットワークに接続したメッセー
    ジ処理装置にロードされる複数のオブジェクトを含む会
    話部品オブジェクトを格納した記録媒体であって、 該会話部品オブジェクトは、 (a)会話スレッド識別情報とコンテント情報を含むメ
    ッセージ・パケットを検出するエージェント・コミュニ
    ケーション言語マネジャと、 (b−1)前記メッセージ・パケットに含まれる会話ス
    レッド識別情報に対応した会話スレッドが前記メッセー
    ジ処理装置に存在するか否か判断し、 (b−2)前記対応した会話スレッドが前記メッセージ
    処理装置に存在すると判断された場合、該対応する会話
    スレッドに制御を渡す会話スレッド制御部と、 を含む記録媒体。
  23. 【請求項23】複数の会話スレッドを生成可能な会話ス
    レッド制御部を有し、ネットワークに接続したメッセー
    ジ処理装置にロードされる複数のオブジェクトを含む会
    話部品オブジェクトを格納した記録媒体であって、 該会話部品オブジェクトは、 (a)会話スレッド識別情報を含むメッセージ・パケッ
    トを受領するプロトコル・マネジャと、 (b−1)前記メッセージ・パケットに含まれる会話ス
    レッド識別情報に対応した会話スレッドが前記メッセー
    ジ処理装置に存在するか否か判断し、 (b−2)前記対応した会話スレッドが前記メッセージ
    処理装置に存在しないと判断された場合、新たな会話ス
    レッドを生成する会話スレッド制御部と、 を含む記録媒体。
JP15242697A 1997-06-10 1997-06-10 メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体 Expired - Fee Related JP3883647B2 (ja)

Priority Applications (8)

Application Number Priority Date Filing Date Title
JP15242697A JP3883647B2 (ja) 1997-06-10 1997-06-10 メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体
CNB98107975XA CN1159653C (zh) 1997-06-10 1998-05-08 报文处理方法和报文处理器
TW087107344A TW455771B (en) 1997-06-10 1998-05-12 Message handling method, message handling apparatus, and memory media for storing a message handling apparatus controlling program
KR1019980017148A KR100342726B1 (ko) 1997-06-10 1998-05-13 메시지처리방법및메시지처리장치
GB9812142A GB2327516B (en) 1997-06-10 1998-06-08 Message handling method, message handling apparatus, and message handling apparatus controlling program
GB9921267A GB2338575B (en) 1997-06-10 1998-06-08 Message handling method, message handling apparatus, and message handling apparatus controlling program
US09/832,488 US8949309B2 (en) 1997-06-10 2001-04-11 Message handling method, for mobile agent in a distributed computer environment
US11/034,697 US7512660B2 (en) 1997-06-10 2005-01-13 Message handling method, message handling apparatus, and memory media for storing a message handling apparatus controlling program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15242697A JP3883647B2 (ja) 1997-06-10 1997-06-10 メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2002042589A Division JP2002324055A (ja) 2002-02-20 2002-02-20 メッセージ処理方法

Publications (2)

Publication Number Publication Date
JPH1115667A true JPH1115667A (ja) 1999-01-22
JP3883647B2 JP3883647B2 (ja) 2007-02-21

Family

ID=15540267

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15242697A Expired - Fee Related JP3883647B2 (ja) 1997-06-10 1997-06-10 メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体

Country Status (6)

Country Link
US (2) US8949309B2 (ja)
JP (1) JP3883647B2 (ja)
KR (1) KR100342726B1 (ja)
CN (1) CN1159653C (ja)
GB (1) GB2327516B (ja)
TW (1) TW455771B (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8931300B2 (en) 2008-09-30 2015-01-13 Thermo Fisher Scientific (Asheville) Llc Modular cabinet for ultra-low temperature freezer
US10618148B2 (en) 2014-07-02 2020-04-14 Ohtake Root Kogyo Co., Ltd. Screw cutting mechanism for screw feeder
DE102023105146A1 (de) 2023-03-02 2024-09-05 Gebr. Heller Maschinenfabrik Gmbh Werkzeugmaschine mit Einfahr-Assistent

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3883647B2 (ja) * 1997-06-10 2007-02-21 インターナショナル・ビジネス・マシーンズ・コーポレーション メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体
US6330589B1 (en) * 1998-05-26 2001-12-11 Microsoft Corporation System and method for using a client database to manage conversation threads generated from email or news messages
US7036128B1 (en) * 1999-01-05 2006-04-25 Sri International Offices Using a community of distributed electronic agents to support a highly mobile, ambient computing environment
US6851115B1 (en) * 1999-01-05 2005-02-01 Sri International Software-based architecture for communication and cooperation among distributed electronic agents
US7110510B1 (en) * 1999-02-08 2006-09-19 Siemens Communications, Inc. System and method for handling of threaded messages
JP4256543B2 (ja) * 1999-08-17 2009-04-22 インターナショナル・ビジネス・マシーンズ・コーポレーション 表示情報確定方法及び装置、表示情報確定のためのソフトウエア・プロダクトを格納した記憶媒体
US20030014502A1 (en) * 2001-07-03 2003-01-16 Snider Gregory Stuart E-service communication method and system
US7668306B2 (en) 2002-03-08 2010-02-23 Intel Corporation Method and apparatus for connecting packet telephony calls between secure and non-secure networks
CN1297895C (zh) * 2003-07-25 2007-01-31 英业达股份有限公司 电脑生产线整体控管系统及方法
US7644118B2 (en) * 2003-09-11 2010-01-05 International Business Machines Corporation Methods, systems, and media to enhance persistence of a message
JP4507917B2 (ja) * 2005-02-28 2010-07-21 日本電気株式会社 セッション処理システム、セッション処理方法、及びプログラム
US20060253272A1 (en) * 2005-05-06 2006-11-09 International Business Machines Corporation Voice prompts for use in speech-to-speech translation system
US20070124728A1 (en) * 2005-11-28 2007-05-31 Mark Rosenbluth Passing work between threads
US20070274297A1 (en) * 2006-05-10 2007-11-29 Cross Charles W Jr Streaming audio from a full-duplex network through a half-duplex device
US9390396B2 (en) * 2006-12-04 2016-07-12 Excalibur Ip, Llc Bootstrapping social networks using augmented peer to peer distributions of social networking services
US20080154756A1 (en) * 2006-12-22 2008-06-26 Deudney Stan J Method and system for exchanging financial-transaction-related messages over a communications network
US8396493B2 (en) * 2007-02-28 2013-03-12 Yahoo! Inc. Network-based archiving for threaded mobile text messages
US8335682B2 (en) * 2007-10-30 2012-12-18 Sercomm Corporation Multi-language interfaces switch system and method therefor
US8977673B2 (en) 2008-08-29 2015-03-10 Red Hat, Inc. Information on availability of services provided by publish-subscribe service
US9077750B2 (en) * 2009-02-27 2015-07-07 Red Hat, Inc. Using forums as a message transport in an enterprise service bus
BR102015004521B1 (pt) * 2015-02-27 2023-09-26 Samsung Eletrônica da Amazônia Ltda. Método para comunicação entre usuários e dispositivos inteligentes
CN105975433B (zh) * 2016-06-30 2019-04-19 瑞斯康达科技发展股份有限公司 一种报文处理方法及装置
CN106528053B (zh) * 2017-01-04 2019-02-15 飞天诚信科技股份有限公司 一种终端设备高效率数据处理方法及其终端设备

Family Cites Families (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59157760A (ja) 1983-02-28 1984-09-07 Hitachi Ltd 並列推論方法
US5063500A (en) * 1988-09-29 1991-11-05 Ibm Corp. System for executing segments of application program concurrently/serially on different/same virtual machine
JPH03179527A (ja) 1989-12-08 1991-08-05 Mitsubishi Heavy Ind Ltd 協調分散型推論装置
DE69220093T2 (de) * 1992-06-18 1997-12-04 Ibm Verarbeitungsnetzwerk für verteilte anwendungsprogramme.
JPH06342375A (ja) 1993-01-18 1994-12-13 Personal Joho Kankyo Kyokai ヒューマンインタフェースのアーキテクチャモデル
US5608720A (en) * 1993-03-09 1997-03-04 Hubbell Incorporated Control system and operations system interface for a network element in an access system
JPH06332724A (ja) 1993-05-20 1994-12-02 Fuji Facom Corp オブジェクト指向型システムにおける論理的単位の実装方式、及び実行多重度制御方式、並びに実行優先度制御方式
US5603031A (en) 1993-07-08 1997-02-11 General Magic, Inc. System and method for distributed computation based upon the movement, execution, and interaction of processes in a network
CA2119085C (en) * 1994-03-15 2002-01-15 Deborah L. Pinard Adaptive communication system
GB2288477A (en) * 1994-04-05 1995-10-18 Ibm Communications system for exchanging data between computers in a network.
US5613114A (en) * 1994-04-15 1997-03-18 Apple Computer, Inc System and method for custom context switching
JPH07302235A (ja) 1994-04-30 1995-11-14 Nec Corp クライアント・サーバシステム
JP3696901B2 (ja) * 1994-07-19 2005-09-21 キヤノン株式会社 負荷分散方法
JP2849341B2 (ja) 1994-11-14 1999-01-20 株式会社エイ・ティ・アール通信システム研究所 対話処理装置
SE9404294D0 (sv) * 1994-12-09 1994-12-09 Ellemtel Utvecklings Ab sätt och anordning vid telekommunikation
US5640584A (en) * 1994-12-12 1997-06-17 Ncr Corporation Virtual processor method and apparatus for enhancing parallelism and availability in computer systems
US5576945A (en) * 1995-01-23 1996-11-19 Tandem Computers Incorporated Transaction monitor process with pre-arranged modules for a multiprocessor system
US5907675A (en) * 1995-03-22 1999-05-25 Sun Microsystems, Inc. Methods and apparatus for managing deactivation and shutdown of a server
US5758184A (en) * 1995-04-24 1998-05-26 Microsoft Corporation System for performing asynchronous file operations requested by runnable threads by processing completion messages with different queue thread and checking for completion by runnable threads
US5758354A (en) * 1995-04-28 1998-05-26 Intel Corporation Application independent e-mail synchronization
US5774668A (en) * 1995-06-07 1998-06-30 Microsoft Corporation System for on-line service in which gateway computer uses service map which includes loading condition of servers broadcasted by application servers for load balancing
US5956509A (en) * 1995-08-18 1999-09-21 Microsoft Corporation System and method for performing remote requests with an on-line service network
JPH09114723A (ja) * 1995-10-13 1997-05-02 Oki Electric Ind Co Ltd ワークデータオブジェクト管理システム
US5802265A (en) * 1995-12-01 1998-09-01 Stratus Computer, Inc. Transparent fault tolerant computer system
US5796934A (en) * 1996-05-31 1998-08-18 Oracle Corporation Fault tolerant client server system
US5884022A (en) * 1996-06-03 1999-03-16 Sun Microsystems, Inc. Method and apparatus for controlling server activation in a multi-threaded environment
US5961601A (en) * 1996-06-07 1999-10-05 International Business Machines Corporation Preserving state information in a continuing conversation between a client and server networked via a stateless protocol
US6144962A (en) * 1996-10-15 2000-11-07 Mercury Interactive Corporation Visualization of web sites and hierarchical data structures
US6208952B1 (en) * 1996-10-24 2001-03-27 Microsoft Corporation Method and system for delayed registration of protocols
US6233601B1 (en) * 1996-11-14 2001-05-15 Mitsubishi Electric Research Laboratories, Inc. Itinerary based agent mobility including mobility of executable code
US6130917A (en) * 1997-03-14 2000-10-10 Monroe; David A. Instant protocol selection scheme for electronic data transmission
US5892941A (en) * 1997-04-29 1999-04-06 Microsoft Corporation Multiple user software debugging system
US6535878B1 (en) * 1997-05-02 2003-03-18 Roxio, Inc. Method and system for providing on-line interactivity over a server-client network
JP3883647B2 (ja) * 1997-06-10 2007-02-21 インターナショナル・ビジネス・マシーンズ・コーポレーション メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体
JP3229240B2 (ja) * 1997-06-10 2001-11-19 インターナショナル・ビジネス・マシーンズ・コーポレーション メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体
JP3954689B2 (ja) * 1997-06-12 2007-08-08 インターナショナル・ビジネス・マシーンズ・コーポレーション メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体
US6058426A (en) * 1997-07-14 2000-05-02 International Business Machines Corporation System and method for automatically managing computing resources in a distributed computing environment
US6081665A (en) * 1997-12-19 2000-06-27 Newmonics Inc. Method for efficient soft real-time execution of portable byte code computer programs
US6144989A (en) * 1998-06-15 2000-11-07 Dejima, Inc. Adaptive agent-oriented software architecture
US6745197B2 (en) * 2001-03-19 2004-06-01 Preston Gates Ellis Llp System and method for efficiently processing messages stored in multiple message stores
US7082604B2 (en) * 2001-04-20 2006-07-25 Mobile Agent Technologies, Incorporated Method and apparatus for breaking down computing tasks across a network of heterogeneous computer for parallel execution by utilizing autonomous mobile agents
US20030093419A1 (en) * 2001-08-17 2003-05-15 Srinivas Bangalore System and method for querying information using a flexible multi-modal interface
US7096470B2 (en) * 2002-09-19 2006-08-22 International Business Machines Corporation Method and apparatus for implementing thread replacement for optimal performance in a two-tiered multithreading structure
US8001184B2 (en) * 2006-01-27 2011-08-16 International Business Machines Corporation System and method for managing an instant messaging conversation

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8931300B2 (en) 2008-09-30 2015-01-13 Thermo Fisher Scientific (Asheville) Llc Modular cabinet for ultra-low temperature freezer
US10618148B2 (en) 2014-07-02 2020-04-14 Ohtake Root Kogyo Co., Ltd. Screw cutting mechanism for screw feeder
DE102023105146A1 (de) 2023-03-02 2024-09-05 Gebr. Heller Maschinenfabrik Gmbh Werkzeugmaschine mit Einfahr-Assistent

Also Published As

Publication number Publication date
TW455771B (en) 2001-09-21
GB2327516B (en) 2000-06-28
US7512660B2 (en) 2009-03-31
US8949309B2 (en) 2015-02-03
KR19990006438A (ko) 1999-01-25
KR100342726B1 (ko) 2002-08-22
CN1159653C (zh) 2004-07-28
JP3883647B2 (ja) 2007-02-21
US20010013051A1 (en) 2001-08-09
CN1201942A (zh) 1998-12-16
GB2327516A (en) 1999-01-27
GB9812142D0 (en) 1998-08-05
US20050190761A1 (en) 2005-09-01

Similar Documents

Publication Publication Date Title
JPH1115667A (ja) メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体
JP3954689B2 (ja) メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体
JP3229240B2 (ja) メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体
US6378001B1 (en) Collaborative framework with shared objects
JP3943543B2 (ja) マルチモーダル環境における対話管理およびアービトレーションを提供するシステムおよび方法
US7702729B2 (en) Event heap: a coordination infrastructure for dynamic heterogeneous application interactions in ubiquitous computing environments
US6192419B1 (en) Collaborative framework for disparate application programs
KR20020035565A (ko) 동적 관리자가 장치된 컴퓨터 시스템에 의한액티브티-베이스 협력 방법 및 장치
JP2002324055A (ja) メッセージ処理方法
JP2003526837A (ja) 活動状態によるコラボレーションを装備した分散コンピュータシステムにおいてデータ変更要求を順位付け、データの一貫性を維持するための方法ならびにその装置
JPH07287651A (ja) コンピュータ・システムにおけるソフトウエア・ツールの実行自動化および制御方法
JP2001092709A (ja) クライアントサーバーシステム、オブジェクトプール、オブジェクトのプール方法、記憶媒体、およびプログラム伝送装置
KR19980086598A (ko) 전자 메일을 이용한 정보 처리 방법과 정보 처리 장치 및 정보 처리 장치 제어 프로그램을 저장한 기억 매체
JP2007531092A (ja) 存在に基づくシステム管理情報ルーティング・システム
CZ9903576A3 (cs) Mobilní objekty, zpusob pro rízení mobilních objektu, zpusob a zarízení pro generování skupiny mobilních objektu a pametové médium pro ukládání programu pro generování skupiny mobilních objektu
GB2338575A (en) Message handling
JP2001014231A (ja) ワークフロー機構を使ったメールHubシステム
Crocker New host-host protocol
JP2004145377A (ja) コミュニケーション方法及びコミュニケーションシステム
CN116774996A (zh) 集成开发系统、代码处理方法、电子设备和存储介质
CN115086418A (zh) 数据传输方法、数据传输装置及电子设备
Park et al. Efficient message transport interface between agent framework and event service
JP2001290785A (ja) Orbシステム及びエージェントシステムの構築方法
Pendergast Design and evaluation of a distributed object-oriented communication system for EMS application development
Preece Knowledge query and manipulation language: A review

Legal Events

Date Code Title Description
RD12 Notification of acceptance of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7432

Effective date: 20060224

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060228

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20060224

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061012

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20061115

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061115

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20091124

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20101124

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20101124

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20111124

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20111124

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20121124

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20121124

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20131124

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees