この記事では、ワークフローのベストプラクティスをいくつかご紹介します。
対象ユーザー
ワークフローは、Dialpad のすべてのプランでご利用いただけます。
エキスパートフローは、プロフェッショナルサービスチームによって有効化される必要があります。
推奨の外部ツール
ワークフローを作成する際には、外部ツールの使用を推奨します。
Tip
お勧めのツールには、Lucidchart、Visio、Diagram.io などがあります。
外部ツールを使用してフローチャートを作成するメリット:
ワークフローへのアクセスや知識がないユーザーにも、内容を共有しやすくなる
開発スピードの向上や、新規ユーザーオンボーディングの迅速化
改善や変更を加える際は、これらのファイルも併せて更新し、データの正確性を保つことを推奨します。
Note
変数、プロンプト、ワークフローについても、別のファイルで記録することを推奨します。これにより、変更がしやすくなり、可視性も向上します。
ワークフローの [Go-to] ステップ
ワークフローを使用する際、[Go-to] ステップを活用することで、複数のワークフローに繋げることができます。これにより、ロジックと情報をより小さく、扱いやすい単位に分割することができます。これらの [Go-to] ワークフローは、通常「サブワークフロー」と呼ばれます。
[Go-to] ステップの詳細は、「ワークフローのステップ」をご参照ください。
ワークフローの複製
別のオフィス用に新しいワークフローを作成する場合は、既存のワークフローを複製することで、効率を最大化し、ミスを最小限に抑えることができます。これにより、ゼロから新しく作成することなく、既存のワークフローを他のオフィスでも使用することが可能になります。
詳細は、「ワークフローの複製」をご参照ください。
Note
ワークフローをコピーする際、ワークフロー内で使用される名前は、それぞれのオフィスごとに固有である必要があります。
バージョン管理の推奨プロセス
バージョン管理は、コンテンツやプロセスのさまざまなバージョンを制御、整理、追跡するために重要です。これは、IVR システムにおいて、更新や変更を行なっても進行中の通話に影響を与えないようにするために不可欠です。
複雑なワークフローの異なるバージョンを管理する場合は、以下の手順に従うことを推奨します。
管理者画面から、[チャネル & ワークフロー] > [ワークフロー] を選択します。
[ワークフロー] タブで、[オプション] > [コピー] を選択します。

Tip
次の命名規則を使用すると便利です: Production Main Workflow to QA Main Workflow [コピーの日付] [開発者名]。
ワークフローの名前を変更し、オフィスを選択します。

ワークフローのリストから、変更が必要な [Go-to] ワークフロー(サブワークフロー)を選択し、[オプション] > [コピー]を選択します。
他のワークフローに繋がっている [Go-to] ステップがある場合は、[Go-to] ワークフローも変更が必要か確認し、必要であれば併せて更新します。
QA 環境の [Go-to] ワークフローに必要な更新を行い、[保存] を選択します。
QA 環境のワークフローで、[Go-to] ステップを更新して新しく公開された [Go-to] ワークフローに繋ぎ、[ワークフローの公開] > [公開] を選択します。
QA 環境ワークフローをテストグループの電話番号に割り当てます。詳細は、「ワークフローの割り当て」をご参照ください。
Tip
QA 環境のワークフローを本番環境に反映する前に、承認を得るか、内容をレビューしていただくことを推奨します。
QA 環境ワークフローとサブワークフロー([Go-to] ワークフロー)に対して、[オプション] > [コピー] を選択します。
ワークフローに名前を付け、適切なオフィスを選択します。
Tip
QA から本番へ移行するワークフローに、「Prod Main Workflow [QA 本番反映日]」 の命名規則を使用すると便利です。
新しく作成されたサブワークフローに対して [保存] を選択します。
本番ワークフロー内の [Go-to] ステップを、新しく公開された [Go-to] ワークフローに繋ぎます。
[ワークフローを公開] > [公開] を選択します。
該当するオフィス、グループ、またはコンタクトセンターに対して、本番ワークフローのルーティングを設定します。詳細は、「ワークフローの割り当て」をご参照ください。
Note
この作業は、通常の業務を中断することなく営業時間中に行うことが可能です。
通話録音・文字起こしへの同意を自動化する
customer.session.voice.recordingoff 変数を使用して通話録音および文字起こし機能を無効化できます。これにより、ユーザーは自分のやり取りを録音・文字起こしするかどうかを選択できます。
この変数は、ワークフロー内の [割り当て] ステップで使用できます。ワークフローにこの変数を追加するには、管理者設定を開きます。
[チャネル&ワークフロー] > [ワークフロー] を選択します。
既存のワークフローを選択するか、新しいワークフローを作成します。
[メニュー] ステップでは、このワークフローを使用して問い合わせた際にユーザーが選択できるオプションが反映されるよう、音声ファイルまたはテキストの音声変換メッセージを追加・更新します。
Tip
このステップの文言は、次の例のように設定できます:「通話録音および文字起こしを希望されない場合は1を押してください。それ以外の場合は、サポート部門に接続されるまでそのままお待ちください。」


以下を含む [割り当て] ステップを追加します。
ステップ名
変数の名前:
customer.session.voice.recordingoff変数式:
true
Note
本変数では、
trueの値のみ使用できます。

[追加] を選択します。
残りのワークフローは、選択内容に応じて通話が適切にルーティングされるよう設定します。
ワークフローでの外部 API の活用
Dialpad のエキスパートワークフローは、着信の瞬間に最適な窓口へスムーズに案内するための強力なツールです。基本的な自動音声応答(IVR)を超え、発信者の意図を正確に理解し、状況に応じてリアルタイムに顧客体験を最適化します。また、エージェントが対応可能になるまで保留で待たせることなく、簡単な問題をセルフサービスで解決できる自動化ステップも、容易に設定可能です。
効率的な通話ルーティングにより、顧客の時間を尊重しながら、チームは最も重要な会話に集中できるようになります。これらのワークフローを導入することで、すべての着信に対してプロフェッショナルな応答を提供でき、ブランドへの信頼向上にもつながります。
以下に、コンタクトセンターのワークフローで外部 API を活用する代表的なユースケースをご紹介します。
Note
以下の例は、すべてエキスパートワークフロービルダー内で作成されています。
データディップを活用したコンタクトセンター転送
データディップを利用して、発信者の電話番号に基づいて適切ののコンタクトセンター ID を取得する API を作成できます。
データディップを活用すれば、通話履歴に基づいて自動的に正しい部門に振り分けられるため、煩雑なメニューやボタン入力を省けます。これにより、優先度の高いお客様や既存のお客様を即座に適切なチームへ接続し、待ち時間や不要な転送を削減できます。
エキスパートワークフローでデータディップを設定するには、管理者設定を開きます。
[チャンネル&ワークフロー] > [ワークフロー] を選択します。
対象のワークフローを選択し、ワークフロー内のエキスパートノードで [Expert を起動] を選択します。

[Send a Message] ノードを追加し、
customer.businessid.phone変数を使用して「着信電話番号」をログに記録します。[Send a Message] ノードを追加して通話を保留します。
外部 API ノードを追加し、電話番号を用いて API からデータを取得します。
URL エンコーディングが予期通り動作しない場合に備え、あらかじめ変数を割り当てることを推奨します。
[Wait for Message] ノードを追加します。
[Send a Message] ノードを追加し、APIの実行結果を記録します。
API レスポンスの判定用に [Branch] ノードを追加します(成功用と失敗用の2つ)。
[Assign Variable] ノードを追加し、「転送 URL」を変数に格納します。
「Set URL」(成功時用)と「Set Default URL」(失敗時用)の2つの変数を追加します。
[call-resume] ウィジェット付きの [Send a Message] ノードを追加します。
[Wait for Message] ノードを追加します。
[call-transfer] ウィジェット付きの [Send a Message] ノードを追加します。
[Expert を公開] を選択します。
[ワークフローを公開] を選択します。
これで、着信電話番号に基づいて通話が最適なコンタクトセンターへ転送されます。
オペレーター不在時のループ回避策
特定のコンタクトセンターやグループへ転送する際、対応可能な担当者がいないと、ワークフローに戻って同じルーティングを繰り返すループが発生します。この問題を解決するには、Custom Context API を使用した回避策を作成できます。
Custom Context API を活用すると、顧客のアカウントステータスや直近の注文状況などの外部情報にワークフローからアクセスでき、エージェントが不在時でも、パーソナライズされたセルフサービスを提供できます。これにより、行き止まりの状態を防ぎ、後続の対応に必要なコンテキストをチームが把握できるため、顧客体験が大幅に向上します。
ループを回避しつつオペレーター転送を実行するエキスパートワークフローを作成するには、管理者設定を開きます。
ワークフローを作成します。
ワークフローの冒頭に [エキスパート] ステップ を追加し、名前を「CheckLoop」に設定します。
外部API ノードを追加し、Custom Context を取得するように設定します。
customer.session.voice.calluuidを確認するための [Branch] ノードを追加します。この API クエリを Branch ノード内に追加します。Call UUID が見つかった場合、その通話はフォールバックコールと判断されます。必要に応じて Assign Variable 変数設定ノードを追加し、意適切に処理を分岐させます。
Call UUID が見つからない場合、
calluuidを含むコンテキストを新規作成します。
[Expert を公開] を選択します。
[ワークフローを公開] を選択します。
API のトラブルシューティング
ワークフロー内で API に関する問題が発生している場合は、以下の解決策をご検討ください。
API に接続できない
外部 API に接続できない場合、以下をご検討ください:
API が該当環境に対して解放されているか再確認します。
別のユーザーに依頼し、Postman でリクエストを実行して動作を検証します。
API ベンダーとの作業セッションをスケジュールし、トラブルシューティングを行います。
外部 API 呼び出しのみを行うワークフローを作成します。
API をワークフローに移行する
API をワークフローに組み込んだ後に問題が発生した場合は、以下をご検討ください:
リクエストビンまたはエンドポイントを使用します。
ワークフロー内から送信された場合、API リクエストの内容が予期せず変化される場合ががります。確信が持てないときは、URL をリクエストビンに変更し、リクエスト内容を記録して内容が正しいかどうか確認します。
ワークフロースクリプトの設定時は、API レスポンスの変数を読み上げる TTS ノードおよびエクスパート [Send a Message] ノードを活用し、JSON パスのトラブルシューティングを行います。
すべての変数は、本番公開前にテストし、ドキュメント化しておく必要があります。
発生しているエラーが特定できない場合は、Dialpad カスタマーサービスに詳細なログの提供を依頼してください。
API のタイムアウト
プラットフォームレベルでの API レスポンス待ちの最大タイムアウト値は、30秒に設定されています。これらを適切に管理するために、タイムアウト設定を活用してください。