はじめに
Genesys Cloudには標準でボット機能があります。それでも案件では、
- 応対をもっと自然にしたい
- 聞き取りの精度を上げたい
- すでに使っているAIサービスにそろえたい
といった理由から、外部の音声AIサービスとつなぎたいというご相談をいただくことがあります。
その接続手段として用意されているのが、Audio Connectorです。では、実際につないでみると、どこまで簡単で、どこでつまずくのか。
そう思い、今回、クラウド型の音声AIエージェントサービス(以下、外部ボット)とAudio Connectorをつなぎ、電話で会話するところまで試してみました。確かめたのは、設定の手間と、会話が終わってフローに戻るときの挙動です。
Audio Connectorとは
Audio Connectorは、通話の音声を外部ボットへ流し、ボットの音声をお客様に返す仕組みです。ボットとの会話が終わると、通話はGenesys Cloudのフローに戻り、次の処理へ進みます。
ドキュメントに記載されている主な条件は、次のとおりです。
| 項目 | ドキュメントの記載 |
|---|---|
| 必要な契約 | Genesys Cloud CX 1〜4のライセンスに加え、BYOT Rate Eの追加(営業経由) |
| 料金 | 音声を流している時間に応じた分単位の課金 |
| 接続先 | 「wss://」で始まるURL(暗号化された常時接続の通信)。ポートは443のみ |
| 上限 | 1組織あたり5つまで。1通話は既定で最大15分 |
企画の段階では、Genesys側の追加契約と、外部ボット側の利用料の両方を見積もっておく必要があります。
設定は「接続先・キー・ID」の3つだけ
結論から言うと、Genesys Cloud側の設定は簡単でした。必要な値は、外部ボットから発行される次の3つです。
- 接続先のURL(Base Connection URI)
- APIキー(接続を認証するための鍵)
- Connector ID(どのボットにつなぐかを示すID)
URLとAPIキーは、インテグレーション(外部サービスとの連携設定)に登録します。資格情報の画面にはClient Secretという欄もありますが、ドキュメントには必須かどうかの記載がありません。今回の検証では任意の項目になっており、空欄のままでも接続できました。
Client Secretは接続要求に署名するための値なので、外部ボットが対応している場合は、認証を強める選択肢になります。
フローでは、Architectのツールボックスの「ボット」カテゴリにあるCall Audio Connector(日本語画面では「音声コネクターの呼び出し」)を置き、Connector IDを入力します。Inputsを使うと、フローからボットへ値を渡せます。今回はお客様名として「テスト太郎」を渡し、ボットの第一声で「テスト太郎様」と呼びかけられることを確認しました。
日本語の会話も自然で、話し終えてからボットが答え始めるまでの間は、体感で1秒あるかないかでした。外部ボットの管理画面の表示値でも、応答文を考えるAIの処理時間は0.2〜0.8秒程度でした。
注意点1:ボットが会話を終えないと、フローに戻らない
最初の通話では、用件を伝えた後もフローに戻りませんでした。ボットが締めの挨拶を繰り返し、こちらが電話を切るまで会話が続いたのです。
原因は、外部ボット側の「会話を終了する」機能が、作成直後は無効になっていたことでした。この機能を有効にし、ボットへの指示文(プロンプト)に「用件を確認したら必ず会話を終了する」と明記したところ、フローの成功パスに戻りました。
フローに戻らないと、オペレーターへの転送などの後続処理に進めません。外部ボットを選ぶ際は、どのような条件で会話を終えるかを、設定と指示文の両方で制御できるかを確認しておくと安心です。
注意点2:「成功」は「用件が聞けた」ではない
Call Audio Connectorには、成功と失敗の2つの出口があります。ドキュメントでは、ボットがセッションを正常に完了したときに、ボットから返された値をOutputs(出力変数)に入れると説明されています。
試しに、ボットの問いかけに何も答えずに黙ってみました。すると、ボット側が無音を理由に会話を終え、Genesysでは成功パスに進みました。Genesysから見ると、ボットが会話を終えれば「成功」で、用件を聞けたかどうかは関係ないということです。
| ケース | ボット側の終わり方 | 進んだパス | Genesysに返った値 |
|---|---|---|---|
| 用件を話した | ボットが会話を終了 | 成功 | null(空) |
| 黙ったまま | 無音のため会話を終了 | 成功 | null(空) |
なお、表のとおり、用件を話したケースでもGenesysに返った値はnullでした。外部ボット側では用件(「解約」)を取得できていましたが、Genesysには届いていません。原因がGenesys側と外部ボット側のどちらにあるかは、今回は切り分けていません。
このため、フローは「成功なら次へ」とせず、成功パスの後で出力値の中身を確認し、空ならオペレーターにつなぐ形にしておくのが安全です。PoC(導入前の試行)では、出力値が実際に入るかを必ず確認してください。
注意点3:エラーの原因は、Genesys側だけでは区別できない
設定ミスを2種類わざと起こし、失敗パスで受け取るエラーの種類(errorType)を確認しました。
| 起こしたミス | errorType | 外部ボット側の記録 |
|---|---|---|
| ボットが必須とする値を、Inputsで渡さない | NoResourceError | エラーの記録あり(必要な値が不足と表示) |
| Connector IDを、存在しない値にする | NoResourceError | 記録なし |
どちらも同じNoResourceErrorで、エラーメッセージの文面も同じでした。ドキュメントでは、NoResourceErrorの例として「ボットが見つからない場合」が挙げられています。今回の検証では、値の渡し忘れでも同じエラーになりました。
原因を区別できたのは、外部ボット側の記録の有無でした。本番運用に向けては、障害時にGenesysと外部ボットの両方のログを確認できる体制と、どちらが切り分けを担当するかを、導入前に決めておくことをおすすめします。
まとめ
Audio Connector自体は、接続先・キー・IDを設定するだけで簡単に使えました。手間や差が出たのは、会話の終え方や結果の返し方など、外部ボット側でした。
外部ボットを選ぶ際は、次の観点を確認してみてください。
| 観点 | 確認すること |
|---|---|
| 会話の終了 | 終了の条件を、設定と指示文で制御できるか |
| 結果の返却 | 聞き取った内容を、GenesysのOutputsに返せるか(PoCで実際に確認する) |
| 記録 | 会話内容、応答速度、エラーの理由を、管理画面で確認できるか |
| フローの設計 | 成功パスでも出力値で再分岐し、空や失敗のときの行き先を決めているか |
外部ボットとの連携というと、つなぐまでが大変という印象を持たれがちです。実際に試してみると、つなぐこと自体よりも、つないだ後に「どう終わらせ、何を受け取るか」を設計することの方が大切だと感じました。
参考
- Audio Connector overview(Genesys Cloud Resource Center)
https://help.genesys.cloud/articles/audio-connector-overview/ - Call Audio Connector action(Genesys Cloud Resource Center)
https://help.genesys.cloud/articles/call-audio-connector-action/ - Configure and activate Audio Connector in Genesys Cloud(Genesys Cloud Resource Center)
https://help.genesys.cloud/articles/configure-and-activate-audio-connector-in-genesys-cloud/ - Audio Connector pricing(Genesys Cloud Resource Center)
https://help.genesys.cloud/articles/audio-connector-pricing/ - ドキュメントの記載は、2026年11月6日時点の英語版を参照