(58)【調査した分野】(Int.Cl.,DB名)
前記第1グループのユーザは、前記アカウントの管理者によって設定された順序およびランダムな順序のうち少なくとも1つの順序に従って前記通信セッションに新規参加する前記第2グループのユーザに割り当てられるか、または前記新規参加した第2グループのユーザの電子機器から受信したメッセージのキーワードに基づいて割り当てられることを特徴とする、請求項1に記載のシステム。
前記仮想の通信セッションは、前記アカウントの管理者から受信した命令および前記仮想の通信セッションに参加した前記第1グループのユーザから受信した命令のうち少なくとも1つに従って終了されることを特徴とする、請求項1に記載のシステム。
前記仮想の通信セッションの識別子は、前記通信セッションまたは前記アカウントの識別子、前記割り当てられた少なくとも1つのユーザの識別子、および前記第2グループのユーザの識別子を含むことを特徴とする、請求項8に記載のシステム。
前記仮想の通信セッションを通じて送受信されるメッセージは、前記サーバで前記仮想の通信セッションの識別子が追加され、前記通信セッションを通じて送受信されるメッセージを含むことを特徴とする、請求項12に記載のコンピュータによって実現される方法。
前記第1グループのユーザは、前記アカウントの管理者によって設定された順序およびランダムな順序のうち少なくとも1つの順序に従って前記通信セッションに新規参加する第2グループのユーザに割り当てられるか、または前記新規参加した第2グループのユーザの電子機器から前記サーバに送信されたメッセージのキーワードに基づいて割り当てられることを特徴とする、請求項12に記載のコンピュータによって実現される方法。
前記仮想の通信セッションは、前記サーバで、前記アカウントの管理者から受信した命令および前記仮想の通信セッションに参加した前記第1グループのユーザから受信した命令のうち少なくとも1つに従って終了され、
前記仮想の通信セッションが終了した後に送受信されるメッセージは、前記通信セッションに対応するチャットルームに表示されることを特徴とする、請求項12に記載のコンピュータによって実現される方法。
前記仮想の通信セッションは、前記通信セッションまたは前記アカウントの識別子、前記割り当てられた少なくとも1つのユーザの識別子、および前記電子機器のユーザの識別子を含んで構成される識別子に基づいて識別されることを特徴とする、請求項12に記載のコンピュータによって実現される方法。
【発明を実施するための形態】
【0011】
以下、本発明の実施形態について、添付の図面を参照しながら詳しく説明する。
【0012】
図1は、本発明の一実施形態における、ネットワーク環境の例を示した図である。
図1のネットワーク環境は、複数の電子機器110、120、130、140、複数のサーバ150、160、およびネットワーク170を含む例を示している。このような
図1は、発明の説明のための一例に過ぎず、電子機器の数やサーバの数が
図1のように限定されることはない。
【0013】
複数の電子機器110、120、130、140は、コンピュータ装置によって実現される固定型端末や移動型端末であってもよい。複数の電子機器110、120、130、140の例としては、スマートフォン(smart phone)、携帯電話、ナビゲーション、コンピュータ、ノート型パンコン、デジタル放送用端末、PDA(Personal Digital Assistants)、PMP(Portable Multimedia Player)、タブレットPCなどがある。一例として、電子機器1(110)は、無線または有線通信方式を利用し、ネットワーク170を介して他の電子機器120、130、140および/またはサーバ150、160と通信してもよい。
【0014】
通信方式が制限されることはなく、ネットワーク170が含むことのできる通信網(一例として、移動通信網、有線インターネット、無線インターネット、放送網)を活用する通信方式だけではなく、機器間の近距離無線通信が含まれてもよい。例えば、ネットワーク170は、PAN(personal area network)、LAN(local area network)、CAN(campus area network)、MAN(metropolitan area network)、WAN(wide area network)、BBN(broadband network)、インターネットなどのネットワークのうち1つ以上の任意のネットワークを含んでもよい。さらに、ネットワーク170は、バスネットワーク、スターネットワーク、リングネットワーク、メッシュネットワーク、スター・バスネットワーク、ツリーまたは階層的(hierarchical)ネットワークなどを含むネットワークトポロジのうちの任意の1つ以上を含んでもよいが、これに制限されることはない。
【0015】
サーバ150、160それぞれは、複数の電子機器110、120、130、140とネットワーク170を介して通信し、命令、コード、ファイル、コンテンツ、サービスなどを提供するコンピュータ装置または複数のコンピュータ装置によって実現されてもよい。
【0016】
一例として、サーバ160は、ネットワーク170を介して接続した電子機器1(110)にアプリケーションをインストールするためのファイルを提供してもよい。この場合、電子機器1(110)は、サーバ160から提供されたファイルを利用してアプリケーションをインストールすることができる。また、電子機器1(110)は、その中に含まれるオペレーティングシステム(Operating System:OS)および少なくとも1つのプログラム(一例として、ブラウザや前記インストールされたアプリケーション)の制御に従ってサーバ150に接続し、サーバ150が提供するサービスやコンテンツの提供を受けることもできる。例えば、電子機器1(110)がアプリケーションの制御に従ってネットワーク170を介してサービス要請メッセージをサーバ150に送信すると、サーバ150は、サービス要請メッセージに対応するコードを電子機器1(110)に送信してもよく、電子機器1(110)は、アプリケーションの制御に従ってコードに基づいた画面を構成して表示することで、ユーザにコンテンツを提供してもよい。
【0017】
図2は、本発明の一実施形態における、電子機器およびサーバの内部構成を説明するためのブロック図である。
図2では、1つの電子機器に対する例として電子機器1(110)、そして1つのサーバに対する例としてサーバ150の内部構成について説明する。他の電子機器120、130、140やサーバ160も同一または類似の内部構成を備えてもよい。
【0018】
電子機器1(110)とサーバ150はそれぞれ、メモリ211、221、プロセッサ212、222、通信モジュール213、223、および入力/出力インタフェース214、224を含んでもよい。メモリ211、221は、コンピュータ読取可能な記録媒体であって、RAM(random access memory)、ROM(read only memory)、およびディスクドライブのような永久大容量記憶装置(permanent mass storage device)を含んでもよい。また、メモリ211、221には、オペレーティングシステムと少なくとも1つのプログラムコード(一例として、電子機器1(110)にインストールされて駆動するブラウザや上述したアプリケーションなどのためのコード)が格納されてもよい。このようなソフトウェア構成要素は、ドライブメカニズム(drive mechanism)を利用してメモリ211、221とは別のコンピュータ読取可能な記録媒体からロードされてもよい。このような別のコンピュータ読取可能な記録媒体は、フロッピードライブ、ディスク、テープ、DVD/CD−ROMドライブ、メモリカードなどのコンピュータ読取可能な記録媒体を含んでもよい。他の実施形態において、ソフトウェア構成要素は、コンピュータ読取可能な記録媒体ではない通信モジュール213、223を利用してメモリ211、221にロードされてもよい。例えば、少なくとも1つのプログラムは、開発者またはアプリケーションのインストールファイルを配布するファイル配布システム(一例として、上述したサーバ160)がネットワーク170を介して提供するファイルによってインストールされるプログラム(一例として、上述したアプリケーション)に基づいてメモリ211、221にロードされてもよい。
【0019】
プロセッサ212、222は、基本的な算術、ロジック、および入出力演算を実行することにより、コンピュータプログラムの命令を処理するように構成されてよい。命令は、メモリ211、221または通信モジュール213、223によって、プロセッサ212、222に提供されてよい。プロセッサ212、222は、メモリ211、221のような記録装置に格納されたプログラムコードに従って、受信される命令を実行するように構成されてもよい。
【0020】
通信モジュール213、223は、ネットワーク170を介して電子機器1(110)とサーバ150とが互いに通信するための機能を提供してもよいし、電子機器(一例として、電子機器2(120))または他のサーバ(一例として、サーバ160)と通信するための機能を提供してもよい。一例として、電子機器1(110)のプロセッサ212が、メモリ211のような記録装置に格納されたプログラムコードに従って生成した要請(一例として、コンテンツに対するストリーミングサービスの要請)が、通信モジュール213の制御に従ってネットワーク170を介してサーバ150に伝達されてもよい。これとは反対に、サーバ150のプロセッサ222の制御に従って提供される制御信号や命令、コンテンツ、ファイルなどが、通信モジュール223とネットワーク170を経て電子機器1(110)の通信モジュール213を通じて電子機器1(110)によって受信されてもよい。例えば、通信モジュール213で受信したサーバ150の制御信号や命令などは、プロセッサ212やメモリ211に伝達されてもよく、コンテンツやファイルなどは、電子機器1(110)が更に含むことのできる格納媒体に格納されてもよい。
【0021】
入力/出力インタフェース214、224は、入力/出力装置215とのインタフェースのための手段であってもよい。例えば、入力装置は、キーボードまたはマウスなどの装置を含んでもよく、出力装置は、アプリケーションの通信セッションを表示するためのディスプレイのような装置を含んでもよい。他の例として、入力/出力インタフェース214は、タッチスクリーンのように入力と出力のための機能が1つに統合された装置とのインタフェースのための手段であってもよい。より具体的な例として、電子機器1(110)のプロセッサ212は、メモリ211にロードされたコンピュータプログラムの命令を処理するにあたり、サーバ150や電子機器2(120)が提供するデータを利用して構成されるサービス画面やコンテンツを、入力/出力インタフェース214を通じてディスプレイに表示してもよい。
【0022】
また、他の実施形態において、電子機器1(110)とサーバ150は、
図2の構成要素よりも更に多くの構成要素を含んでもよい。しかし、大部分の従来技術構成要素を明確に図に示す必要はない。例えば、電子機器1(110)は、上述した入力/出力装置215のうち少なくとも一部を含むように実現されてもよいし、トランシーバ(transceiver)、GPS(Global Positioning System)モジュール、カメラ、各種センサ、データベースなどのような他の構成要素を更に含んでもよい。
【0023】
図3は、本発明の一実施形態における、サーバのプロセッサが含むことのできる構成要素の例を示した図であり、
図4は、本発明の一実施形態における、サーバが実行することのできる方法の例を示したフローチャートである。
図3に示すように、サーバ150のプロセッサ222は、セッション管理部310、アカウント表示制御部320、仮想セッション管理部330、およびメッセージング制御部340を含んでもよい。このようなプロセッサ222の構成要素は、
図4の方法が含む段階410乃至440を実行するようにサーバ150を制御してもよく、このような制御のために、メモリ221に含まれるオペレーティングシステムと少なくとも1つのプログラムのコードを実行するように実現されてもよい。
【0024】
段階410で、サーバ150は、インスタントメッセージングサービスのアカウントに対し、第1グループのユーザの電子機器がネットワークを介して接続可能な通信セッションを設定してよい。例えば、段階410は、上述したセッション管理部310によって実行されてもよい。
【0025】
一般的に、インスタントメッセージングサービスにおいて、個別のユーザそれぞれは自身のアカウントを有し、アカウントによって識別され得る。インスタントメッセージングサービスにおいて、1つの通信セッションは、1つのチャットルームに対応し得る。例えば、ユーザAがユーザBとの会話(メッセージの送受信)をサーバ150に要請する場合、サーバ150は、ユーザAのアカウントとユーザBのアカウントが追加されたチャットルームを生成してもよい。サーバ150は、生成されたチャットルーム(通信セッション)を通じてユーザAの電子機器とユーザBの電子機器とが互いにメッセージを送受信できるようにサービスを提供してもよい。より具体的な例として、ユーザAの電子機器が該当の通信セッションを通じて送信するメッセージは、サーバ150に送信され、サーバ150からユーザBの電子機器に伝達されてよい。
【0026】
また、3人以上のユーザが含まれるチャットルームが生成されてもよい。例えば、ユーザAとユーザBが参加しているチャットルームにユーザCが新規参加して、グループチャットルームが生成されてもよい。この場合、ユーザAの電子機器が該当のグループチャットルーム(3人以上のユーザ(一例として、ユーザA、ユーザB、およびユーザC)が接続している通信セッション)を通じて送信するメッセージは、サーバ150に送信され、サーバ150からユーザBの電子機器とユーザCの電子機器にそれぞれ伝達されてよい。
【0027】
サーバ150が段階410で設定する通信セッションは、1つのアカウントに対して多数のユーザが接続することのできる通信セッションであり、第1グループのユーザが参加可能な該当のアカウントのチャットルームに対応してもよい。第1グループのユーザについては、後述で更に詳しく説明する。
【0028】
段階420で、アカウントに関する情報を、インスタントメッセージングサービスを通じて第2グループのユーザの電子機器に提供して、アカウントを表示させてよい。このために、アカウント表示制御部320は、サーバ150が段階420を実行するようにサーバ150を制御してもよい。電子機器で表示されるアカウントについては、
図12を参照しながら更に詳しく説明する。
【0029】
インスタントメッセージングサービスは、ユーザに対し、友達などのように人的関係が設定された他のユーザのアカウントを表示してもよい。このとき、ユーザが、表示されたアカウントを選択(一例として、タッチスクリーンを備えるモバイル電子機器で、アカウントが表示された領域をタップ)したとする。サーバ150がユーザのアカウントと選択されたアカウントとを含むチャットルーム(通信セッション)を開設することにより、ユーザと選択されたアカウントのユーザとの会話が成立させることができる。
【0030】
サーバ150は、段階420で、第2グループのユーザが、アカウントに対して設定された通信セッションにアクセスできるように、アカウントに関する情報を第2グループのユーザの電子機器に提供してよい。提供されたアカウントに関する情報は、第2グループのユーザの電子機器に表示されてよく、第2グループのユーザが表示されたアカウントに関する情報を選択することにより、アカウントに対して設定された通信セッションにアクセスできるようになる。この場合、通信セッションに対応するチャットルームは、第1グループのユーザと第2グループの少なくとも1人のユーザが参加したチャットルームであり得る。一例として、第2グループのユーザは、アカウントに関する情報を電子機器によって受信したユーザであってよい。第2グループのユーザのうち少なくとも1人のユーザは、電子機器によって受信したアカウントに関する情報を利用してチャットルームに参加し得る。また、第1グループのユーザは、第2グループのユーザのうちチャットルームに参加した少なくとも1人のユーザとの会話(メッセージの送受信)によって第2グループのユーザの要求を処理するための応対者であり得る。ここで、第1グループのユーザのうち少なくとも1人は、アカウントの管理者であってもよい。アカウントの管理者については、後述で更に詳しく説明する。
【0031】
段階430で、サーバ150は、通信セッションに接続しようとする第2グループのユーザの電子機器を通信セッションに参加させてよい。例えば、第2グループのユーザの電子機器には、電子機器で実行されるアプリケーションの制御に従ってサーバ150から提供されるアカウントに関する情報が画面に表示され得る。ここで、第2グループのユーザが、画面に表示されたアカウントに関する情報の領域を選択(一例として、タッチスクリーン画面でアカウントに関する情報が表示された領域をタップ)した場合、電子機器は、サーバ150に、通信セッションに対する接続要請を送信し得る。この場合、サーバ150は、接続要請を送信した電子機器を通信セッションに接続させてよい。
【0032】
段階440で、サーバ150は、第1グループのユーザのうち少なくとも1人のユーザを第2グループのユーザのために割り当ててよい。第2グループのユーザに第1グループのユーザを割り当てる過程については、後述で更に詳しく説明する。
【0033】
段階450で、サーバ150は、第2グループのユーザのために割り当てられた少なくとも1人のユーザと、第2グループのユーザのための仮想の通信セッションを設定してよい。
【0034】
このような段階430、段階440、および段階450は、上述した仮想セッション管理部330によって実行されてよい。
【0035】
上述したように、第2グループのユーザが自身の電子機器に表示されたアカウントに関する情報を選択することにより、第2グループのユーザの電子機器は、通信セッションへの参加要請をサーバ150に送信することができる。サーバ150は、このような参加要請に基づき、通信セッションに接続しようとする第2グループのユーザの電子機器を通信セッションに参加させてよい。また、第1グループのユーザは、第2グループのユーザとの会話を通じて第2グループのユーザの要求を処理するためのユーザであり、通信セッションに参加した第2グループのユーザには、第1グループのユーザのうち少なくとも1人のユーザが割り当てられ得る。基本的に1人のユーザに1人の応対者が割り当てられるようになるが、必要に応じて、1人のユーザに2人以上の応対者が割り当てられてもよい。このような応対者の割当てについては、後述で更に詳しく説明する。
【0036】
サーバ150は、段階440で割り当てられたユーザ(第1グループのユーザ)と第2グループのユーザのための仮想の通信セッションを段階450で設定してもよい。このような仮想の通信セッションは、上述したアカウントのための通信セッション内で設定される仮想のセッションであってもよい。仮想の通信セッションを通じて送受信されるメッセージは、実際にはアカウントのための通信セッションを通じて送信されるメッセージであり、後述する別の方法により、仮想の通信セッションを通じて送受信されたメッセージとして識別され得る。
【0037】
段階460で、サーバ150は、割り当てられた少なくとも1人のユーザの電子機器および第2グループのユーザの電子機器のメッセージを、仮想の通信セッションを通じて送受信することができる。このために、メッセージング制御部340は、サーバ150が段階460を実行するようにサーバ150を制御してもよい。
【0038】
このように、サーバ150が1つの通信セッション内で一部の参加者のための仮想の通信セッションを提供することにより、1つの通信セッションに参加している多数の参加者のうち一部の参加者だけのためのサブ会話が可能となる。これにより、企業や団体などは、1つのアカウントに多数の応対者をおき、多数のユーザに1対1の会話を通じてユーザの要求を処理することが可能となる。
【0039】
上述したように、仮想の通信セッションを通じて送受信されるメッセージは、実際にはアカウントの通信セッションを通じて送受信されることになる。仮想の通信セッションを通じて送受信されるメッセージを区分するために、サーバ150は、メッセージに仮想の通信セッションの識別子を追加してもよい。言い換えれば、ユーザの電子機器が受信したメッセージに仮想の通信セッションの識別子が含まれている場合、電子機器は、受信したメッセージが仮想の通信セッションを通じて受信したメッセージであることを把握できるようになる。仮想の通信セッションの参加者の電子機器では、仮想の通信セッションを通じて送受信されたメッセージの送受信リストを、別に表示することが可能となるため、アカウントに対する通信セッションを通じてメッセージを送受信しながらも、仮想の通信セッションの参加者間の会話を行うことができるようになる。例えば、仮想の通信セッションの設定によって割り当てられた少なくとも1人のユーザの電子機器および第2グループのユーザの電子機器では、通信セッションによるアカウントのチャットルームが仮想の通信セッションのための別のチャットルームに切り替わってもよい。この場合、上述した送受信リストが、切り替わったチャットルームに表示されてもよい。アカウントのチャットルームは、インスタントメッセージングサービス上のチャットルームであり、一方、切り替わった別のチャットルームは、電子機器で仮想の通信セッションの識別子が含まれたメッセージを表示するためのチャットルームであってよい。
【0040】
図5は、本発明の一実施形態における、1つのアカウントに対するチャットルームに多数の参加者が参加した例を示した図であり、
図6は、本発明の一実施形態における、メッセージ表示画面の例を示した図である。
【0041】
先ず、
図5は、特定のアカウントに対する通信セッションに対応するアカウントチャットルーム510に、第1グループのユーザとして応対者a521、応対者b522、および応対者c523が参加しており、第2グループのユーザとしてユーザa531およびユーザb532が参加している例を示している。
【0042】
以下では、ユーザa531が応対者c523と仮想の通信セッションを通じて会話中の状態にあり、ユーザb532がアカウントチャットルーム510に参加した場合を仮定して例示する。
【0043】
ここで、
図6の第1画面610は、ユーザb532の画面に表示されるメッセージの例を示している。第1グループのユーザのうち1人はアカウントの管理者であってよく、
図6では、応対者a521がアカウント管理者であると仮定する。ユーザb532がアカウントチャットルーム510に参加すると、ユーザb532の画面には、仮想の通信セッションを通じて送受信されるメッセージを除いたメッセージがすべて表示されてよい。上述したように、ユーザa531と応対者c523は、仮想の通信セッションを通じて会話中であるため、ユーザa531と応対者c523が送受信するメッセージは、ユーザb532の画面には表示されない。
【0044】
ここで、点線ボックス611は、ユーザb532に応対者b522が割り当てられたことを示すシステムメッセージであってもよい。このようなシステムメッセージは、サーバ150によって送信されてもよいし、アカウントと関連するサーバによって送信されてもよい。ここで、アカウントと関連するサーバは、該当のアカウントを維持する企業や団体などのシステムであってもよい。例えば、応対者の割当てがサーバ150によってなされる場合には、サーバ150によってシステムメッセージが提供されてよい。他の例として、応対者の割当てがアカウントと関連するサーバによってなされる場合には、アカウントと関連するサーバによってシステムメッセージが提供されてよい。アカウントと関連するサーバによってシステムメッセージが提供されたとしても、システムメッセージは、サーバ150を経てアカウントチャットルーム510に表示されるようになる。
【0045】
再びユーザb532の観点において、ユーザb532に応対者b522が割り当てられると、ユーザb532と応対者b522との間のメッセージは、ユーザb532と応対者b522のためにサーバ150で設定された仮想の通信セッションを通じて送受信されてよい。ここで、仮想の通信セッションを通じて送受信されるメッセージは、ユーザb532の画面が切り替わりながら現れる別のチャットルームに表示されてもよい。第2画面620は、ユーザb532に提供される別のチャットルームを示している。このとき、通信セッションが仮想の通信セッションに切り替わると同時に、第1画面610が第2画面620に切り替わってもよい。
【0046】
実際、ユーザb532は、アカウントチャットルーム510に接続しており、アカウントチャットルーム510に対応する通信セッションを通じてメッセージを送受信する。しかし、サーバ150は、仮想の通信セッションを通じてメッセージを送信するようにメッセージを変換してもよい。変換されたメッセージが、別のチャットルームを通じてユーザb532に表示されることにより、ユーザb532には、アカウントチャットルーム510とは異なるチャットルームを通じて応対者b522と1対1のチャットを行うような経験を提供することができる。例えば、応対者b522が、ユーザb532に伝達するための1番目のメッセージ621を、サーバ150に送信すると、サーバ150は、仮想の通信セッションの識別子を1番目のメッセージ621に含めて、ユーザb532に伝達してもよい。この場合、ユーザb532は、1番目のメッセージ621に含まれる仮想の通信セッションの識別子により、1番目のメッセージ621が仮想の通信セッションを通じて送受信されたものであると判断することができる。したがって、ユーザb532は、仮想の通信セッションを通じて送受信されるメッセージを、1つの送受信リストとして第2画面620のように表示することにより、応対者b522との1対1の会話を続けることができるようになる。このとき、仮想の通信セッションの識別子が含まれないメッセージ(以下、「グループメッセージ」)は、ユーザb532の観点からは無視されることもある。他の実施形態において、グループメッセージは、仮想の通信セッションによる1対1のチャットルームには表示されず、仮想の通信セッションが終わって1対1のチャットルームが本来のグループチャットルーム画面に切り替わるときに、グループチャットルーム画面に表示されてもよい。
【0047】
図5および
図6の実施形態では、ユーザがメッセージを送受信してユーザの画面にメッセージが表示されることを説明しているが、実質的にメッセージはユーザではないユーザの電子機器によって送受信され、チャットルームのようなインタフェースやメッセージなども電子機器の画面に表示される。しかし、説明の便宜と発明の理解を助けるために、電子機器に関する説明は省略する。以下でも、電子機器に関する説明は省略する。
【0048】
再び
図3および
図4を参照すると、アカウントの通信セッションに参加する第2グループのユーザごとに、第1グループのユーザのうち少なくとも1人のユーザの割当てが試みられてもよい。上述したように、通信セッションに参加した第2グループのユーザに対する第1グループのユーザの割当ては、サーバ150によって処理されてもよいが、アカウントと関連するサーバによって処理されてもよい。
【0049】
例えば、第1グループのユーザは、アカウントの管理者によって設定された順序およびランダムな順序のうち少なくとも1つの方法によって、通信セッションに参加する第2グループのユーザに割り当てられてもよい。あるいは、第2グループのユーザの電子機器から受信したメッセージに基づいて割り当てられてもよい。具体的な例として、
図6において、サーバ150またはアカウントと関連するサーバは、単純に、ユーザがまだ割り当てられていない応対者b522をユーザb532に割り当ててもよい。一方、サーバ150またはアカウントと関連するサーバは、ユーザb532のメッセージ「預金の問い合わせです。」からキーワード「預金の問い合わせ」を抽出し、抽出されたキーワード「預金の問い合わせ」に見合う応対者b522をユーザb532に割り当ててもよい。言い換えれば、第1グループのユーザそれぞれに、割り当てる専門分野が予め設定されていてもよく、サーバ150やアカウントと関連するサーバは、キーワードがどの分野に属するかを決め、決められた分野が専門分野として設定されている第1グループのユーザ(またはユーザ)を該当の第2グループのユーザに割り当ててもよい。
【0050】
この場合、サーバ150は、段階430で、第1グループのユーザが割り当てられた第2グループのユーザごとに、個別に、割り当てられた第1グループのユーザとの仮想の通信セッションを設定してもよい。また、サーバ150は、段階440で、通信セッションに参加する第2グループのユーザに第1グループのユーザを割り当てることができない場合、通信セッションに参加している第2グループのユーザの電子機器に、通信セッションを通じて、割当て待機のための案内メッセージを送信してもよい。
【0051】
また、仮想の通信セッションは、アカウントの管理者から受信した命令、および仮想の通信セッションに参加している第1グループのユーザから受信した命令のうち少なくとも一方に従って終了され得る。
【0052】
図7は、本発明の一実施形態における、1つのアカウントに対するチャットルームに新たな参加者が追加された例を示した図であり、
図8は、本発明の一実施形態における、メッセージ表示画面の他の例を示した図である。
【0053】
図7は、上述した
図5の状況において、ユーザc710が、アカウントチャットルーム510に追加で接続した状況を示している。このとき、応対者a521がユーザc710に割り当てられたとする。しかし、応対者a521がアカウント管理者であるためユーザに割り当てることができないと仮定すると、ユーザc710に割り当てることのできる応対者が不足な状況となる。
【0054】
図8の第1画面810は、ユーザc710の観点において、通信セッションを通じて送受信されるメッセージを示している。ユーザc710は、「積み立ての問い合わせ」のように、ユーザc710が望む事項をメッセージによって伝達したとする。しかし、ユーザc710に割り当てることのできる応対者が足りていないという現状により、第1の点線ボックス811に示すように、割当て待機のための案内メッセージ(システムメッセージ)がユーザc710に提供されてもよい。
【0055】
ここで、応対者c523がユーザa531との応対を終えると、ユーザc710に応対者c523を割り当てることができるようになる。第2の点線ボックス812は、ユーザc710に応対者c523が割り当てられたことを示すシステムメッセージである。ここで、サーバ150は、ユーザc710と応対者c523のための仮想の通信セッションを設定してもよい。仮想の通信セッションを通じて送受信されるメッセージは、
図8の第2画面820のように切り替わったチャットルームに表示されてもよい。切り替わったチャットルームとは、電子機器が、電子機器で駆動するアプリケーションの制御に従って、仮想の通信セッションの識別子を含むメッセージを集めて表示するウィンドウであり、インスタントメッセージングサービスでアカウントに対して生成するアカウントチャットルーム510とは異なる。
【0056】
応対者c523は、ユーザc710に対する応対が終わった場合、応対終了のための命令(一例として、終了メッセージ)をサーバ150に送信してもよい。この場合、サーバ150は、仮想の通信セッションを終えてもよく、仮想の通信セッションが終わって再び本来の通信セッション(グループチャットルーム)に切り替わることにより、ユーザc710の画面も再び第1画面810に切り換わってもよい。必要に応じて、選択的に、アカウントの管理者である応対者a521がサーバ150に命令を送信して仮想の通信セッションを終了させることも可能である。このように、アカウントの管理者は、通信セッションを仮想の通信セッションに切り替えたり、仮想の通信セッションを本来の通信セッションに切り替えたりするよう、セッションの切替えを統制してもよい。また、アカウントの管理者は、通信セッションに対応するグループチャットルームに対する管理画面へのアクセス権限を有してもよい。このような管理画面は、グループチャットルームに対する多様な設定を管理するためのインタフェースを、アカウントの管理者に提供してもよい。アカウントの管理者は、管理画面にアクセスしてグループチャットルームに対する設定を制御してもよい。一例として、セッション切替えの統制も、管理画面によって制御され得る。
【0057】
再び
図3および
図4を参照すると、第1グループのユーザが割り当てられていない第2グループのユーザは、通信セッションを通じて自由にメッセージを送受信することも可能である。例えば、割り当てられた第1グループのユーザとの会話が終わり仮想の通信セッションが終わった第2グループのユーザや、第1グループのユーザが足りずにまだ第1グループのユーザが割り当てられていない第2グループのユーザは、通信セッションを通じて互いに会話することも可能である。
【0058】
また、通信セッションを通じて送受信されるメッセージをデータベースに格納してもよい。例えば、
図4の方法は、他の実施形態において、通信セッションを通じて送受信されるメッセージをデータベースに格納する段階(図示せず)を更に含んでもよく、サーバ150のプロセッサ222が更に含むことのできるメッセージ管理制御部(図示せず)は、サーバ150がこのように図示されていない段階を実行するようにサーバ150を制御してもよい。上述したように、仮想の通信セッションを通じて送受信されるメッセージも、実質的には通信セッションを通じて送受信されるものであるため、共にデータベースに格納されてもよい。ここで、メッセージに追加される仮想の通信セッションの識別子に基づき、データベースに格納されたメッセージのうち仮想の通信セッションを通じて送受信されたメッセージを識別してもよい。上述したように、仮想の通信セッションの識別子は、通信セッションまたはアカウントの識別子、割り当てられた少なくとも1つのユーザの識別子、および第2グループのユーザの識別子を含んでよい。また、メッセージに追加される仮想の通信セッションの識別子に基づいて識別されたメッセージを通じ、仮想の通信セッションごとに、メッセージを別に格納してもよい。このような方式を利用することにより、第2グループのどのユーザが第1グループのどのユーザとどのような会話を交わしたかを記録することができる。
【0059】
メッセージ管理制御部は、割り当てられた少なくとも1人のユーザ(第1グループのユーザ)の電子機器からの要請に応じ、第2グループのユーザの識別子を利用してデータベースから抽出されたメッセージを、割り当てられた少なくとも1人のユーザの電子機器に送信するようにサーバ150を制御してもよい。この場合、割り当てられたユーザは、応対しなければならない第2グループのユーザが以前にどのような要求をしたかを予め把握できるようになる。第2グループのユーザがアカウントの通信セッションに接続するたびに、割り当てられる第1グループのユーザが異なる可能性があるため、第2グループのユーザに現在割り当てられている第1グループのユーザは、第2グループのユーザが以前にどのような会話をしたかを把握する必要がある。サーバ150がデータベースから抽出したメッセージには、第2グループのユーザに対して以前に設定された仮想の通信セッションを通じて第2グループのユーザの電子機器に送受信したメッセージが含まれるため、割り当てられた第1グループのユーザは、第2グループのユーザのアカウントと関連する会話履歴について把握できるようになる。会話履歴は、多様な用途(一例として、顧客相談記録)に活用されてもよい。
【0060】
仮想の通信セッションが終わった場合、該当の仮想の通信セッションでのメッセージは別に永久保存されてもよい。別に格納されたメッセージの内容には、内容が変更されないようにデジタルフォレンジック(digital forensic)などの技法が適用されてもよい。このような方式を利用することで、顧客相談や案内の内容などについて内容を再検索したり、法的効果を付与したりできるようになるであろう。
【0061】
図9は、本発明の一実施形態における、データベースに格納されたメッセージの例を示した図である。
図9に示される表900は、
図6の第1画面610と第2画面620に表示されたメッセージが格納された例を示している。「通信セッションの識別子」は、アカウントのための通信セッションのメッセージを識別するための情報であってよい。また、「送信者の識別子」は、メッセージを送信したユーザを識別するための情報であってよい。さらに、「仮想の通信セッションの識別子」は、仮想の通信セッションを通じて送受信されたメッセージを識別するための情報であってよい。このとき、サーバ150は、「ユーザb」が含まれる仮想の通信セッションの識別子をデータベースから検索し、
図6の第2画面620に示された会話を再現できるようになる。
【0062】
このように、本発明の実施形態によると、ユーザは、それぞれの応対者のアカウントと関係(一例として、インスタントメッセージングサービスの友達関係)を結ばず、1つのアカウントと関係を結ぶだけでも、必要に応じて応対者のうち少なくとも1人と会話することができるようになる。このとき、応対者が必ずしも実際の人間である必要はない。例えば、第1グループのユーザのうち少なくとも1人は、サーバ150またはアカウントと関連するサーバから提供される人工知能キャラクタ(一例として、ボット)に代替されてもよい。この場合、人工知能キャラクタは、サーバ150またはアカウントと関連するサーバから提供される仮想機器を通じて通信セッションに接続してもよい。ボットのような人工知能キャラクタを利用してインスタントメッセージングサービスの会話を提供する技術は周知の事項であるため、具体的な説明は省略する。
【0063】
図10は、本発明の一実施形態における、電子機器のプロセッサが含むことのできる構成要素の例を示した図であり、
図11は、本発明の一実施形態における、電子機器が実行することのできる方法の例を示したフローチャートである。
【0064】
図10に示すように、電子機器1(110)のプロセッサ212は、接続制御部1010、表示制御部1020、および送受信制御部1030を含んでよい。このようなプロセッサ212の構成要素は、
図11の方法に含まれる段階1110乃至1140を実行するように電子機器1110を制御してもよく、このような制御のために、メモリ211に含まれるオペレーティングシステムと少なくとも1つのプログラムコードを実行するように実現されてもよい。ここで、少なくとも1つのプログラムコードは、電子機器1(110)にインストールされ、駆動されて、電子機器1(110)にサーバ(一例として、サーバ150)のサービスを提供するアプリケーションのコードを含んでもよい。
【0065】
段階1110で、電子機器1(110)は、アプリケーションの制御に従って、インスタントメッセージングサービスのアカウントに対して設定された通信セッションに接続してよい。このために、接続制御部1010は、アプリケーションのコードに従って電子機器1(110)が段階1110を実行するように電子機器1(110)を制御してもよい。電子機器1(110)のユーザは、上述した第2グループのユーザであってもよく、第2グループのユーザが通信セッションに接続するということは、アカウントのチャットルームに参加することを意味してもよい。ここで、通信セッションは、インスタントメッセージングサービスを提供するサーバによってインスタントメッセージングサービスのアカウントに対して設定されてもよい。
【0066】
段階1120で、電子機器1(110)は、通信セッションを通じて送受信されるメッセージを前記通信セッションに対応するチャットルームに表示してよい。このために、表示制御部1020は、アプリケーションのコードに従って電子機器1(110)が段階1120を実行するように電子機器1(110)を制御してもよい。
【0067】
段階1130で、電子機器1(110)は、通信セッションに接続した第1グループのユーザのうち電子機器1(110)のユーザのために割り当てられた少なくとも1人のユーザの電子機器と、通信セッション内に設定される仮想の通信セッションを通じてメッセージを送受信してよい。このために、送受信制御部1030は、アプリケーションのコードに従って電子機器1(110)が段階1130を実行するように電子機器1(110)を制御してもよい。仮想の通信セッションの設定および仮想の通信セッションを通じたメッセージの送受信については既に詳しく説明しているため、繰り返される説明は省略する。
【0068】
段階1140で、電子機器1(110)は、通信セッションに対応するチャットルームを仮想の通信セッションに対応するチャットルームに切り替え、切り替わったチャットルームに、仮想の通信セッションを通じて送受信されたメッセージを表示してよい。このために、表示制御部1020は、アプリケーションのコードに従って電子機器1(110)が段階1140を実行するように電子機器1(110)を制御してもよい。仮想の通信セッションがインスタントメッセージングサービスのアカウントに対するチャットルームではない、アプリケーションによって電子機器1(110)で生成される別のチャットルームに表示されることは、上述したとおりである。
【0070】
図12は、本発明の一実施形態における、アカウントに関する情報が表示された電子機器の画面例を示した図である。
図12は、ユーザの電子機器1200の例を示しており、電子機器1200の画面は、ユーザがインスタントメッセージングサービスにおいてキーワード「銀行業務相談」でアカウントを検索し、検索結果としてキーワードに対応するアカウントが表示された例を示している。このように、アカウントは、一例として、ユーザの明示的条件(キーワード入力またはカテゴリ選択など)によって選別されてユーザに提供されてもよい。他の例として、アカウントは、広報性目的としてターゲットになったユーザに提供され、ユーザの電子機器に表示されてもよい。
【0071】
ユーザが表示されたアカウントを選択した場合、該当のアカウントとの通信セッションに接続され、アカウントのグループチャットルームにユーザが参加できるようになる。
図12は、ユーザがアカウント「**銀行お客様相談」を選択(タッチスクリーン上のアカウントが表示された領域をタップ)することにより、
図6を参照しながら説明した第1画面610のようにユーザがグループチャットルームに参加し、電子機器1200の画面がグループチャットルームに切り替わる例を示している。
【0072】
このように、本発明の実施形態によると、1つのアカウントに対する通信セッションにおいて、アカウントのための第1グループのユーザと、前記アカウントとの会話のために前記通信セッションに接続する第2グループのユーザとを前記通信セッションにすべて参加させ、第1グループのユーザを第2グループのユーザに割り当て、第2グループのユーザに割り当てられた第1グループのユーザとの仮想の通信セッションを提供することにより、第2グループのユーザが割り当てられた第1グループのユーザとは別の、そして仮想の通信セッションを通じてメッセージを送受信することができる。
【0073】
上述した装置は、ハードウェア構成要素、ソフトウェア構成要素、および/またはハードウェア構成要素とソフトウェア構成要素との組み合わせによって実現されてもよい。例えば、実施形態で説明された装置および構成要素は、例えば、プロセッサ、コントローラ、ALU(arithmetic logic unit)、デジタル信号プロセッサ(digital signal processor)、マイクロコンピュータ、FPGA(field programmable gate array)、PLU(programmable logic unit)、マイクロプロセッサ、または命令を実行して応答することができる様々な装置のように、1つ以上の汎用コンピュータまたは特殊目的コンピュータを利用して実現されてもよい。処理装置は、オペレーティングシステム(OS)および前記OS上で実行される1つ以上のソフトウェアアプリケーションを実行してよい。また、処理装置は、ソフトウェアの実行に応答し、データにアクセスし、データを格納、操作、処理および生成してもよい。理解の便宜のために、1つの処理装置が使用されるとして説明される場合もあるが、当業者は、処理装置が複数個の処理要素(processing element)および/または複数種類の処理要素を含んでもよいことが理解できるであろう。例えば、処理装置は、複数個のプロセッサまたは1つのプロセッサおよび1つのコントローラを含んでもよい。また、並列プロセッサ(parallel processor)のような、他の処理構成(processing configuration)も可能である。
【0074】
ソフトウェアは、コンピュータプログラム、コード、命令、またはこれらのうちの1つ以上の組み合わせを含んでもよく、所望のとおりに動作するように処理装置を構成したり、独立的または集合的に(collectively)処理装置に命令したりしてよい。ソフトウェアおよび/またはデータは、処理装置に基づいて解釈されたり、処理装置に命令またはデータを提供するために、いかなる種類の機械、コンポーネント、物理装置、仮想装置(virtual equipment)、コンピュータ格納媒体または装置、または送信される信号波(signal wave)に永久的または一時的に具現化(embody)されたりしてもよい。ソフトウェアは、ネットワークによって接続されたコンピュータシステム上に分散され、分散された状態で格納され、実行されてもよい。ソフトウェアおよびデータは、1つ以上のコンピュータ読取可能な記録媒体に格納されてもよい。
【0075】
実施形態に係る方法は、多様なコンピュータ手段によって実行可能なプログラム命令の形態で実現されてコンピュータ読取可能な媒体に記録されてもよい。前記コンピュータ読取可能な媒体は、プログラム命令、データファイル、データ構造などを単独でまたは組み合わせとして含んでもよい。前記媒体に記録されるプログラム命令は、実施形態のために特別に設計されて構成されたものであってもよいし、コンピュータソフトウェアの当業者に公知な使用可能なものであってもよい。コンピュータ読取可能な記録媒体の例としては、ハードディスク、フロッピーディスクおよび磁気テープのような磁気媒体、CD−ROM、DVDのような光媒体、フロプティカルディスク(floptical disk)のような光磁気媒体およびROM、RAM、フラッシュメモリなどのようなプログラム命令を格納して実行するように特別に構成されたハードウェア装置が含まれる。プログラム命令の例は、コンパイラによって生成されるもののような機械語コードだけではなく、インタプリタなどを使用してコンピュータによって実行される高級言語コードを含む。上述したハードウェア装置は、実施形態の動作を実行するために1つ以上のソフトウェアモジュールとして動作するように構成されてもよく、その逆も同じである。
【0076】
以上のように、実施形態を限定された実施形態と図面に基づいて説明したが、当業者であれば、上述した記載から多様な修正および変形が可能である。例えば、説明された技術を、説明された方法とは異なる順序で実行し、かつ/あるいは、説明されたシステム、構造、装置、回路などの構成要素を、説明された方法とは異なる形態で結合または組み合わせて、他の構成要素または均等物によって代替または置換しても、適切な結果を達成することができる。
【0077】
したがって、異なる実施形態であっても、特許請求の範囲と均等なものであれば、添付される特許請求の範囲に属する。