Twilio Studioで問い合わせ後のお客様フィードバックをアンケート収集する
読む所要時間: 14 分
顧客満足度調査は、顧客体験を改善するために必要なフィードバックを収集する画期的な方法です。IVR(自動音声応答)アンケートを利用することで、重要なフィードバックを収集することができ、不必要な電話業務から解放されます。
しかし、ここで課題となるのは顧客がアンケートの途中で離脱するのをいかに防ぐかで、この課題に対する解としてIVRを活用することができます。まずアンケートを開始する前に、お客様の同意を求めることができます。そうすることで、アンケートに協力してもよい人にのみ参加をしていただき、離脱者を最小限に抑えることができます。また、同意を得た後に離脱した人に電話をかけ直して、アンケートに参加してもらえる可能性を高めることもできます。
このブログ記事では、TwilioのステートフルなビジュアルワークフロービルダーであるTwilio Studioを使った実現方法を紹介します。まずStudioフローを作成し、オペレータと話した後に顧客からフィードバックを収集するホットライン用のIVRを構築します。ドラッグ&ドロップのユーザーインターフェースを使用して、本ユースケースのIVR要素をどのように配置するか、またローコードの要素を使用してホットラインを更に高度化する方法についてご紹介します。最後に、サーバーやDevOpsを必要とせず、ボタンをクリックするだけで簡単にフローをデプロイします。
前提条件
始める前に、Twilioのアカウントと、IVR用の電話番号を用意する必要があります。まだお持ちでない方は、以下のリンクをご参照ください。
- 無料のTwilioアカウント(サインアップのフォーム)
- Twilioの電話番号(サポートサイト上の英語記事)
(「+81」で始まる日本国内の電話番号を取得するには、規制情報の承認手続きなど必要となる段階が存在し、米国等の他地域に比べて若干お手間となります。予めご了承くださいませ。)
新規フローを作成する
Studioダッシュボードを開きます。[Create new Flow](新規フローを作成)を選択するか、すでにフローが存在する場合は「+」ボタンをクリックし、フローの名前を設定します。次に、[Start from scratch](ゼロから始める)テンプレートを選択し、[Next] をクリックすると、Studioキャンバスに新しい空白フローが自動的に作成され、読み込まれます。
Studioキャンバスは、3つの主要な要素で構成されています。
- トリガー - このウィジェットはフローの入口として機能し、通話の着信、SMSの受信、APIリクエスト、またはサブフローを経由して、個別のフローをトリガーすることができる4つの導線が含まれています。
- ウィジェットライブラリ - フローの構築を開始するには、右側のウィジェットライブラリからウィジェットをキャンバスにドラッグ&ドロップします。ドロップ後、ウィジェットの設定と編集が可能です。次に、イベントや指定された条件に基づいて、1つのウィジェットから次のウィジェットへの遷移を使用(キャンバス上の結線)して、フローがどのように進むかを定義することができます。
- パブリッシュ(発行) - Studioフローは、変更するたびに自動的に保存されます。フローを変更すると、上部のコンテナに [Publish] ボタンが表示されます。ここをクリックするだけで、フローが本番環境に発行処理されます。
フローに電話番号を割り当てる
ホットラインの構築を開始する前の最後のステップとして、StudioフローをTwilioの電話番号に関連づけます。Twilioコンソール(管理画面)の [Active Numbers] ページにアクセスし、対象となる電話番号をクリックし、[Voice] セクションまでスクロールダウンし、作成したStudioフローを関連付けることで電話番号のルーティング(その通話がどのように処理されるか)を調整することができます。最後に [Save] ボタンを押して完了です。
今回のフローを構成する主なウィジェット
アンケートを通じて顧客のフィードバックを収集するフローを作成するというタスクに着手しましたが、これを可能とするのがStudioウィジェットです。ウィジェットは、Studioのキャンバスにドラッグ&ドロップして、特定のTwilioタスクを実行するためのビルディングブロックです。
ユーザーへの挨拶
このフローは、顧客が電話を掛けてきた直後に、音声ガイダンスを提供することを想定しています。これを実現するために、[Say/Play] ウィジェットを使用します。
フローに「言って」ほしいメッセージを追加し、このウィジェットをメインウィジェット(トリガーウィジェット)の [Incoming Call] に接続します。音声合成ベースの場合、複数の言語(例: 英語)やロケール(例: 豪州の英語)を選択できるほか、テキストを話す音声の種類を選択することもできます。メッセージを言う代わりにメッセージを再生する場合は、[SAY OR PLAY MESSAGE OR DIGITS] のドロップダウンから [Play a Message] を選択することができます。具体的には、録音された音声や音楽を再生できるオーディオファイルを指すURLを追加することが可能です。
情報を収集する
挨拶の次は、通話後のアンケート参加に同意していただく段階です。合意いただいたかの情報の収集は、DTMFトーンまたは音声テキスト化によって行います。ウィジェットライブラリの [Gather] ウィジェットを使用することで、これを実現することができます。
この例では、ユーザが英語で挨拶し、DTMFと音声で入力情報を収集したいと思います。ただし、入力は「Yes」か「No」のどちらかに制限し、冒とく的な言葉にはフィルタをかけます。このような点を考慮して、[Gather Input On Call] ウィジェットを構成します。
オペレータに通話を転送する
これで、必要な情報が収集できました。次に、オペレータに通話を転送します。対象となるオペレータのグループがあり、最初に通話に応答したオペレータが顧客に接続されます。これは、[Connect Call To] ウィジェットで実現できます。[Connect Call To] 属性を [Multiple Numbers (Simulring)] に設定すると、すべてのオペレータを同時に呼び出し、最初に応答したオペレータが顧客に接続されることになります。同様に、1つの番号に電話をかけたり、他のユーザーを追加してオペレータと電話会議を行う(お客様を含め1通話に3人以上がつながる)ことも可能です。通話が終了したら、通話を切断したのが誰なのか、発信側なのか、オペレータなのかを考慮して、どのようにフローを進めるかを選択することができます。
ロジックを組み込む
さて、このフローの重要部分の1つは何らかのロジックを組み込む点です。この例では、ユーザーがアンケートに参加する(または参加しない)ことを選択する部分です。次のウィジェットでは、アンケートの同意を求められた段階で押された数字情報にアクセスし、1を選んでいればアンケートへと誘導し、そうでなければ「ありがとうございました」メッセージとともに電話を切ります。このようなロジックのチェックを行うことで、フローを汎用的に保ち、多くのケースを処理し、複数のユースケースでフローを機能させることができます。[Split Based On] ウィジェットを使用すると、前のステップで設定した値に基づいてフローを分岐することができます。
サブフローの呼び出し
最後は、ユーザーをアンケートに誘導する部分です。この例では、本セクションのタイトル「サブフローの呼び出し」が暗示するように、アンケート自体もStudioフローで作成していります。目的毎にフローをデザインすることにより、デザイン作業がモジュール化され、Studioフローが乱雑にならないため、複数のStudioフローでカスタマージャーニーをスッキリと維持することが非常に容易になります。もちろん、[Run Subflow] ウィジェットを使用して、フローに出たり入ったりすることもできます。[Run Subflow] ウィジェットで、[SELECT A FLOW] ドロップダウンからアンケート用に用意されたStudioフローを選択し、[Save] をクリックします。
[Run Subflow] ウィジェットの実行結果が [Completed] および [Failed] の状態になった場合、別のウィジェットに接続することも選択できます。
これですべての要素が追加され、Studioのフロー全体がまとまりました。[Publish] ボタンをクリックすると、フローが発行・公開され、誰でも動作確認できるようになります。
SMSでアンケートに感謝する
アンケートの最後に、アンケートに答えてくれたお客様に感謝のメッセージを送りましょう。
メッセージはSMSで送信します。[Send Message] ウィジェットを追加し、それをサブフローの実行ウィジェットの [Completed] 部分に接続します。ウィジェットの [MESSAGE BODY] プロパティにメッセージの内容を追加することを忘れないでください。
上記のステップをすべて実行すると、Studioの全体フローは次のようになります。
少しだけ応用編
アンケートに参加する前にユーザーが通話を切断した場合はどうすればよいでしょうか。自動的に電話をかけ直して、アンケートを開始することができれば最高です。これを実現するために、Twilio Serverlessを利用することができます。
ServerlessにおけるFunctionsの機能を使うと、Twilioクラウド上にホストされたパブリックエンドポイントからNode.jsのアプリケーションロジックに到達することができます。GitHubリポジトリを確認し、以下のFunctionsコードをすぐに使い始めてみてください。
さらに、TwiML(Twilio Markup Language)というXMLドキュメント形式のTwilioコマンド体系があり、TwiML言語でスクリプトを書くようにプログラミングできます。今まで見てきたウィジェットは、幸いにもすべてTwiML言語で表現することができ、ビジュアルなツールが好きな方はTwilio Studio、スクリプトを書くように作業したい方はTwiMLといった使い分けも可能です。
これでひと通りの作業が完了した形となります。携帯電話を取り出して、このフローをテストしてみましょう。このStudioフローを接続した番号に電話をかけます。全行程を試せるはずです。
今回、問い合わせ後のお客様フィードバックを収集するためのサーバーレスIVRフローを完成させることができました。もし面白いと思っていただけたなら、Twilio StudioでIVRフローを作成する別のアプローチについて解説しているブログ(日本語版)も、ぜひご確認ください。
Twilioでは、Studioといったツールを活用し、読者の皆さんがコミュニケーションの未来を創造することを楽しみにしています。
エピローグ: ぜひお試しください
本稿で解説したフローは、上記の手順を辿ることでキャンバス上で順を追って作成できますが、簡単にテストしたい場合は、JSONデータ(ホットラインフロー用、アンケートフロー用)を使ってフローをインポートすることができます。Studioフローを新規作成する上述の説明と同じ手順で、[Import from JSON] オプションを選択するだけです。次に、[Next] をクリックし、フローのJSONデータを貼り付けます。ぜひお試しください。
Prashanth Swaminathanは、問題解決に情熱を注ぐ技術愛好家です。チームがTwilioのパワーを活用し、高品質な製品を構築できるよう支援しています。連絡先は pswaminathan [at] twilio.com です。
WidedはTwilioのベルリンオフィスでソリューションエンジニアとして働いています。彼女は、顧客がTwilioを使って創造的なソリューションを構築するのを支援することで、人とテクノロジーのユニークで活気のある接点を実現しています。連絡先は wagrebi [at] twilio.com です。