(57)【要約】【課題】スレッド化されたインスタント・メッセージング会話を管理する、コンピュータで実装されるシステムおよびプロセスを提供すること。【解決手段】この方法は、会話要素を交換する対話式メッセージング・セッションを確立すること、スレッド識別子を会話要素に割り当てること、スレッド識別子を会話要素に付加すること、およびスレッド識別子に基づいてユーザ・インターフェース内に会話要素を表示することを含む。【選択図】図３
2007200312.tif 000002
【特許請求の範囲】
【請求項１】
スレッド化されたインスタント・メッセージング会話を管理するための、コンピュータで実装される方法であって、
会話要素を交換するための対話式メッセージング・セッションを確立するステップと、
スレッド識別子を前記会話要素に割り当てるステップと、
前記スレッド識別子を前記会話要素に付加するステップと、
前記スレッド識別子に基づいてユーザ・インターフェース内に前記会話要素を表示するステップと
を含む方法。
【請求項２】
前記会話要素から新しいスレッドを作成するステップをさらに含む、請求項１に記載のコンピュータで実装される方法。
【請求項３】
会話要素を別個のファイルにコピーするステップをさらに含む、請求項１に記載のコンピュータで実装される方法。
【請求項４】
前記別個のファイルがＥメール・メッセージである、請求項３に記載のコンピュータで実装される方法。
【請求項５】
各会話要素が、前記スレッド識別子に基づいて別々のウィンドウ内に表示される、請求項１に記載のコンピュータで実装される方法。
【請求項６】
各会話要素が、前記スレッド識別子に基づいて別々のサブウィンドウ内に表示される、請求項１に記載のコンピュータで実装される方法。
【請求項７】
各会話要素が、前記スレッド識別子に基づいて同一のウィンドウの別々の領域内に表示される、請求項１に記載のコンピュータで実装される方法。
【請求項８】
インスタント・メッセージング会話を管理する装置であって、
プロセッサと、
前記プロセッサに接続されたメモリと、
前記プロセッサに接続された出力装置と、
会話要素を交換するための対話式メッセージング・セッションを前記プロセッサに確立させるように動作可能な、前記メモリ内のインスタント・メッセージング・プログラムと、
前記プロセッサに、前記会話要素へスレッド識別子を割り当てさせ、前記会話要素へ前記スレッド識別子を付加させ、前記スレッド識別子に基づいて前記出力装置上に前記会話要素を表示させるように動作可能な、前記メモリ内のインスタント・メッセージング・スレッド・マネージャ・プログラムと
を備える装置。
【請求項９】
インスタント・メッセージング会話を管理する方法を実施するためのコンピュータ・プログラムを有するコンピュータ可読メモリであって、前記コンピュータ・プログラムは前記コンピュータに、
会話要素を交換するための対話式メッセージング・セッションを確立するステップと、
スレッド識別子を前記会話要素に割り当てるステップと、
前記スレッド識別子を前記会話要素に付加するステップと、
前記スレッド識別子に基づいてユーザ・インターフェース内に前記会話要素を表示するステップと
を実行させることを特徴とする、コンピュータ可読メモリ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般には要求ベースのメッセージング・システムに関し、詳細には、スレッド化されたインスタント・メッセージング会話を管理するシステムおよび方法に関する。
【背景技術】
【０００２】
要求ベースのメッセージングは、ネットワークまたは他の通信メディアを介してリアル・タイムでテキストなどのメッセージ・データを人々が交換することを可能にする通信サービスである。恐らく、交換のための最も一般的なメディアはインターネットであるが、ワイヤレス・フォン・ネットワークが拡大し続けるにつれて、そのテキスト・メッセージングに対する人気も拡大している。例えば、Aravamudun et al.のU.S.Patent No.6,301,609ならびにU.S.Patent PublicationNos.2002/0035605および2004/0254998は、従来の通信とワイヤレス通信を統合する交換メディアへの移動を示している。インスタント・メッセージング（ＩＭ）は、要求ベースのメッセージングの広く知られ、使用されている一実施形態である。今日、大部分のネットワークおよびオンライン・サービス・プロバイダは、何らかの形態のＩＭサービスを提供している。ある推定によれば、上位３つのインスタント・メッセージング・サービス・プロバイダは４千万人を超えるユーザにサービスしている。インスタント・メッセージング・サービスはまた、企業インフラストラクチャにも急速に導入され、統合されつつある。例えば、InternationalBusiness Machines, Inc.(IBM)は、世界中の従業員に対してLOTUS SAMETIMEインスタント・メッセージング・アプリケーションを導入している。今日人気のあるＩＭアプリケーションの別の例には、ＭＳＮメッセンジャおよびＹａｈｏｏ／ＡＯＬインスタント・メッセンジャが含まれる。
【０００３】
ＩＭユーザは通常、ネットワーク・コンピュータおよびＩＭクライアント・プログラムを使用して、会話的なスタイルで互いにメッセージを交換する。ＩＭクライアントは、ユーザがメッセージを構成し、送信し、受信し、読むためのインターフェースを提供する。グラフィカル・ディスプレイでは、ＩＭクライアントは通常、少なくとも２つのウィンドウ、すなわちメッセージを構成および送信するためのウィンドウと、各ユーザがメッセージを順番に送信および受信するときにメッセージを表示するウィンドウとを含む。ＩＭセッション（口語的には「チャット」とも呼ばれる）は、複数の参加者がチャット・ウィンドウでそれぞれ何回も「話す」ことで、しばしば非常に長くなる。それぞれの順番またはエントリを本明細書では「会話要素」と呼ぶ。
【０００４】
会話の場合と同じく、ＩＭセッションはしばしば、複数のトピックスにわたる一連の質問、回答、およびコメントからなる。質問に対する応答は、同一の参加者からの複数の応答を有する可能性がある。長い考えをいくつかの会話要素に分割することが一般的であるからである。各会話要素は、各会話要素が書き込まれたときに直ちに時間順に表示される。ＩＭセッションに３人以上の参加者がいるとき、質問に対する複数の参加者からの応答が、互いに視覚的に中断される可能性がある。中断がシーケンス中の前および後続の会話要素とは異なるトピックに関係するとき、中断はさらなる混乱を引き起こす可能性がある。
【０００５】
ニュース・グループなどの他の形態の電子通信は、会話トピックスをスレッド化することによって中断および非同期応答の問題に対処している。ニュース・グループでは、各会話要素、すなわち「ポスティング」がＥメールのように扱われる。ポスティングが共通サーバに送られ、その共通サーバで、参加者、すなわち「加入者」はポスティングを作成し、読み、ポスティングに応答することができる。ニュース・グループ・ポスティングは、件名行、送信者情報、サーバ経路指定情報、ならびにタイム・スタンプおよび日付スタンプを含む、Ｅメールと同様の広範囲のヘッダ情報を含む。ニュース・グループ・ソフトウェアは、格納するため、およびニュース・グループの加入者がアクセスするために、ヘッダ情報を使用してポスティングを適切なサーバに経路指定する。元の各会話要素には件名行にトピックが割り当てられる。元の会話要素への応答は、Ｅメールでの「全員へ返信」機能と同様に処理される。関連する会話要素は、スレッド中の元の会話要素の下に視覚的にまとめられる。
【０００６】
しかし、ニュース・グループ・ソフトウェアで使用されるスレッド化機構は、ＩＭのリアル・タイムの性質には向いていない。ＩＭシステムは、参加ノード間のアクティブでオープンな電子接続を使用するので、ＩＭ会話要素は、スレッドでポスティングを編成するためのニュース・グループで使用される広範囲のヘッダ情報を含まない。ＩＭセッションが開始するときに電子通信の経路指定が既に確立されているので、ＩＭ会話要素は一般に、すべてのヘッダ情報を必要としない。
【特許文献１】U.S.Patent No.6,301,609
【特許文献２】U.S.Patent PublicationNo.2002/0035605
【特許文献３】U.S.Patent PublicationNo.2004/0254998
【発明の開示】
【発明が解決しようとする課題】
【０００７】
したがって、ＩＭセッションのスレッド化された会話要素のためのシステムおよび方法が求められている。
【課題を解決するための手段】
【０００８】
以下で説明される発明は、スレッド化されたインスタント・メッセージング会話を管理するためのコンピュータで実装されるシステムおよび方法である。この方法は、会話要素を交換するための対話式メッセージング・セッションを確立すること、スレッド識別子を会話要素に割り当てること、スレッド識別子を会話要素に付加すること、およびスレッド識別子に基づいてユーザ・インターフェース内に会話要素を表示することを含む。
【０００９】
本発明の特徴と考えられる新規な特徴が添付の特許請求の範囲に記載される。しかし、本発明自体、ならびに本発明の好ましい使用の形態、別の目的、利点は、以下の例示的実施形態の詳細な説明を添付の図面と共に参照することで最も良く理解するであろう。
【発明を実施するための最良の形態】
【００１０】
本発明の原理は、様々なコンピュータ・ハードウェアおよびソフトウェア構成に適用可能である。本明細書で使用される「コンピュータ・ハードウェア」または「ハードウェア」という用語は、論理オペレーションを受領、実行し、データを格納または表示することのできる任意のマシンまたは機器を指し、限定はしないが、プロセッサおよびメモリを含む。「コンピュータ・ソフトウェア」または「ソフトウェア」は、コンピュータ・ハードウェアにオペレーションを実行させる任意の命令のセットを指す。本明細書で使用される「コンピュータ」という用語は、限定はしないが、ハードウェアとソフトウェアの有用な任意の組合せを含み、「コンピュータ・プログラム」または「プログラム」は、限定はしないが、コンピュータ・ハードウェアに論理オペレーションを受領、実行させ、データを格納または表示させるように動作可能な任意のソフトウェアを含む。コンピュータ・プログラムはしばしばそうであるが、限定はしないがサブルーチン、モジュール、関数、メソッド、および手続きを含む複数の小さいプログラミング単位から構成することができる。したがって、本発明の機能を、複数のコンピュータおよびコンピュータ・プログラムの間に分散させることができる。しかし、本発明は、１つまたは複数の汎用コンピュータを構成して、それが本発明の新規な態様を実装することを可能にする単一のコンピュータ・プログラムとして最も良く説明される。例示のために、本発明のコンピュータ・プログラムをインスタント・メッセージング・スレッド・マネージャ（「ＩＭＴＭ」）と呼ぶ。
【００１１】
さらに、図１に示すハードウェア装置の例示的ネットワークを参照しながらＩＭＴＭを以下で説明する。「ネットワーク」は、インターネットなどの通信メディアを介して互いに結合され、互いに通信する任意の数のハードウェア装置を含む。「通信メディア」は、限定はしないが、ハードウェアまたはソフトウェアがそれによってデータを伝送することのできる物理的、光学的、電磁的、またはその他のメディアを含む。説明のために、例示的ネットワーク１００は、ワークステーション・コンピュータ１０５、ワークステーション・コンピュータ１１０、サーバ・コンピュータ１１５、および永続的ストレージ１２０を含む、限定された数のノードのみを有する。ネットワーク接続１２５は、ネットワーク・ノード１０５〜１２０間の通信を可能にするすべてのハードウェア、ソフトウェア、および通信メディアを含む。以下の状況では別段の指示がない限り、すべてのネットワーク・ノードが、公に利用可能なプロトコルまたはメッセージング・サービスを使用して、ネットワーク接続１２５を介して互いに通信する。
【００１２】
ＩＭＴＭ２００は通常、図２のメモリ２２０として概略的に表されるメモリに格納される。本明細書で使用される「メモリ」という用語は、限定はしないが、コンピュータがデータまたはソフトウェアを任意の期間格納することのできる電気回路、磁気ディスク、光ディスクなどの任意の揮発性または永続的メディアを含む。単一のメモリは複数のメディアを包含することができ、単一のメモリを複数のメディアにわたって分散させることができる。したがって、図２は説明の手段として含められているのであって、必ずしもメモリ２２０の何らかの特定の物理的実施形態を反映しているわけではない。しかし、図２に示すように、メモリ２２０は追加のデータおよびプログラムを含むことができる。ＩＭＴＭ２００にとって特に重要なことに、メモリ２２０は、ＩＭリーダ２３０、スレッド・マッピング・ファイル２４０、および構成データ・ファイル２５０を含むことができる。ＩＭＴＭ２００は、発信メッセージ・コンポーネント３００、着信メッセージ・コンポーネント４００、および構成コンポーネント５００の各コンポーネントを含むことができる。
【００１３】
ＩＭＴＭ２００は、ＩＭ会話の参加者がＩＭセッションの会話要素をスレッドで視覚的に編成することができるように、ＩＭリーダ２３０の視覚的外観を制御する。ＩＭセッション中に、参加者は、新しいトピックまたはスレッドがいつ始まるかを指示することができる。新しいスレッドの作成は、強調表示、アイコンのドラッグ＆ドロップ；強調表示＆右クリック−メニューの生成；強調表示＆左クリックなどの標準オブジェクト指向手続きを使用して、迅速かつ直感的であるべきである。複数のスレッドが生成されると、本発明は、グループ内の後続の各会話要素をスレッドで表示すべきである。各スレッドは、例えば別々のウィンドウまたはサブウィンドウ内に表示することができる。スレッドは、例えばテキスト・マーカやカラーなどの視覚的キューを使用することにより、単一のウィンドウ内に編成することもできる。同一のスレッド内の新しい会話要素を、時間的に最新のメッセージ要素の下ではなく、他の会話要素のすぐ下に追加することもできる。発信メッセージ・コンポーネント３００は、発信会話要素をスレッドに割り当て、会話要素にスレッド識別子を付加する。着信メッセージ・コンポーネント４００は、着信会話要素からスレッド識別子を読み取り、会話要素を適切なスレッド内で視覚的に表示する。構成コンポーネント５００は、参加者がスレッドを表示するためのプリファレンスを選択することを可能にする。スレッド・マッピング・ファイル２４０は、アクティブなＩＭセッション中のすべてのスレッドのリストを含む。構成データ・ファイル２５０は、スレッドを表示するための参加者プリファレンスを含む。
【００１４】
図３に示すように、発信メッセージ・コンポーネント３００は、ＩＭリーダ２３０がオープンするときにはいつでも、通常はＩＭセッションの開始時に開始する（３１０）。発信メッセージ・コンポーネント３００は、スレッド・マッピング・ファイル２４０を開き（３１４）、新しいスレッドの作成および新しい会話要素の作成に関してＩＭリーダ２３０を監視する（３１６）。新しいスレッドが開始したことを参加者が指示するとき（３１８）、発信メッセージ・コンポーネントは、スレッド識別子リストをスレッド・マッピング・ファイル２４０に追加する（３２０）。参加者は、既存のテキスト文字列を強調表示し、ＩＭリーダ２３０のウィンドウ内のツールバー上の「新しいスレッド」アイコンをクリックするなどのいくつかの方法で新しいスレッドの作成を指示することができる。既存のテキストを強調表示し、異なるウィンドウまたはサブウィンドウにテキストをドラッグ・アンド・ドロップする、選択したテキストの領域上でマウス・ポインタを右クリックすることによってポップアップ・メニューを活動化させるなどの他の標準オブジェクト指向手続きを使用して、新しいスレッドを指示することもできる。参加者はまた、新しい会話要素のテキストをタイプする前に新しいスレッドを指示することもできる。参加者が既存の会話要素に関する新しいスレッドを指示した場合（３２２）、発信メッセージ・コンポーネント３００は、選択した要素に関するスレッド識別子を更新する（３２４）。参加者が新しい会話要素を作成したとき（３２６）、発信メッセージ・コンポーネント３００は、会話要素をスレッドに割り当て（３２８）、スレッド識別子をメッセージ要素に付加する（３３０）。スレッド識別子が、「＜ＩＤ−１＞」というテキストを追加するなどの何らかのテキスト・マークアップの形で会話要素に追加される。発信メッセージ・コンポーネント３００は、スレッド・マッピング・ファイル２４０内のスレッドのリストと、会話要素がタイピングされたときのカーソルの位置から、新しい会話要素に関する適切なスレッドを判定する。スレッドごとに異なるウィンドウまたはサブウィンドウが使用されるとき、発信メッセージ・コンポーネント３００は、どのウィンドウまたはサブウィンドウが新しい会話要素を含むかに基づいてスレッドを割り当てる。すべてのスレッドが同一のウィンドウ内に表示されるとき、新しい会話要素は、その新しいメッセージ要素の直前の会話要素と同一のスレッドに属すると想定される。参加者は、所望のスレッドからの会話要素の後にカーソルを配置して、そのトピックに関する会話を続けることができる。発信メッセージ・コンポーネント３００は、ＩＭリーダ２３０がクローズするまで動作し続け（３３２）、ＩＭリーダ２３０がクローズしたときに停止する（３３４）。
【００１５】
図４に示すように、着信メッセージ・コンポーネント４００は、ＩＭリーダ２３０が新しい会話要素を受信したときにはいつでも開始する（４１０）。着信メッセージ・コンポーネント４００は、スレッド・マッピング・ファイル２４０および構成データ・ファイル２５０をオープンし（４１２）、スレッド識別子を求めて着信会話要素に照会する（４１４）。着信会話要素がスレッド識別子を有さない場合、スレッド識別子をスレッドに割り当てなければならない（４１６）。着信メッセージ・コンポーネント４００は、未割当てのメッセージ要素をスレッドに割り当て（４１８）、スレッド識別子を会話要素に付加する（４２０）。未割当ての着信会話要素がＩＭセッションの第１メッセージ要素である場合、着信メッセージ・コンポーネント４００は、着信会話要素をデフォルトの第１スレッドに割り当てる。ＩＭセッションが既存の会話要素を有する場合、未割当ての着信会話要素がスレッド・マッピング・ファイル２４０内にリストされるスレッドのうちの最新のスレッドに割り当てられる。着信メッセージ・コンポーネント４００は、構成データ・ファイル２５０内の設定に従って着信会話要素を表示する（４２２）。着信会話要素が表示されると、着信メッセージ・コンポーネント４００は停止する（４２４）。
【００１６】
図５に示すように、構成コンポーネント５００は、参加者が設定変更を示すときにはいつでも開始する。参加者は、例えば、リーダ２３０上のメニューから「設定」を選択することにより、特定の構成設定に対応するＩＭリーダ２３０上のアイコンを選択することにより、設定変更を指示することができる（５１０）。構成コンポーネント５００は構成データ・ファイル２５０をオープンし（５１２）、参加者が現在のディスプレイ設定を変更したかどうかを判定する（５１４）。参加者が設定を変更することを選んだ場合、変更が構成データ・ファイル２５０内に保存される（５１６）。構成コンポーネント５００は、アクティブなＩＭセッションがあるかどうかを判定する（５１８）。アクティブなＩＭセッションがある場合、構成コンポーネント５００は、新しい構成設定に従って、スレッド中のすべてのメッセージ要素を表示する（５２０）。構成に対する変更を保存し、指示通りに表示を変更した後、構成コンポーネント５００は停止する（５２２）。
【００１７】
図６〜図８は、ＩＭＴＭ２００がどのようにＩＭリーダ・ウィンドウ６００内のスレッドで会話要素を視覚的に編成するかの一例を示す。図６は、すべての会話要素がサブウィンドウ６０１内に現れる、単一のスレッドを有するＩＭセッションを示す。会話要素６１５が別のスレッドに属すると参加者が判断した場合、参加者は、テキストの一部をマウスで強調表示することによって会話要素６１５を選択する。図６に示すように、参加者は、「新しいスレッド」アイコン６２５をマウスで選択する。あるいは、図７に示すように、参加者は、マウスを使用して会話要素６１５を「ドラッグアンドドロップ」することによって新しいスレッドを作成する。図８に示すように、ＩＭＴＭ２００は、選択した会話要素６１５をサブウィンドウ６０２に移動し、選択されなかった会話要素はサブウィンドウ６０１内に残る。参加者は、各スレッドで新しい会話要素を追加することによってＩＭセッションを継続することができる。
【００１８】
ＩＭＴＭ２００の代替実施形態は、ＩＭセッションの参加者に他の機能を提供する。追加の機能は、会話要素のテキストを強調表示して、アイコンを選択する、またはポップアップ・メニューから機能を選ぶことによって開始する。追加の機能には、発信Ｅメール・メッセージを、Ｅメール・メッセージの本文中の選択したテキストのコピーと共にオープンし、選択したテキストを別個のファイルにコピーして後のために保存することが含まれる。別個のファイルは、ＩＭセッションの終了後にテキストを保存する「チャット・リスト」でよい。別の可能な機能は、参加者がメッセージ要素から選択したテキストを、カレンダやプランナなどの他のタイプのソフトウェア・ツールに保存することを可能にする。
【００１９】
本発明の好ましい形態を図面に図示し、上記で説明したが、好ましい形態の変形形態は当業者には明らかであろう。上記の説明は例示のために過ぎず、図示し、説明した特定の形態に本発明が限定されると解釈すべきではない。本発明の範囲は、特許請求の範囲の文言によってのみ限定されるべきである。
【図面の簡単な説明】
【００２０】
【図１】例示的コンピュータ・ネットワークを表す図である。
【図２】コンピュータ上のメモリ内のプログラムおよびファイルを説明する図である。
【図３】発信メッセージ・コンポーネントのフロー・チャートである。
【図４】着信メッセージ・コンポーネントのフロー・チャートである。
【図５】構成コンポーネントのフロー・チャートである。
【図６】単一の会話スレッドを表示するＩＭＴＭの一実施形態を示す図である。
【図７】２つの会話スレッドを表示するＩＭＴＭの一実施形態を示す図である。
【図８】２つの会話スレッドを表示するＩＭＴＭの一実施形態を示す図である。
【符号の説明】
【００２１】
１００  ネットワーク
１０５  ワークステーション・コンピュータ
１１０  ワークステーション・コンピュータ
１１５  サーバ・コンピュータ
１２０  永続的ストレージ
１２５  ネットワーク接続
２００  ＩＭＴＭ
２２０  メモリ
２３０  ＩＭリーダ
２４０  スレッド・マッピング・ファイル
２５０  構成データ・ファイル
３００  発信メッセージ・コンポーネント
４００  着信メッセージ・コンポーネント
５００  構成コンポーネント
６００  ＩＭリーダ・ウィンドウ
６０１  サブウィンドウ
６０２  サブウィンドウ
６１５  会話要素
６２５  「新しいスレッド」アイコン
【図１】
2007200312.tif 000003
【図２】
2007200312.tif 000004
【図３】
2007200312.tif 000005
【図４】
2007200312.tif 000006
【図５】
2007200312.tif 000007
【図６】
2007200312.tif 000008
【図７】
2007200312.tif 000009
【図８】
2007200312.tif 000010