プロンプト行動

音声ベースのバーチャルエージェント閉じた ライブの人間のエージェントの代わりに顧客とのやり取りを処理するソフトウェアアプリケーション。のいくつかの動作を、会話の各ターンでカスタマイズすることができます。 コンフォートノイズ、割り込み、タイムアウトといったものも含まれます。

会話中のすべてのターンの動作や、1つのターンのみの動作をカスタマイズすることができます:

  • All Conversation Turnsデフォルトの次のプロンプト動作スニペットで使用して、スクリプト内で定義済みの動作を会話のすべてのターンのデフォルトとして使用するようにします。
  • One Turn:インタラクション中に特定のターンに対して異なる一連の行動を指定する場合は、次のプロンプト動作スニペットを作成します。たとえば、通常の会話のターン中に、DTMF収集を有効にしたくない場合があります。ただし、仮想エージェントが連絡先に情報の入力を求める必要がある場合は、DTMF収集ルールを含むそのプロンプトのスニペットを作成できます。

このページで説明する行動は、Voicebot ExchangeCloud TranscribeなどのnextPromptBehaviorsプロパティのあるStudioアクションを使用するStudioスクリプトでのみ構成できます。 これらの行動ンのカスタマイズは、カスタムコードでのSnippetアクションを使用して行われます。 Snippetコードは、Studioスクリプトで使用される社内用スクリプト言語で記述する必要があります。

各動作の詳細とサンプルコードについては、 次のプロンプト動作スニペットまたはデフォルトの次のプロンプト動作スニペットのオンラインヘルプを参照してください。

このページで説明する動作は、Cloud Transcribeアクションを使用するTurn-by-Turn Transcriptionの非バーチャルエージェントアプリケーションにも適用されます。

タイムアウトと沈黙の処理

コンタクトとバーチャルエージェント閉じた ライブの人間のエージェントの代わりに顧客とのやり取りを処理するソフトウェアアプリケーション。の間の会話の両側で沈黙を処理するオプションを設定することができます。 バーチャルエージェントが沈黙に遭遇するのは、コンタクトの返答に時間がかかりすぎたり、発話の途中で停止があったりする場合です。 バーチャルエージェントが応答するのに時間がかかると、コンタクトが沈黙することがあります。

コンタクトのタイムアウト

バーチャルエージェントは、次のような状況でコンタクトの応答を待つ時間を設定することができます:

  • 無応答のタイムアウト:バーチャルエージェントが会話の各ターンでコンタクトが話し始めるのを待つ時間を設定することができます。 このパラメーターのタイマーは、会話でコンタクトのターンが回ってくると同時に開始されます。 この設定は、 silenceRules.millisecondsToWaitForUserResponseパラメーターを使用して行います。
  • 発話途中の停止:コンタクトが発話閉じた コンタクトが発言または入力すること。の途中で一時停止した場合に、バーチャルエージェントが発話を継続するまでの時間を設定することができます。 この設定は、 utteranceConfig.maxPostEnergySilenceMSパラメーターを使用して行います。
  • ノイズの多い環境:コンタクトが背景ノイズの多い場所にいる場合、バーチャルエージェントはコンタクトが話しているのか、いつ終わったのかを判断するのに苦労することがあります。 特に割り込みが有効な場合に問題となります。 タイムアウトを追加設定することで、バーチャルエージェントがコンタクトの発言を判断する時間を長くすることができます。 詳細については、背景ノイズ処理のセクションを参照してください。

  • DTMF桁を入力する間の停止:スクリプトでコンタクトがDTMF閉じた ユーザーが電話のキーパッドのキーを押すかタップしたときに生成される信号音。トーンを入力できる場合、スクリプトが桁間を待機する時間を設定できます。 この設定は、 dtmfrules.interDigitTimeoutMillisecondsパラメーターを使用して行います。

バーチャルエージェントの遅延

バーチャルエージェントの応答に予想以上に時間がかかることがあります。 回線の沈黙が長く続くと、通話が切断されたとコンタクトに判断される場合があります。 このような状況で再生するコンフォートノイズを設定できます。 コンフォートノイズは、通話中であることをコンタクトに再確認させることができます。 コンフォートノイズを提供するために、任意のWAVオーディオファイルを使用することができます。

以下のプロパティで、バーチャルエージェントの遅延を管理することができます:

  • コンフォートノイズを有効にするsilenceRules.engageComfortSequenceパラメーターで、コンフォートノイズを有効にすることができます。
  • コンフォートノイズのトリガーを定義するsilenceRules.botResponseDelayToleranceパラメーターを使用して、コンフォートノイズシーケンスを開始する前にスクリプトが待機する時間をミリ秒単位で指定します。
  • コンフォート音声ファイルを提供する:既存の音声ファイルを使用するか、Playなどのプロンプトマネージャーに対応するStudioアクションを使用して、新しいファイルを作成することができます。 また、サードパーティーのアプリケーションを使用してファイルを作成し、アップロードすることができます。 ファイルは、WAV形式である必要があります。 コンフォートのプロンプトのシーケンス閉じた コンタクトに対して再生される音声プロンプトの部分。silenceRules.comfortPromptSequence.prompts[1].audioFilePathパラメーターで作成します。

沈黙の処理

以下のプロパティにより、バーチャルエージェントのインタラクションにおける沈黙の側面を管理することができます:

  • コンフォートノイズバーチャルエージェントの遅延のセクションで説明したように、コンフォートノイズは、バーチャルエージェントが予想以上に応答するのに時間がかかる場合に音声ファイルを再生することができます。 コンフォートノイズは、通話がまだライブであることをコンタクトに知らせます。
  • 沈黙のトリミング:音声がバーチャルエージェントに送信される前に、各発話の冒頭の沈黙を除去することができます。 これにより、音声のサイズが小さくなり、バーチャルエージェントが各レスポンスを処理する際のレイテンシーを防止または低減することができます。 この機能を有効にするには、silenceRules.trimSilenceパラメータを使用します。 デフォルトでは無効になっています。

背景ノイズの処理

バーチャルエージェント閉じた ライブの人間のエージェントの代わりに顧客とのやり取りを処理するソフトウェアアプリケーション。の会話中にコンタクトが話しているとき、CXoneは、発話閉じた コンタクトが発言または入力すること。をバチャルエージェントに送信する前に、沈黙が聞こえるまで待ちます。 コンタクトがノイズの多い環境にいる場合、バーチャルエージェントはコンタクトが話しているのか、いつ話し終わったのかを把握するのに苦労することがあります。 特に割り込みが有効な場合に問題となることがあります。

背景ノイズが原因でmillisecondsToWaitForUserResponseパラメーターがトリガーされることがあります。 背景ノイズが長く続き、 millisecondsToWaitForUserResponseのタイムアウトに達した場合、スクリプトはuserInputTimeout分岐を取ります。

バーチャルエージェントがこのような状況でコンタクトが応答しなかったかのように処理するのを回避するために、プロンプト動作スニペットでutteranceConfig.maxUtteranceMillisecondsパラメーターを設定することができます。 この設定の利点は、タイムアウトに達した場合、スクリプトがキャプチャした音声をバーチャルエージェントに送信することです。 バーチャルエージェントは音声を可能な限り解釈し、最も適切な分岐を行います。

maxUtteranceMillisecondsのタイマーは、バーチャルエージェントがコンタクトの話し声や背景ノイズなどの音声を検知した時点で開始します。 maxUtteranceMillisecondsパラメーターは、millisecondsToWaitForUserResponseタイマーをキャンセルします。 これは、実質的にタイムアウトの制限を一時停止の長さの分、つまりmillisecondsToWaitForUserResponsemaxUtteranceMillisecondsの間の時間分だけ延長するものです。 maxUtteranceMilliseconds制限に達すると、バーチャルエージェントはキャプチャされた音声からコンタクトのインテント閉じた コンタクトが発言または入力した内容の背後にある意味や目的。コンタクトが伝えたいことや達成したいこと。を決定しようとします。 スクリプトは、バーチャルエージェントが決定した内容に基づいて、次のいずれかの分岐を行います:

  • インテントが見つかりました:バーチャルエージェントがインテントを決定した場合、スクリプトは PromptAndCollectNextResponseの分岐を行います。

  • No Intent Found-バーチャルエージェントがインテントを決定できない場合、スクリプトは UserInputNotUnderstood ブランチまたは UserInputTimeout ブランチのいずれかを取ります。 状況に応じて最も適切な分岐を行います。

デフォルトの設定

maxUtteranceMillisecondsのデフォルトは設定されていません。 適切な時間は状況によって異なります。 はいいいえなどの短いレスポンスがコンタクトから期待される場合、maxUtteranceMillisecondsを10秒に設定するのが妥当です。 口座番号や住所など、その他のレスポンスは、より時間を要する場合があります。

DTMFの収集

スクリプトを構成して、コンタクトから DTMF閉じた ユーザーが電話のキーパッドのキーを押すかタップしたときに生成される信号音。トーンを収集することができます。 以下のパラメーターを使用して、DTMF収集を設定します:

  • DTMF検出を有効にするaudioCollectionRules.dtmfRules.detectDtmfパラメーターを trueに設定し、必要なDTMF 収集動作のパラメーターを追加します。
  • DTMFトーンバッファをクリアする:スクリプトがコンタクトを促すアクションを開始した後に入力されたトーンのみを収集する場合、 audioCollectionRules.dtmfRules.clearDigitstrueに設定します。 コンタクトが電話のキーパッドのキーを押すと、DTMFトーンをキャッシュするバッファは消去されます。
  • 終端文字を要求する:数字の入力が終わったことを示す文字をコンタクトに入力させたい場合、 audioCollectionRules.dtmfRules.terminationCharacterパラメータを含め、コンタクトに入力させたい文字として値を設定します。 たとえば、ポンド記号(#)は一般的に終端文字として使用されます。
  • 終端文字の除去:終端文字が必要な場合、キャプチャされたDTMFトーンから終端文字の値をスクリプトによって削除することができます。 削除されると、終端文字はスクリプトで処理されません。 audioCollectionRules.dtmfRules.stripTerminatorをインクルードし、trueに設定することで、終端文字を除去することができます。
  • 桁間のタイムアウトを設定する:コンタクトが次の桁を入力するのに長い時間がかかる場合にスクリプトが状況を処理できるように、タイムアウトを設定することができます。 audioCollectionRules.dtmfRules.interDigitTimeoutMillisecondsをインクルードし、次の桁まで待機させたいミリ秒数を設定します。
  • 承認される最大桁数を設定する:スクリプトが最大桁数を承認するように設定することができます。 終端文字が必要な場合は、このプロパティに使用する番号に含めてください。 例えば、プロンプトで8桁の口座番号と終端文字を入力するようコンタクトが指示された場合、audioCollectionRules.dtmfRules.maxDigits9に設定します。

スクリプト音声(割り込み)を使ってコンタクトが話すことができるようにする

割り込みを使用すると、コンタクトはスクリプトが再生している音声を使用して話すことができます。 これには、 バーチャルエージェント閉じた ライブの人間のエージェントの代わりに顧客とのやり取りを処理するソフトウェアアプリケーション。からの音声レスポンスも含まれます。 このオプションを有効にする場合は、audioCollectionRules.bargeConfiguration.enableSpeakerBargeパラメーターをtrueに設定してください。

割り込みを有効にすると、バーチャルエージェントは、特に周囲の雑音に敏感になります。 そのため、バーチャルエージェントは、コンタクトが話しているのか、話し終わったのかがわかりにくくなることがあります。 バーチャルエージェントがこのような状況を、コンタクトが応答しなかったかのように処理するのを回避するために、 プロンプト動作スニペットのutteranceConfig.maxUtteranceMillisecondsパラメーターを設定することができます。