テレフォニーのインテグレーション用に DTMF(デュアルトーン マルチ周波数信号)を有効にして構成できます。有効にすると、エンドユーザーが電話で押したキーが通常のテキストに変換され、エージェントによってエンドユーザー入力として処理されます。この変換は、電話キーの押下(12*34#
)に関連する文字と同様に簡単なものにできます。または、より複雑なシーケンスの場合は正規表現(regex)を使用することもできます。
一致するルール
DTMF 設定には、次の 3 つの一致ルールがあります。
- インテントに対する一致。
- カスタム エンティティに対する一致。
- システム エンティティ タイプに対する一致。
DTMF パターンを個々のインテントとエンティティに関連付けて、エンドユーザー入力シーケンスとの一致をトリガーできます。DTMF をグローバルに有効にすると、システム エンティティがデフォルトで有効になります。
システム エンティティ ルール
DTMF を有効にすると、システム エンティティ ルールがデフォルトで有効になります。
型名 | DTMF パターン | 例 |
---|---|---|
sys.percentage |
任意の整数 | 29 -> 29% |
sys.temperature |
任意の整数 | 30 -> 30C または 30F |
sys.phone-number |
任意の数字シーケンス | 4081111111 |
sys.date |
(言語 / 地域に応じて)YYYYMMDD(en-us)または MMDDYYY | 20231001 -> 2023-10-01、10-01-2023 -> 10-01-2023 |
sys.zip-code |
任意の数字シーケンス | 94043 |
sys.number |
ピリオドが「*」キーで表される数字のシーケンス | 123 -> 123、123*45 -> 123.45 |
sys.cardinal |
任意の数字シーケンス | 12345 |
sys.number-integer |
任意の数字シーケンス | 12345 |
sys.number-sequence |
任意の数字シーケンス | 12345 |
sys.ordinal |
任意の数字シーケンス | 12345 |
設定
このセクションでは、DTMF を有効にするときに構成できる追加の設定について説明します。
終了ディジット
この設定では、その他の入力を待たずに DTMF 入力を直ちに終了するキーの押下を制御します。通常、この設定には #
を使用します。変換されたエンドユーザー入力に終了ディジットが含まれていない。たとえば、終了ディジットが #
であり、入力が 123#
である場合、エージェント処理に提供される変換済みのエンドユーザー入力は 123
です。
ディジット間のタイムアウト時間
エンドユーザーがキー入力のシーケンスを入力する際に一時停止する場合があります。この一時停止時間がディジット間のタイムアウト時間よりも長い場合、Dialogflow はシーケンスの DTMF 処理を中止します。
Dialogflow が DTMF 処理を中止した場合、その時点でキャプチャされた変換されていないシーケンスをエンドユーザー入力としてエージェントに提供します。この入力はインテントまたはフォーム パラメータと一致する可能性は低いため、Dialogflow は不一致イベントを呼び出すと考えられます。
コンソールを使用する場合、このフィールドは秒単位です。
エンドポイントのタイムアウト時間
キー入力シーケンスが一致すると、Dialogflow はキー入力の処理を続行します。エンドポイント タイムアウト時間は、Dialogflow が一致を検出した後でさらに入力を待機する時間です。この動作は、シーケンスが無制限の数などの可変長であるシナリオを処理します。
エンドユーザーがエンドポイントのタイムアウト時間に設定された時間を超えて入力を一時停止した場合、Dialogflow は DTMF 処理を中止し、現在一致しているシーケンスを通常どおり変換します。
DTMF を有効にする
DTMF は、エージェント、ページ、またはパラメータ レベルで有効にできます。DTMF はスコープ内のすべての対象に適用されます。このセクションでは、エージェントに対して DTMF を有効にする方法について説明します。DTMF は、ページ設定(ページ)またはフロー設定(フロー)を使用して有効にすることもできます。また、パラメータを選択して設定メニューを表示することでも有効にできます。いずれの場合も、DTMF の設定はページの下部にあります。
[エージェントの設定] に移動し、[音声と IVR] タブを選択します。
ページの下部にある [DTMF を有効にする] チェックボックスをオンにします。
[終了ディジット]、[ディジット間のタイムアウト時間]、[エンドポイント タイムアウト時間] の値を設定します。これで、DTMF が該当するエージェントのスコープ内のすべての対象に対して有効になります。下位レベルで設定された場合、これらの設定は上位レベルの設定をオーバーライドします。DTMF パターンが定義されている場合は、該当するスコープ内のアクティブなスロットのアクティブなインテントまたはエンティティ タイプがトリガーされる可能性があります。
インテントに DTMF パターンを追加する
左側のナビゲーション メニューで [管理] タブを選択し、[インテント] をクリックします。
表示されたリストからインテントを選択し、[DTMF パターン] ボックスに移動します。
DTMF シーケンスを入力します。より複雑な DTMF パターンの場合は、正規表現パターンを使用できます。
[保存] をクリックして、変更を保存します。
エンティティに DTMF パターンを追加する
左側のナビゲーション メニューで [管理] タブを選択し、[エンティティ タイプ] をクリックします。
表示されたリストからエンティティ タイプを選択します。[エンティティ] 表の [DTMF パターン] 列に移動します。
テーブル内のエンティティごとに DTMF パターンを設定します。より複雑な DTMF パターンの場合は、正規表現パターンを使用できます。
[保存] をクリックして、変更を保存します。
シミュレータで DTMF を使用する
DTMF 構成は、コンソール シミュレータでテストできます。
Dialogflow コンソールで、画面右上隅の [エージェントをテストする] をクリックします。
ポップアップしたパネルで、[+] テキスト入力ボックスの横にある + 記号をクリックします。[DTMF] を選択します。
テストする DTMF パターンと DTMF 終了ディジットを入力します。[Send new DTMF input] チェックボックスがオンになっていることを確認して、[Send] をクリックします。DTMF 入力に対するレスポンスがシミュレータに表示されます。