説明

転送エラー復帰技術

転送エラー復帰に関する技術が記載されている。システムは、第1の発呼端末と呼システム・リソースの間の第1の呼セッションに関するコンテキスト情報を記録し、そのコンテキスト情報をコンテキスト識別子とともにコンテキスト・テーブルに格納するように動作するコンテキスト生成モジュールを備えることができる。システムは、そのコンテキスト生成モジュールに接続され、コンテキスト識別子を有する転送エラー・コンテキスト情報を生成するように動作する、転送エラー・コンテキスト・モジュールを備えることができる。システムは、転送エラー・コンテキスト・モジュールに接続され、転送失敗イベントの場合に使用するために転送エラー・コンテキスト情報を第1の発呼端末に送信するように動作する、呼転送モジュールを備えることができる。他の実施形態も説明され、特許請求の範囲に記載されている。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、転送エラー復帰技術に関する。
【背景技術】
【0002】
テレフォニーにおいて、自動着信呼分配装置(ACD)とは、着呼を、コールセンター・エージェント向けの特定の端末群に配分する装置またはシステムである。ACDは、多くの場合、CTI(computer telephony integration)システムの一部である。
【0003】
着呼のルーティングは、ACDシステムのタスクである。ACDシステムは、多くの場合、特定の者と話す必要はないが複数の者のうち何れかの者(例えば、カスタマ・サービスの担当者)からの支援を出来るだけ早く必要とする発呼者からの大量の着呼を扱うオフィスに見られる。
【0004】
ACDシステムは、一般に、端末向けおよびスイッチ向けのハードウェア、電話回線、およびルーティング戦略向けのソフトウェアを含む。ルーティング戦略とは、システム内部で呼がどのように処理されるかをACDに伝える1組のルール・ベースの命令である。一般に、これは、所与の着信に対応するのに最も適した従業員を決定するアルゴリズムである。この照合を支援するため、顧客が発呼している理由を発見するための追加のデータが求められ、検討されている。ACDシステムでは、発呼者の発信者番号通知サービス(caller identification:CID)または自動番号識別機能(automatic numbering identification:ANI)を使用する場合もある。ACDシステムでは、呼の理由を確かめるため双方向音声応答(interactive voice response:IVR)システムを使用することが多い。
【0005】
人間の介入の必要性が減少するため、ACDシステムの自動化された利便性により会社または企業のコストを劇的に削減することができる。しかし、顧客を扱うことに対するアルゴリズム的なアプローチでは、ルーティング戦略の限界により顧客が求める望ましい結果が得られなかった場合に、顧客サービスを危険にさらすこととなるおそれがある。従って、ACDシステムとその基盤技術の改良が、顧客サービスの改善と顧客満足をもたらす結果となろう。
【先行技術文献】
【非特許文献】
【0006】
【非特許文献1】IETF RFC 3515 titled “The Session Initiation Protocol (SIP) Refer Method”、April 2003(the “SIP Refer Specification”)ならびにその後継、改訂版および変形
【発明の概要】
【0007】
種々の実施形態は、一般に、通信システムに関する。いくつかの実施形態は、具体的には、着呼を1群の選択された発呼端末に自動的に送るためのACDシステムを有するコールセンターなどの通信システムに関する。ACDシステムは、転送エラー・コンテキスト(TEC)コンポーネントの一部として実装される様々な転送エラー復帰技術を利用して、外部発呼端末が、ACDシステムによってサービスされる様々な内部発呼端末に転送される場合の転送エラーを削減することができる。
【0008】
例えば、1つの実施形態では、ACDシステムは、コンテキスト生成モジュール、TECモジュール、および呼転送モジュールを含むことができる。コンテキスト生成モジュールは、第1の発呼端末と呼システムのリソースの間の第1の呼セッションに関するコンテキスト情報を記録し、そのコンテキスト情報をコンテキスト識別子と共にコンテキスト・テーブルに格納するように動作する。TECモジュールは、コンテキスト識別子を有するTEC情報を生成するように動作する。呼転送モジュールは、転送失敗の場合に使用するためのTEC情報を第1の発呼端末に送信するように動作する。他の実施形態も説明され、特許請求の範囲に記載されている。
【0009】
本概要は、以下の発明を実施するための形態でさらに説明されている選択した概念を簡略化した形式で紹介するために提供するものである。本概要は、特許請求の範囲に記載されている主題事項の重要な特徴または本質的な特徴を特定することを目的とするものでも、特許請求の範囲に記載されている主題事項の範囲の決定に際して、補助として使用することを目的とするものでもない。
【図面の簡単な説明】
【0010】
【図1】ACDシステムの一実施形態を示す図である。
【図2】TECヘッダの一実施形態を示す図である。
【図3】通信システムの一実施形態を示す図である。
【図4】論理フローの一実施形態を示す図である。
【図5A】第1のメッセージ・フローの一実施形態を示す図である。
【図5B】第2のメッセージ・フローの一実施形態を示す図である。
【図6】コンピューティング・システム・アーキテクチャの一実施形態を示す図である。
【図7】製品の一実施形態を示す図である。
【発明を実施するための形態】
【0011】
種々の実施形態は、ある独立型または依存型の動作、機能またはサービスを実施するように配置構成された複数の相互接続された構造を含むことができる。この構造は、物理的な構造、論理的な構造、またはその両方の組合せを備えることができる。この物理的な構造あるいは論理的な構造は、ハードウェア要素、ソフトウェア要素、またはその両方の組合せを用いて実装される。しかし、具体的なハードウェア要素またはソフトウェア要素と関連させた実施形態の記載は、例を意味するものであって、限定ではない。実施形態を実際に実施するためのハードウェア要素またはソフトウェア要素は、所望の計算速度、電力レベル、耐熱性、処理サイクル予算(processing cycle budget)、入力データ速度、出力データ速度、メモリ・リソース、データ・バス速度、および他の設計上または性能上の制約など、幾つかの外的要因に応じてその使用が決定される。さらに、物理的な構造または論理的な構造は、その構造間で情報を電子信号またはメッセージの形で通信するための対応する物理的な接続または論理的な接続を有してもよい。この接続は、情報または具体的な構造として適切な有線接続および/または無線接続を備えてもよい。「一実施形態」または「ある実施形態」への言及は、その実施形態に関して説明した具体的な特徴、構造、または特性が少なくとも1つの実施形態に含まれることを意味することに留意されたい。本明細書の種々の場所で「一実施形態では」という語句が現れるが、これは必ずしも全て同じ実施形態を言及しない。
【0012】
種々の実施形態は、自動発呼システム向けの転送エラー復帰技術に関する。ACDシステムなどの自動発呼システムは、一般に、例えば顧客サービス業務向けとして、外部発呼端末からの着呼をACDシステムがサービスする種々の内部発呼端末に転送する必要がある。転送エラー復帰技術により、ACDシステムは転送失敗イベントから復帰することができる。転送失敗イベントは、対象の発呼端末への呼転送が完了しないというイベントを含む。転送失敗イベントの例には、対象の発呼端末からのビジー信号、対象の発呼端末の呼接続完了失敗、対象の発呼端末との呼接続の完了およびボイスメールまたは統一メッセージング・システムへの到達、意図しない発呼端末との呼接続の完了、等を含みうるが、これらに限らない。
【0013】
転送エラー復帰技術では、ACDシステムおよび転送された発呼端末は、ACDシステムの複雑度を軽減するように、転送失敗イベントから復帰することができる。また、転送エラー復帰技術により、転送された発呼端末の操作者が発呼プロセス全体をACDシステムで再起動する必要性が軽減または排除される。その結果、転送エラー復帰技術により、操作者、装置またはネットワークの値ごろ感、スケーラビリティ、モジュール性、または拡張性を改善することができる。
【0014】
図1は、ACDシステム100のブロック図を示す。ACDシステム100は、コールセンター・エージェント向けの特定の端末群に着呼を割り振ることができる。ACDシステム100は、多くの場合、CTIシステムの一部として実装される。例えば、ACDシステム100は、会社または企業にサービスを提供するコールセンター向けのCTIシステムの一部を含んでもよい。
【0015】
種々の実施形態において、ACDシステム100は、パケット交換網および/または回路交換ネットワークなどの種々のタイプのネットワーク間で呼を開始または終了できる、様々なコンポーネント、装置またはシステムを含むことができる。パケット交換網の場合は、ACDシステムはIETF(Internet Engineering Task Force)標準組織が定義し推奨する、IETFのRFCシリーズ3261、3265、3853、4320ならびにその後継、改訂版および変形により定義されるSIP(Session Initiation Protocol)など、1つまたは複数のVoIPシグナリング・プロトコルを用いてVoIP(Voice Over Internet Protocol)を確立することができる。一般に、SIPシグナリング・プロトコルは、1つまたは複数の参加者とのセッションを作成し、修正し、終了するためのアプリケーション層のコントロールおよび/またはシグナリング・プロトコルである。これらのセッションには、IP(Internet Protocol)通話、マルチメディア配信、およびマルチメディア会議が含まれる。さらに、IETF RFC3550ならびにその後継、改訂版および変形によって定義されたRTP(Real−time Transport Protocol)およびRTCP(Real−time Transport Control Protocol)などのデータ・フォーマット・プロトコルまたはメディア・フォーマット・プロトコルを用いて、VoIP呼を確立することができる。RTP/RTCP標準は、マルチメディア情報(例えば、オーディオおよびビデオ)をパケット交換網上で送達するための統一または標準化されたパケット・フォーマットを定義する。いくつかの実施形態では、限定ではなく例としてSIPおよびRTP/RTCPプロトコルを利用してもよいが、所与の実装形態で望ましいように他のVoIPプロトコルを使用してもよいことは理解されよう。
【0016】
上述した一般的なVoIPプロトコルに加え、ACDシステム100は、非特許文献1などの様々な呼転送プロトコルを具体的に実装することができる。SIP参照仕様(SIP Refer Specification)とは、受信者がリクエスト内に提供されたリソースを参照することを要求するSIP拡張である。SIP参照仕様は、REFERを送信する者に参照されたリクエストの結果を通知できるようにする機構を提供する。この機構を使用して、呼転送を含む多くの応用例を可能とすることができる。いくつかの実施形態では限定ではなく例としてSIP参照仕様に言及するが、転送エラー復帰技術を、他の転送機構または転送技術に同様に適用することができる。
【0017】
図1に図示した実施形態において、ACDシステム100はACDシステムの各部分を含む。この部分には、外部発呼端末とIVRモジュール120に通信可能に接続された呼制御モジュール110を含む。IVRモジュール120をTECコンポーネント130に通信可能に接続することができる。IVRモジュール120とTECコンポーネント130をコンテキスト・データベース134に通信可能に接続することができる。TECコンポーネント130はTECモジュール142に通信可能に接続されたコンテキスト生成モジュール132を含む。TECコンポーネント130を呼転送モジュール150に通信可能に接続することができる。呼転送モジュール150を呼制御モジュール110に通信可能に接続することができ、外部発呼端末を呼制御モジュール110に接続することができる。
【0018】
図1に示すACDシステム100の実施形態は一定のトポロジで配置した一定の要素を含むが、ACDシステム100は別のトポロジで配置した、それより多いかまたは少ない要素を含んでもよく、これが依然として当該実施形態の範囲内にあることは理解されよう。さらに、ACDシステム100の種々の要素を、互いの間の動作を調整するための情報を交換するために使用できる種々の信号線によって接続することができる。この情報を、種々の信号線に割り当てられた信号として実装することができる。係る割り当てでは、各メッセージが信号である。しかし、さらなる実施形態では、データ・メッセージを代替的に使用することもできる。係るデータ・メッセージを、種々の接続を通じて送信することができる。例示的な接続には、パラレル・インターフェース、シリアル・インタフェース、およびバス・インタフェースが含まれる。
【0019】
ACDシステム100は呼制御モジュール110を含むことができる。一般に、呼制御モジュール110を、ACDシステム100の呼フロー動作を管理するように配置構成することができる。テレフォニーでは、呼制御とは、その中心的な機能を提供する電話交換機内のソフトウェアを指す。呼制御モジュール110は、宛先指定情報を解読し、通話を一方のエンド・ポイントから別のエンド・ポイントへと送る。呼制御モジュール110はまた、標準的な交換動作をユーザのニーズに適合させるために使用できる機能を生成する。係る機能の一般的な例として、呼転送、通話中着信、自動転送、着信拒否、等がある。
【0020】
ACDシステム100は、IVRモジュール120を含むことができる。IVRモジュール120は、一般に、発呼者とマシン・インタフェースの間の対話を管理するように配置構成された呼システム・リソースを含むことができる。テレフォニーでは、IVRは、コンピュータが通常の通話を用いて音声やタッチ・トーンを検出できるようにする電話技術を指す。IVRモジュール120は、発呼者にその後の対処方法をさらに指示するために、事前に記録された音声または動的に生成された音声で応答することができる。IVRモジュール120を使用して、インタフェースを一連の簡単なメニュー選択へ分類できるほぼすべての機能を制御することができる。発呼者は、IVRモジュール120が応答する電話番号をダイヤルする。IVRモジュール120は、DNIS(Dialed Number Information Service)に結合されたアプリケーションを実行する。アプリケーションの一部として、事前に録音された音声ファイルまたは動的に生成されたTTS(Text to Speech)音声により、発呼者が利用可能なオプションが説明される。発呼者には、DTMF(Dual−Tone Multi−Frequency)トーンまたは発せられた単語を用いてオプションを選択するための選択肢が与えられる。音声認識は通常、より複雑なトランザクションを実行するために使用され、アプリケーションのメニュー構造を簡素化する。
【0021】
ACDシステム100は、呼転送モジュール150を含むことができる。呼転送モジュール150を、一般に、ACDシステム100向けの呼転送動作を管理するように配置構成することができる。別々のモジュールとして示したが、呼転送モジュール150によって提供される動作、機能またはサービスを、呼制御モジュール110の統合された部分として実装できることは理解されよう。実施形態はこの文脈において限定されない。
【0022】
呼転送は、必要な場所にダイヤルすることにより、ユーザが既存の呼を別の電話または中継台に移動させることを可能にする通信機構である。転送された呼は、通知されるか、または通知されないかのいずれかである。転送された呼が通知される場合、所望の通話相手または内線に、来つつある呼が通知される。これは、一般に、発呼者を保留し所望の通話相手または内線にダイヤルすることで行われる。その後、その通話相手または内線が通知を受け、その通話相手または内線がその呼を受け入れる場合は、その呼がその通話相手または内線に転送される。通知転送に対して一般に使用される他の用語には、拡張転送およびウォーム転送が含まれる。他方では、非通知転送は、来つつある呼を所望の通話相手または内線に通知せずに転送される。この転送は自動的にその電話線に転送される。非通知転送に対して一般に使用される他の用語には、コールド転送、ブラインド転送が含まれる。
【0023】
双方とも可能であるが、呼制御モジュール110とIVRモジュール120は、一般に、ACDシステム100の自動化された性質を促進するために非通知転送を実行する。従って、IVRモジュール120が発呼者から情報を受け取り、その情報に基づいて呼を所望の通知相手の特定の発呼端末に転送するように呼制御モジュール110に要求する場合が生じうる。このため、所望の通話相手が応対できず、転送失敗イベントに至る場合がある。従来の呼システムでは、これにより発呼者が会社の代表番号にリダイヤルし、IVRモジュール120に再接続し、IVRモジュール120との別の対話を行い、同じまたは異なる通話相手に接続してサービスを取得しなければならないこととなりうる。
【0024】
呼転送の問題は、呼転送動作が首尾よく完了するまでACDシステム100の呼制御要素をシグナリング経路内に保つことによって解決されることがある。例えば、ACDシステム100は、SIP呼の両端に対してユーザ・エージェントとして振舞うためにB2BUA(back−to−back user agent)を実装することができる。B2BUAは転送されている呼の状態を追跡し、呼の転送者(例として転送を開始する通話相手)に任意の変化を通知することができる。しかしながら、B2BUAを使用すると、呼制御動作の複雑さが増し、呼転送動作が完了するまでその呼転送動作を監視し追跡するためのリソースを消費し、それにより、他の着呼に利用可能なリソースが減少する。これは、ACDシステム100が比較的大量の着呼をサービスする適用例に対しては、特に非効率的でありうる。
【0025】
これらおよび他の問題を解決するために、ACDシステム100は、B2BUAソリューションの場合のようにACDシステム100が専ら呼転送動作の監視にリソースを使用する必要性を軽減または排除する種々の転送エラー復帰技術を実装することができる。転送者は、呼転送動作が受け入れられた後に、コールレグを終了させることができる。さらに、転送された者は、常に呼に対する完全な制御を維持する。これらおよび他の利点は、例えば、TECコンポーネント130を用いて実現することができる。
【0026】
一般に、TECコンポーネント130を、転送失敗の場合に発呼者とACDシステム100が復帰できるようにする種々の転送エラー復帰技術を実装するように配置構成することができる。TECコンポーネント130は、発呼者とIVRモジュール120などの呼システム・リソースの間の対話に関するコンテキスト情報を記録し、記憶することができる。TECコンポーネント130はまた、コンテキスト識別子と称するコンテキスト情報への参照を含む、TEC情報を有するTECヘッダを生成することができる。次に、TECコンポーネント130は、転送失敗イベントに自動的に応答する際に使用するために、TEC情報を発呼者の発呼端末に呼転送モジュール150を介して提供することができる。
【0027】
TECコンポーネント130を、発呼者とIVRモジュール120などの呼システム・リソースの間の対話に関するコンテキスト情報を記録し、記憶するように構成することができる。本明細書で使用する「コンテキスト情報」という用語は、所与のタスクを実行している間の装置またはシステムの状態または状況に関する任意の情報を指すことができる。一般に、装置またはシステムがタスクを実行するときは常に、装置またはシステムは、リソースを割り当て、そのタスクに対して一般に一意であるデータを生成する。タスクが終了する前に割り込まれた場合は、タスクを、再度最初から開始する必要があるかもしれない。その結果、割り込みの前に行われた作業が全く失われることとなりうる。コンテキスト情報を記録し格納することにより、ある時点でタスクに割り込み、そのタスク全体をリスタートする必要なしに将来の時点で再開することができる。コンテキスト情報を保存することで、装置またはシステムは、タスクが割り込まれてそのタスクに対する作業を再開するときの状態または状況を再生成することができる。この場合、TECコンポーネント130は、呼転送動作の前に呼セッションに関するコンテキスト情報を記録し記憶することができ、それにより、ACDシステム100は、転送失敗の場合に後続の呼セッションに関するコンテキストを再生成することができる。コンテキスト情報の例には、限定ではなく、呼セッションの詳細、クライアント、装置、装置の機能、通話者の間の通信、呼接続、呼セッション、呼履歴、呼転送に関する以前の対象の発呼端末、エラー情報、発呼者の嗜好、発呼者のルール、発呼者の位置、発呼者の識別、生態情報、発呼者の個人情報(例えば、名前、住所、電話番号、等)、媒体の種別、媒体のパラメータ、電話番号の優先順位、キーワード、アプリケーション、アプリケーション・データ、等に関する任意の情報を含めることができる。本実施形態はこの文脈において限定されない。
【0028】
TECコンポーネント130を、コンテキスト情報に関するコンテキスト識別子を含むTEC情報144を生成するように配置構成することができる。本明細書で使用する「TEC情報」という用語は、転送失敗の場合の転送エラー復帰動作を可能とするのに適した任意の情報を指すことができる。より具体的には、TEC情報144により、発呼者の発呼端末が、転送失敗イベントに応答して、IVRモジュール120などの呼システム・リソースに自動的に再接続できるようにすることができる。さらに、TEC情報144はコンテキスト識別子を含むことができ、このコンテキスト識別子により、ACDシステム100は、発呼者との以前の呼セッションからコンテキスト情報を取り出し、後続の呼セッションにおける発呼者に関するコンテキストを生成して、以前に実施したデータ収集動作を削減または排除することができる。
【0029】
一般的な動作では、呼制御モジュール110は着呼102−1を第1の発呼端末から受信することができる。呼制御モジュール110は呼フローを管理し、着呼102−1をIVRモジュール120などの呼システム・リソースに接続する。これにより、第1の発呼端末とIVRモジュール120の間の第1の呼セッションに対する第1の呼接続が確立される。
【0030】
IVRモジュール120は、音声プロンプトを第1の発呼端末に送信し、第1の発呼端末から操作者の指令を受け取ることによって、第1の呼セッションに対する対話を管理するように動作する。IVRモジュール120は、DNISにダイヤルされる番号に結び付けられたアプリケーションを実行する。アプリケーションの一部として、事前に記録した音声ファイルまたは動的に生成されたTTS音声により、発呼者が利用可能な様々なオプションが説明される。発呼者には、DTMFトーンまたは発せられた単語を用いてオプションを選択するための選択肢が与えられる。音声認識は通常、より複雑なトランザクションを実行するために使用され、アプリケーションのメニュー構造を簡素化する。IVRモジュール120が転送対象の発呼端末を決定するために発呼者から十分な情報を収集すると、IVRモジュール120は転送要求を呼制御モジュール110に送信することができる。
【0031】
第1の発呼端末とIVRモジュール120の間の第1の呼セッション中に、TECコンポーネント130は、TEC情報144を生成するためのTEC動作を開始することができる。図1に示した実施形態では、TECコンポーネント130はコンテキスト生成モジュール132とTECモジュール142を備えることができる。
【0032】
コンテキスト生成モジュール132を、第1の発呼端末とIVRモジュール120などの呼システム・リソースの間の第1の呼セッションに関するコンテキスト情報140−1〜nを記録するように配置構成することができる。コンテキスト情報140−1〜nには、とりわけ、例えば、発呼者に提供された音声プロンプト、およびその音声プロンプトに応答して発呼者によって与えられた応答を含めることができる。コンテキスト情報140−1〜nには、さらに、アカウント番号、優先度情報、発呼者の嗜好などの発呼者の情報を有する発呼者のレコードまたはプロフィールなど、発呼者に関する情報を含めることができる。これらおよび他種のコンテキスト情報を使用して、呼セッションに関する一般的なコンテキストのスナップショット、特に、IVRモジュールが転送動作を開始する前に発呼者とIVRモジュール120が到達した対話内のポイントのスナップショットを確立することができる。コンテキスト生成モジュール132は、対応するコンテキスト識別子138−1〜mをそれぞれが有するコンテキスト情報140−1〜nを記憶することができ、コンテキスト識別子138−1〜mは、一体となってコンテキスト・データベース134のコンテキスト・テーブル133においてコンテキスト・レコード136−1〜pを形成する。
【0033】
TECモジュール142を、とりわけコンテキスト識別子138−1〜mを有するTEC情報144を生成するように配置構成することができる。TEC情報144には、とりわけ、転送エラー・イベント後に参照すべきリソース識別子、転送エラー・イベントを定義するエラー・コード、以前の呼セッションからのコンテキスト情報に関するコンテキスト識別子、等を含めることができる。TECモジュール142は、TEC情報144を呼転送モジュール150に転送することができる。
【0034】
呼転送モジュール150はTEC情報を受け取り、転送失敗の場合に使用するためにTEC情報144を第1の発呼端末に送信する。前述のように、IVRモジュール120が転送対象の発呼端末を決定するために十分な情報を発呼者から収集すると、IVRモジュール120は転送要求を呼制御モジュール110に送信することができる。呼制御モジュール110は、転送要求をIVRモジュール120から受け取る。呼制御モジュール110は、着呼102−1の転送に備えて、転送対象の発呼端末の番号検索などの、様々な呼制御動作を実施することができる。呼制御モジュール110は、制御指令を呼転送モジュール150に送信する。制御指令には、例えば、第1の発呼端末を第2の発呼端末へ転送する転送命令を含めることができる。呼転送モジュール150は、転送命令を呼制御モジュール110から受け取り、TEC情報144をTECモジュール142から受け取り、転送要求ごとに第1の発呼端末を第2の発呼端末に転送する。
【0035】
呼制御モジュール150は転送命令を呼制御モジュール110から受け取り、TEC情報144をTECモジュール142から受け取り、転送メッセージを第1の発呼端末に送信する。幾つかの実施形態では、転送メッセージには、SIP参照仕様によって定義されるREFERメッセージ104−1を含めることができる。REFERメッセージ104−1には、とりわけ、TEC情報144を含めることができる。具体的には、TEC情報144には、図2を参照してより詳細に説明するTECヘッダを含めることができる。
【0036】
図2は、データ構造200の一実施形態を示す。データ構造200は、例えば、REFERメッセージ104を含むことができる。REFERメッセージ104は、ACDシステム100などの自動呼システムに対する呼を転送するための転送機構を含むことができる。REFERメッセージ104は、IETF RFC 3261によって定義されるSIPメソッドである。REFERメッセージ104は、Request−URI(Uniform Resource Identifier)によって特定される受信者が、リクエスト内で提供されたコンタクト情報を用いて第三者に接続することを示す。Refer−To URIによって特定されるリソースは、そのURIタイプに対する通常の機構を用いて接続される。例えば、URIが、(例えば、method=INVITE URIパラメータを用いて)INVITEを示すSIPのURIである場合は、SIPのUAは、SIP標準で定義されたINVITEを送信するための通常のルールの全てを用いて新しいINVITEを発行するであろう。
【0037】
図2に示す実施形態では、REFERメッセージ104は、ヘッダへの参照(Refer To Header:RTH)220を含むことができる。RTH220は、SIP標準によって定義されるリクエスト・ヘッダ(request−header)である。RTH220は、一般に、REFERリクエストにおいてのみ現れる。RTH220は、次のフォーマットに従って参照URL(Uniform Resource Locator)を提供する。
【0038】
【数1】

【0039】
URLは、リソースを特定することに加えてその主要なアクセス機構またはネットワーク位置を記述することによって、リソースの表現に作用またはその表現を取得するための技法を提供するURIである。
【0040】
RTH220に加えて、REFERメッセージ104はTECヘッダ(TCH)230を含むことができる。TCH230は、TEC情報144に対するデータ構造を含むことができる。図2に示した実施形態では、TCH230は、1つまたは複数のリソース識別子232、1つまたは複数のエラー応答コード234、および1つまたは複数のコンテキスト識別子138−1〜mを含むことができる。TCH230は、転送エラー復帰動作において使用するのに適した他種の情報を含むことができ、本実施形態はこの文脈において限定されない。
【0041】
リソース識別子232は、転送失敗イベントに応答して呼を転送すべきリソースまたは宛先に関するコンタクト情報を表すことができる。コンタクト情報には、電話番号、ネットワーク・アドレス、MAC(Media Access Control)アドレス、電子メール(email)アドレス、SIPアドレス、URI、URL、およびリソースに関する他の任意の一意な識別子など、リソースに関する任意の種類のコンタクト情報を含めることができる。リソースには、転送エラー・イベントの前に呼転送を開始した転送者を含めて、転送エラー復帰動作を扱うのに適した任意のリソースを含めることができる。例えば、リソース識別子232は、次のように、IVRモジュール120などの、着呼に関して転送者のSIPアドレスを含むことができる。

<sip:acd@companyA.com>

別の例では、リソース識別子232は、特に転送エラー復帰動作を扱うために設計された専用呼システム・リソースを含むことができる。
【0042】
エラー応答コード234は、転送エラー復帰動作を自動的に開始する転送エラー・イベントを定義する、構成可能なエラー・ケースまたはエラー・コードのリストを含むことができる。例えば、エラー応答コード234は、次のような様々なSIPエラー・コードを含むことができる。

Resp−Codes=“4xx,5xx,6xx”

本例では、TCH230は発呼端末に、全ての400、500および600クラスのSIPエラー応答に対して呼をacd@companyA.comに転送するよう指示するであろう。エラー応答コード234は、ACDシステム100のユーザによって構成可能である。
【0043】
コンテキスト識別子138−1〜mには、TECコンポーネント130のコンテキスト・データベース134に格納したコンテキスト情報に対する1つまたは複数のコンテキスト識別子を含めることができる。コンテキスト識別子138−1〜mは任意の一意な識別子を含むことができ、その例は次の通りである。

Context=3xAB251d9e

コンテキスト識別子138−1〜mを発呼要求とともに送信して、ACDシステム110との後続の呼セッションを開始することができる。ACDシステム110はコンテキスト識別子138−1〜mを使用して、外部発呼端末との以前の呼セッションに関するコンテキスト情報を取り出し、その外部発呼端末との後続の呼セッションのために、ACDシステム110の以前の呼セッションのコンテキストを復元することができる。
【0044】
再度図1を参照すると、発呼側では、第1の発呼端末がTEC情報144を、REFERメッセージ104−1の一部を含むTCH230の形で、呼転送モジュール150から受け取ることができる。第1の発呼端末は、転送失敗イベントを検出するロジックを備えることができ、TCH230内に含まれるTEC情報144を用いて、第1の発呼端末とACDシステム100に関する呼システム・リソースの間の第2の呼セッションを開始することができる。
【0045】
ACDシステム100は、第1の発呼端末とIVRモジュール120などの呼システム・リソースの間の第2の呼セッションを確立するための着呼102−2を受け取ることができる。コンテキスト生成モジュール132はコンテキスト識別子を第1の発呼端末から受け取ることができ、コンテキスト識別子138−1〜mに対応するコンテキスト情報140−1〜nをコンテキスト・データベース134のコンテキスト・テーブル133から取り出すことができる。コンテキスト生成モジュール132は、コンテキスト情報140−1〜nをIVRモジュール120に送信することができる。あるいは、IVRモジュール120など、コンテキスト生成モジュール132とは異なるACDシステム100の他の任意の要素がコンテキスト情報140−1〜nを取り出してもよい。この場合、第2の呼セッションからのコンテキスト情報を記録し適切なコンテキスト情報140−1〜nを更新するように、コンテキスト生成モジュール132に通知する必要があるかもしれない。
【0046】
IVRモジュール120は、コンテキスト情報140−1〜nを受け取り、そのコンテキスト情報140−1〜nに基づいて、第1の発呼端末に対する後続の処理イベントを決定することができる。例えば、IVRモジュール120は、コンテキスト情報140−1〜nから、第1の発呼端末からの第1の着呼102−1を第2の発呼端末へ転送することが失敗したことを判定することができ、従って、IVRモジュール120は、第2の着呼102−2を第1の発呼端末から、第3の発呼端末などの別の内部発呼端末へ転送することを決定することができる。
【0047】
第1の呼セッションに関して、コンテキスト生成モジュール132は、第1の発呼端末とIVRモジュール120の間の第2の呼セッションからのコンテキスト情報を記録することができる。コンテキスト生成モジュール132は、次いで、第1の呼セッションからのコンテキスト情報140−1〜nを、第2の呼セッションからのコンテキスト情報で更新することができる。コンテキスト生成モジュール132は、更新されたコンテキスト情報140−1〜nを、第1の呼セッションと同じコンテキスト識別子138−1〜mを有する適切なコンテキスト・レコード136−1〜pに格納することができる。
【0048】
図3は、通信システム300の一実施形態を示す。種々の実施形態では、通信システム300を、無線通信システム、有線通信システム、またはその両方の組合せとして実装することができる。無線通信システムとして実装した場合は、通信システム300は、1つまたは複数のアンテナ、送信機、受信機、送受信機、増幅器、フィルタ、制御ロジックなど、無線通信媒体上で通信するのに適したコンポーネントおよびインタフェースを備えることができる。通信媒体の例には、RF(radio−frequency)スペクトルなど、無線スペクトルの一部を用いて実装した無線共有型媒体を含めることができる。有線通信システムとして実装した場合は、通信システム300は、I/O(input/output)アダプタ、I/Oアダプタを対応する優先通信媒体、NIC(network interface card)ディスク・コントローラ、ビデオ・コントローラ、オーディオ・コントローラ、等と接続するための物理コネクタなどの、有線通信媒体上で通信するのに適したコンポーネントおよびインタフェースを備えることができる。有線通信媒体の例には、有線、ケーブル、金属リード、PCB(printed circuit board)、バックプレーン、スイッチ・ファブリック、半導体材料、ツイスト・ペア配線、同軸ケーブル、光ファイバ、等を含めることができる。
【0049】
図3に示すように、通信システム300は、複数の発呼端末310−1〜rを含むことができる。発呼端末310−1〜rは、パケット交換網320を介してACDシステム100とVoIP呼接続を確立できる任意の物理通信装置または論理通信装置を備えることができる。発呼端末310−1〜rの例には、限定ではなく、デジタル電話、パケット電話、VoIP電話、データ通信機能付きの携帯電話、コンピュータ、パーソナル・コンピュータ、ラップトップ・コンピュータ、ハンドヘルド・コンピュータ、モバイル・コンピュータ、サーバ、ワークステーション、電化製品、ネットワーク機器、等を含めることができる。一実施形態では、例えば、発呼端末310−1〜rを、SIPユーザ・エージェントとして実装されたVoIP発呼端末として実装してもよい。しかし、本実施形態はこの文脈において限定されない。
【0050】
第1の発呼端末310−1は外部の発呼端末を表すことができ、発呼端末310−2〜rは、ACDシステム100によってサービスされる内部の発呼端末を表すことができる。第1の発呼端末310−1は、パケット交換網320を介して、ACDシステム100との第1の呼接続330−1を開始することができる。パケット交換網320の例には、インターネットを含めることができる。第1の発呼端末310−1の発呼者との対話を通じて、ACDシステム100は、呼接続330−1を第2の発呼端末310−2に転送することを決定でき、それに従ってTCH230を有するREFERメッセージ104を介して第1の発呼端末310−1に通知し、呼接続330−1を解放する。
【0051】
呼転送が失敗したと仮定すると、第1の発呼端末310−1のTECモジュール302は、転送エラー・イベントを検出し、TCH230からTEC情報144を参照する。TECモジュール302は、TEC情報144を利用してクライアント側の転送呼復帰動作を実施することができる。例えば、REFERメッセージ104−1のTCH230のリソース識別子232を用いて、TECモジュール302はACDシステム100との呼接続を自動的に確立することができる。別の例では、TECモジュール302は、ACDシステム100への接続、会社内の異なる番号に接続、転送エラー復帰動作を終了する、等のユーザ・オプションのリストを提示することができる。これにより、転送された者に対して、転送失敗イベントを扱うための所望の選択肢をプログラム的に選択する機会を提供することができる。
【0052】
第1の呼接続330−1が以前に解放されているので、第1の発呼端末310−1はACDシステム100との第2の呼接続330−2を開始し、コンテキスト識別子138−1〜mをACDシステム100に送信する。ACDシステム100のTECコンポーネント130は、コンテキスト識別子138−1〜mを受け取り、対応するコンテキスト情報140−1〜nを取り出し、第2の呼接続330−2上で通信される第2の呼セッションのために、第1の呼接続330−1の上で通信される第1の呼セッションのコンテキストを構築する。再構築したコンテキストに基づいて、ACDシステム100は、第1の発呼端末310−1を第3の発呼端末310−3に転送すると決定することができ、それに従ってTCH230を有するREFERメッセージ104を介して第1の発呼端末310−1に通知し、第2の呼接続330−2を解放する。これらの転送エラー復帰動作は、第1の発呼端末310−1が、転送失敗イベントが発生することなく内部の発呼端末310−1〜rへの接続に成功するまで、任意数のサイクルを継続することができる。
【0053】
上述した実施形態に対する動作を、1つまたは複数の論理フローを参照してさらに説明することができる。特に記載がない限り、その代表的な論理フローを、提示した順序で実行する必要はなく、またはどのような特定の順序で実行する必要もないことは理解されよう。さらに、論理フローに関して説明した種々の動作を、逐次的あるいは並列的に実行することができる。論理フローを、所与の1組の設計上および性能上の制約に対して望ましいように、説明した実施形態または代替的な要素の1つまたは複数のハードウェア要素および/またはソフトウェア要素を用いて実装することができる。例えば、論理フローを、論理装置(例えば、汎用目的または特殊目的のコンピュータ)によって実行されるロジック(例えば、コンピュータ・プログラム命令)として実装してもよい。
【0054】
図4は、論理フロー400のブロック・フロー図を示す。論理フロー400は、本明細書で説明した1つまたは複数の実施形態によって実行される動作の一部または全部を代表することができる。
【0055】
ブロック402で、論理フロー400は、第1の発呼端末との第1の呼セッションに関するコンテキスト情報を記録することができる。例えば、TECコンポーネント130のコンテキスト生成モジュール132は、第1の発呼端末310−1からの着呼102−1を検出し、または通知を受け、第1の発呼端末310−1とIVRモジュール120の間の第1の呼セッションに関するコンテキスト情報140−nを記録するための記録動作を開始することができる。
【0056】
ブロック404で、論理フロー400は、コンテキスト識別子を有するコンテキスト情報を記憶することができる。例えば、TECコンポーネント130のコンテキスト生成モジュール132は、一意なコンテキスト識別子138−1〜mを用いて、第1の発呼端末310−1との第1の呼セッションから記録されたコンテキスト情報140−1〜nを記憶することができる。コンテキスト識別子138−1〜mを使用して、第1の発呼端末310−1との将来または以降の呼セッションのためのコンテキスト情報140−1〜nを取り出すことができる。
【0057】
ブロック406で、論理フロー400は、コンテキスト識別子を有する転送エラー・コンテキスト情報を生成することができる。例えば、TECモジュール142は、TCH230を生成することができる。TECモジュール142は、コンテキスト識別子138−1〜mをコンテキスト生成モジュール132から直接、または間接的にコンテキスト・データベース134を介して受け取り、TCH230にコンテキスト識別子138−1〜mを含めることができる。TECモジュール142は、TCH230を呼転送モジュール150に送信することができる。
【0058】
ブロック408で、論理フロー400は、転送失敗イベントの場合に使用するために、転送エラー・コンテキスト情報を第1の発呼端末に送信することができる。例えば、呼転送モジュール150は、呼制御モジュール110からの転送指示を受け取り、TECモジュール142からTCHを受け取り、REFERメッセージ104−1を生成することができる。呼転送モジュール150は、REFERメッセージ104−1を第1の発呼端末310−1に送信し、着呼102−1に対する呼接続を解放することができる。
【0059】
図5Aは、第1のメッセージ・フロー500の一実施形態を示す。メッセージ・フロー500は通信システム300の種々の要素の間のメッセージ・フローを表すことができる。図5Aに示すように、発呼者アリスがA社の主番号に発呼し、A社のACDシステム100がその呼を受け入れるとする。矢印502によって示すINVITEメッセージ(例えば、main−number@companyA.com)を送信することによって、アリスは発呼端末310−1を使用してパケット交換網320を介したACDシステム100との第1の呼接続330−1を開始することができる。ACDシステム100は、INVITEメッセージを受け取り、矢印504で示したように200 OKメッセージを発呼端末310−1に送信する。発呼端末310−1は、矢印506で示したようにACKメッセージを送信し、第1の呼接続330−1が確立される。呼接続330−1に対するエンド・ポイントは、ACDシステム100のIVRモジュール120を含むことができる。
【0060】
第1の発呼端末310−1の発呼者との対話を通して、ブロック508で、IVRモジュール120は、呼接続330−1を第2の発呼端末310−2にいるボブに転送することを決定する。それに従って、矢印510で示したようにREFERメッセージ104−1を第1の発呼端末310−1に送信することによって、ACDシステム100は第1の発呼端末310−1に通知する。REFERメッセージは、発呼端末310−2とTCH230に関するリソース識別子を有するRTH220を含むことができる。矢印512で示したように、発呼端末310−1は、202 ACCEPTEDメッセージをACDシステム100に送信する。矢印514で示したようにBYEメッセージを発呼端末310−1に送信することによって、ACDシステム100は呼接続330−1を解放する。発呼端末310−1は、矢印516で示したように200 OKメッセージをACDシステム100に送信することによって、呼の解放を承諾する。
【0061】
発呼端末310−1は、矢印518で示したようにINVITEメッセージ(例えば、bob@companyA.com)を送信することによって、発呼端末310−2との新しい呼を開始する。現在ボブが発呼端末310−2を用いて通話中であるとする。この場合、発呼端末310−2は、矢印520で示したように486 BUSYメッセージを発呼端末310−1に送信する。発呼端末310−1は486 BUSYメッセージを受け取り、発呼端末310−1のTECモジュール302は、486 BUSYコードとTCH230からのエラー・コードと比較する。それらが一致する場合、発呼端末310−1は、発呼端末310−2でのボブとの転送失敗イベントを検出する。発呼端末310−1は、矢印522で示したようにACKメッセージを発呼端末310−2に送信する。
【0062】
図5Bはメッセージ・フロー500の続きを示す。図5Bに示すように、エラー・コード486はエラー応答コード234の一部であるため、発呼端末310−1は、矢印522で示すようにコンテキスト識別子138−1〜mを有する別のINVITEメッセージ(例えば、main−number@companyA.com)をACDシステム100へ送信することによって、ACDシステム100との第2の呼接続330−2を自動的に開始する。矢印524で示したように、ACDシステム100は、200 OKメッセージを発呼端末310−1に送信する。矢印526で示したように、発呼端末310−1は、ACKメッセージをACDシステム100に送信する。ブロック527で、ACDシステム100は、コンテキスト情報を取り出す。取り出したコンテキスト情報により、IVRモジュール120によって提供されたDTMFベースのメニュー内の位置などの、呼接続330−1上の第1の呼セッションに対する元の呼コンテキストを復元することができる。その結果、アリスはIVRモジュール120との対話を自動化スクリプトの最初から開始しなければならないことを回避することができる。次に、ブロック528で、ACDシステム100のIVRモジュール120は、ブロック528で取り出したコンテキスト情報に基づいて、呼接続330−2を第3の発呼端末310−3のメアリへ転送する新たな決定を行う。
【0063】
図5Aに示されているメッセージ・フロー500に関して、ACDシステム100は、対象の発呼端末310−3のメアリへの転送をアリスに通知し、呼接続330−2を解放する。これを、矢印510、512、514および516のそれぞれに関連して説明されるメッセージと同様である、矢印530、532、534および536に関連して説明されるメッセージを用いて実施することができる。注目すべき違いは、発呼端末310−2ではなく発呼端末310−3に対するリソース識別子を有するRTH220を含むREFERメッセージ104−2が送信され、TCH230がアップデートされたコンテキスト識別子138−1〜mを含むことである。
【0064】
発呼端末310−1は、矢印538で示したようにINVITEメッセージ(例えば、mary@companyA.com)を送信することによって、発呼端末310−3との新しい呼を開始する。メアリが対応可能であり、その呼に応答するとする。発呼端末310−3は、INVITEメッセージを受け取り、矢印540で示したように200 OKメッセージを発呼端末310−1に送信する。発呼端末310−1は、矢印542で示したようにACKメッセージを送信し、呼接続330−3が、アリスの発呼端末310−1とメアリの発呼端末310−3の間に確立される。
【0065】
呼転送の完了に成功すると、ACDシステム100と発呼端末310−1は、他の発呼者または他の呼セッションからのコンテキスト情報に対する場所を空けるためにコンテキスト情報144を削除することによって、通常の記録メンテナンスを実行することができる。
【0066】
代替的な実施形態では、ACDシステム100は、第1の発呼端末310−1が転送失敗イベントに応答してACDシステム100との呼接続を再確立する必要を回避するように、TEC情報144を生成することができる。例えば、TECモジュール142は、ACDシステム100ではなく別の対象発呼端末のリソース識別子232を有するTCH230を生成することができる。第1の呼セッションの間、IVRモジュール120は、処理のために発呼端末310−1を転送するための複数の対象発呼端末310−2、310−3を決定することができる。次に、TECモジュール142は、ACDシステム100ではなく発呼端末310−3のためのリソース識別子232を有するTCH230を生成することができる。TECモジュール302は、転送失敗イベントに応答して発呼端末310−3に直接接続することができ、それによって、ACDシステム100に発呼する必要を回避することができる。
【0067】
図5Aと5Bは、無人の転送ケースに対するメッセージ・フロー500を示す。しかし、いくつかの実施形態では、アリスとボブの間の有人の転送を実行するようにACDシステム100を配置構成することができる。この場合、ACDシステム100は、アリスが使用する発呼端末310−1をボブが使用する発呼端末310−2に接続する前に、矢印510、512、514、および516で示したメッセージ交換の前に発呼端末310−2のボブとの接続を確立する。
【0068】
図6はコンピューティング・システム・アーキテクチャ610のブロック図を示す。コンピューティング・システム・アーキテクチャ610は、実施形態の一部または全部を実装するのに適したコンピューティング・アーキテクチャを代表することができる。基本的な構成では、コンピューティング・システム・アーキテクチャ610は一般に少なくとも1つの処理装置632とメモリ634を備える。メモリ634を、データを記憶できる任意の機械読取可能またはコンピュータ読取可能な媒体で実装することができ、それらには揮発性メモリおよび不揮発性メモリの両方が含まれる。例えば、メモリ634には、ROM(read−only memory)、RAM(random−access memory)、DRAM(dynamic RAM)、DDRAM(Double−Data−Rate DRAM)、SDRAM(synchronous DRAM)、SRAM(static RAM)、PROM(programmable ROM)、EPROM(erasable programmable ROM)、EEPROM(electrically erasable programmable ROM)、フラッシュメモリ、強誘電性ポリマ・メモリなどのポリマ・メモリ、オボニック・メモリ、相変化メモリもしくは強誘電メモリ、SONOS(silicon−oxide−nitride−oxide−silicon)メモリ、磁気カードもしくは光学カード、または情報を記憶するのに適した他の任意の種類の媒体を含めることができる。図6に示すように、メモリ634は、1つまたは複数のアプリケーション・プログラム636−1〜sなどの種々のソフトウェア・プログラム、およびそれに付随するデータを記憶することができる。
【0069】
コンピューティング・システム・アーキテクチャ610はまた、その基本構成を超えた付加的な特徴および/または機能を有してもよい。例えば、コンピューティング・システム・アーキテクチャ610は取外し可能記憶装置638と取外し不能記憶装置640を備えてもよく、それらはまた、前述のように種々の機械読取可能媒体またはコンピュータ読取可能媒体を備えることができる。コンピューティング・システム・アーキテクチャ610はまた、キーボード、マウス、ペン、音声入力装置、タッチ入力装置、測定装置、センサ、等のような1つまたは複数の入力装置644を有してもよい。コンピューティング・システム・アーキテクチャ610はまた、ディスプレイ、スピーカ、プリンタ、等のような1つまたは複数の出力装置642を備えてもよい。コンピューティング・システム・アーキテクチャ610はさらに、コンピューティング・システム・アーキテクチャ610が他の装置と通信できるようにする1つまたは複数の通信接続部646を備えてもよい。通信接続部646には、1つまたは複数の通信インタフェース、ネットワーク・インターフェース、NIC(network interface cards)、ラジオ、無線の送信機/受信機(送受信機)、有線および/または無線の通信媒体、物理コネクタ、等のような、種々の標準通信要素を含めることができる。通信媒体は、一般に、コンピュータ読取可能命令、データ構造、プログラム・モジュール、または他のデータを、搬送波または他の伝送機構などの変調データ信号で具現化し、任意の情報伝達媒体を含む。「変調データ信号」という用語は、1つまたは複数のその特性集合を有するかまたはその信号内の情報をエンコードするように変化した信号を意味する。限定ではなく例として、通信媒体には有線の通信媒体と無線の通信媒体が含まれる。有線の通信媒体の例として、ワイヤ、ケーブル、金属リード、PCB(printed circuit boards)、バックプレーン、スイッチ・ファブリック、半導体材料、ツイスト・ペア線、同軸ケーブル、光ファイバ、伝播信号、等を含めることができる。無線通信媒体の例として、音響、RF(radio−frequency)スペクトル、赤外線および他の無線の媒体を含むことができる。本明細書で使用される機械読取可能媒体およびコンピュータ読取可能媒体という用語は、記憶媒体と通信媒体の両方を含むことを意味している。
【0070】
図7は、論理フロー400を含む、種々の実施形態に対するロジックを記憶するのに適した製品700の図を示す。示したように、製品700は、ロジック704を記憶する記憶媒体702を備えることができる。記憶媒体702の例として、揮発性メモリまたは不揮発性メモリ、取外し可能メモリまたは取外し不能メモリ、消去可能メモリまたは消去不納メモリ、書込可能メモリまたは書込不能メモリ、等を含む、電子データを記憶可能な1つまたは複数の種類のコンピュータ読込可能な記憶媒体を含めることができる。ロジック704の例として、ソフトウェア・コンポーネント、プログラム、アプリケーション、コンピュータ・プログラム、アプリケーション・プログラム、システム・プログラム、マシン・プログラム、オペレーティング・システム・ソフトウェア、ミドルウェア、ファームウェア、ソフトウェア・モジュール、ルーチン、サブルーチン、関数、メソッド、プロシージャ、ソフトウェア・インタフェース、API(application program interface)、命令セット、計算コード、コンピュータ・コード、コード・セグメント、コンピュータ・コード・セグメント、ワード、値、シンボル、またはそれらの任意の組合せのような、種々のソフトウェア要素を含めることができる。
【0071】
一実施形態では、例えば、製品700および/またはコンピュータ読取可能な記憶媒体702は、コンピュータによる実行時に上述の実施形態に従う方法および/または動作をコンピュータに実施させる実行可能なコンピュータ・プログラム命令を備えたロジック704を記憶することができる。実行可能なコンピュータ・プログラム命令は、ソース・コード、コンパイル済みコード、解釈されたコード、実行可能コード、静的コード、動的コード、等のような、任意の適切な種類のコードを含むことができる。実行可能なコンピュータ・プログラム命令を、コンピュータに一定の機能を実施するよう指令するために、事前に定義されたコンピュータ言語、方法または構文に従って実装することができる。命令を、C、C++、Java(登録商標)、BASIC、Perl、Matlab、Pascal、Viual BASIC、アセンブリ言語、等のような、任意の適切な、高レベルなプログラミング言語、低レベルなプログラミング言語、オブジェクト指向プログラミング言語、ビジュアル・プログラミング言語、コンパイル型プログラミング言語および/またはインタプリタプログラミング言語を用いて実装することができる。
【0072】
種々の実施形態を、ハードウェア要素、ソフトウェア要素、またはその両方の組合せを用いて実装してもよい。ハードウェア要素の例として、論理装置に対して上で提供した例のいずれかを含めることができ、さらに、マイクロプロセッサ、回路、回路素子(例えば、トランジスタ、レジスタ、コンデンサ、インダクタ、等)、集積回路、論理ゲート、レジスタ、半導体装置、チップ、マイクロチップ、チップ・セット、等をさらに含めることができる。ソフトウェア要素の例として、ソフトウェア・コンポーネント、プログラム、アプリケーション、コンピュータ・プログラム、アプリケーション・プログラム、システム・プログラム、マシン・プログラム、オペレーティング・システム・ソフトウェア、ミドルウェア、ファームウェア、ソフトウェア・モジュール、ルーチン、サブルーチン、関数、メソッド、プロシージャ、ソフトウェア・インタフェース、API(application program interface)、命令セット、計算コード、コンピュータ・コード、コード・セグメント、コンピュータ・コード・セグメント、ワード、値、シンボル、またはそれらの任意の組合せを含めることができる。実施形態がハードウェア要素および/またはソフトウェア要素を用いて実装されるかどうかは、所与の実装形態に望ましいように、所望の計算速度、電力レベル、耐熱性、処理サイクル予算、入力データ速度、出力データ速度、メモリ・リソース、データ・バス速度、および他の設計上または性能上の制約など、任意数の要因に従って様々に決定することができる。
【0073】
幾つかの実施形態を、「結合」および「接続」という表現をそれらの派生語とともに用いて説明することができる。これらの用語は、必ずしも互いに対する同義語として意図されているわけではない。例えば、幾つかの実施形態を、複数の要素が互いに直接物理的または電気的に接触していることを示すために「接続」および/または「結合」という用語を用いて説明することができる。しかし「結合」という用語は、複数の要素が互いに直接接触していないが依然として協調または相互作用していることを意味することもできる。
【0074】
技術的な開示事項の本質を読者が迅速に確認できるようにする要約を要求する米国特許法施行規則§1.72(b)に従って要約が提供されていることを強調しておく。要約は、それが各請求項の範囲または意味を解釈または限定するために使用されないという理解のもとに提示されている。さらに、上述の発明を実施するための形態では、開示を分かり易くするために様々な特徴が単一の実施形態に纏められていることが分かる。この開示方法は、クレームされた実施形態には各請求項で明示的に示したよりも多くの特徴が必要であるという意図を反映するものと解釈されるべきではない。そうではなく、添付の特許請求の範囲が示すように、本発明の主題は、単一の開示された実施形態の全特徴よりも少ない特徴に存する。したがって、添付の特許請求の範囲は本明細書において発明を実施するための形態に組み入れられ、各請求項は別々の実施形態に基づく。添付の特許請求の範囲では、「including」および「in which」という用語は、それぞれ「comprising」および「wherein」という用語の平易な英語の同義語として使用されている。さらに、「第1の」、「第2の」、「第3の」、等の用語は、ラベルとして用いられているにすぎず、それらの対象に数的な要件を課すことを意図するものではない。
【0075】
主題を構造上の特徴および/または方法論的動作に固有な言葉で説明したが、添付の特許請求の範囲で定義した主題は上述の固有な特徴または動作に必ずしも限定されないことは理解されよう。そうではなく、上述の固有な特徴および動作は特許請求の範囲を実装する形態の例として開示されている。

【特許請求の範囲】
【請求項1】
第1の発呼端末との第1の呼セッションに関するコンテキスト情報を記録するステップ(402)と、
前記コンテキスト情報をコンテキスト識別子とともに格納するステップ(404)と、
前記コンテキスト識別子を有する転送エラー・コンテキスト情報を生成するステップ(406)と、
転送失敗イベントの場合に使用するために、前記転送エラー・コンテキスト情報を前記第1の発呼端末へ送信するステップ(408)と
を含むことを特徴とする方法。
【請求項2】
前記転送エラー・コンテキスト情報が、リソース識別子、1組のエラー・コード、および前記コンテキスト識別子を有する第1の転送エラー・コンテキスト・ヘッダを含むことを特徴とする請求項1に記載の方法。
【請求項3】
前記第1の発呼端末を第2の発呼端末に転送するステップを含むことを特徴とする請求項1に記載の方法。
【請求項4】
前記第1の発呼端末が、転送失敗イベントを検出するステップを含むことを特徴とする請求項1に記載の方法。
【請求項5】
前記第1の発呼端末との第2の呼セッションを確立するステップを含むことを特徴とする請求項1に記載の方法。
【請求項6】
前記第1の発呼端末から前記コンテキスト識別子を受け取るステップを含むことを特徴とする請求項1に記載の方法。
【請求項7】
前記コンテキスト識別子に対応する前記コンテキスト情報を取り出すステップを含むことを特徴とする請求項1に記載の方法。
【請求項8】
前記コンテキスト情報に基づいて、前記第1の発呼端末に対する後続の処理イベントを決定するステップを含むことを特徴とする請求項1に記載の方法。
【請求項9】
前記コンテキスト情報に基づいて、前記第1の発呼端末を第3の発呼端末に転送するステップを含むことを特徴とする請求項1に記載の方法。
【請求項10】
前記第1の呼セッションに関する前記コンテキスト情報を、前記第2の呼セッションからのコンテキスト情報で更新するステップを含むことを特徴とする請求項1に記載の方法。
【請求項11】
システムに
発呼端末との呼セッションに関するコンテキスト情報を記録し、
前記コンテキスト情報をコンテキスト識別子とともに格納し、
前記コンテキスト識別子を有する転送エラー・コンテキスト情報を生成し、
転送失敗イベントにおいて使用するために、前記転送エラー・コンテキスト情報を前記発呼端末に送信し、
前記発呼端末を別の発呼端末に転送すること
を実行させるための命令を含む記憶媒体を備えたことを特徴とする製品。
【請求項12】
前記システムに、
前記発呼端末との後続の呼セッションを確立し、
前記発呼端末から前記コンテキスト識別子を受け取り、
前記コンテキスト識別子に対応する前記コンテキスト情報を取り出し、
前記コンテキスト情報に基づいて、前記発呼端末に対する後続の処理イベントを決定すること
を実行させる命令をさらに含むことを特徴とする請求項11に記載の製品。
【請求項13】
前記システムに、前記コンテキスト情報を前記後続の呼セッションからのコンテキスト情報で更新することを事項させる命令をさらに含むことを特徴とする請求項11に記載の製品。
【請求項14】
第1の発呼端末(310−1)と呼システム・リソースの間の第1の呼セッション(202−1)に関するコンテキスト情報(140)を記録し、前記コンテキスト情報をコンテキスト識別子(138)とともにコンテキスト・テーブル(133)に格納するように動作するコンテキスト生成モジュール(132)と、
前記コンテキスト生成モジュールに接続するための転送エラー・コンテキスト・モジュール(142)と、
前記コンテキスト識別子を有する転送エラー・コンテキスト情報(144)を生成するように動作する前記転送エラー・コンテキスト・モジュールと、
前記転送エラー・コンテキスト・モジュールに接続され、転送失敗イベントの場合に使用するために前記転送エラー・コンテキスト情報を前記第1の発呼端末に送信するように動作する呼転送モジュール(150)と
を備えたことを特徴とするシステム。
【請求項15】
前記転送エラー・コンテキスト・モジュールが、リソース識別子(232)、1組のエラー・コード(234)および前記コンテキスト識別子を有する第1の転送エラー・コンテキスト・ヘッダ(230)を含む転送エラー・コンテキスト情報を生成するように動作することを特徴とする請求項14に記載のシステム。
【請求項16】
前記第1の発呼端末に音声プロンプトを送信し、前記第1の発呼端末から操作者の指令を受け取ることによって、第1の呼セッションに対する対話を管理するように動作する、前記呼システム・リソースとしての双方向音声応答モジュール(120)と、
前記双方向音声応答モジュールと前記呼転送モジュールに接続され、前記双方向音声応答モジュールから転送要求を受け取り、前記第1の発呼端末を第2の発呼端末に転送するという制御指令を前記呼転送モジュールに送信するように動作する呼制御モジュール(110)と、
前記第1の発呼端末を第2の発呼端末(310−2)に転送するように動作する前記呼転送モジュールと
を備えたことを特徴とする請求項14に記載のシステム。
【請求項17】
前記第1の発呼端末が、前記呼転送モジュールから前記転送エラー・コンテキスト情報を受け取り、転送失敗イベントを検出し、前記転送エラー・コンテキスト情報を用いて前記第1の発呼端末と前記呼システム・リソースの間で第2の呼セッション(102−2)を開始することを特徴とする請求項16に記載のシステム。
【請求項18】
前記コンテキスト生成モジュールが、前記コンテキスト識別子を前記第1の発呼端末から受け取り、前記コンテキスト識別子に対応する前記コンテキスト情報を前記コンテキスト・テーブルから取り出し、前記コンテキスト情報を前記双方向音声応答モジュールに送信することを特徴とする請求項17に記載のシステム。
【請求項19】
前記双方向音声応答モジュールが、前記コンテキスト情報を受け取り、前記コンテキスト情報に基づいて、前記第1の発呼端末に対する後続の処理イベントを決定することを特徴とする請求項18に記載のシステム。
【請求項20】
前記コンテキスト生成モジュールが、前記第1の呼セッションに関する前記コンテキスト情報を前記第2の呼セッションからのコンテキスト情報で更新することを特徴とする請求項19に記載のシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5A】
image rotate

【図5B】
image rotate

【図6】
image rotate

【図7】
image rotate


【公表番号】特表2011−511599(P2011−511599A)
【公表日】平成23年4月7日(2011.4.7)
【国際特許分類】
【出願番号】特願2010−545924(P2010−545924)
【出願日】平成21年1月19日(2009.1.19)
【国際出願番号】PCT/US2009/031370
【国際公開番号】WO2009/099746
【国際公開日】平成21年8月13日(2009.8.13)
【出願人】(500046438)マイクロソフト コーポレーション (3,165)
【Fターム(参考)】