自動ガイドボットのフローの要素には、以下の3つがあります。
-
ブロック
-
経路
-
変数
ブロック
ブロックは、ボットによる処理の流れを組み立てる上での基本的な要素(部品)です。さまざまな種類のブロックが用意されています。ブロックを追加することで、自動ガイドボット上で利用者(顧客、サポート対象者)に対してどのようなメッセージや質問を表示し、どのような情報を受け取るかを設定できます。
たとえば、自動ガイドボットにアクセスした顧客に対して挨拶メッセージを表示したい場合は、メッセージブロックを利用します。また、チャットの途中で顧客に対して写真を表示したい場合は、画像ブロックを利用します。
このように、顧客にどのような情報を提示し、顧客からどのような情報を収集したいかに応じて、最適なブロックを選択し、フローに追加します。
ブロックには、大きく分けると以下の2種類があります。
-
応答ブロック
-
処理ブロック
I. 応答ブロック
応答ブロックは、顧客に対してメッセージや質問を表示したり、顧客から回答(テキスト、選択内容)やファイルなどのデータを受信したりするために利用します。応答ブロックは、用途別に以下のとおり分類できます。
-
メッセージブロック
-
選択肢ブロック
-
質問ブロック
メッセージブロック
メッセージブロックを使用すると、顧客(サイト訪問者)に対してメッセージや情報を表示できます。たとえば、ボットからの挨拶メッセージを表示したり、商品やサービスに関する詳細情報をカード形式で表示したりすることが可能です。
メッセージブロックの種類
-
テキスト
:顧客(サイト訪問者)に対してテキストのメッセージを送信できます(例:ご利用ありがとうございます)。
-
情報カード
:カード内に画像やテキストなどの情報をまとめて表示できます。情報カードには、固定カードと動的カードの2種類があります。固定カードは、すべての顧客(サイト訪問者)に対して同一の内容を表示したい場合に使用します。一方、動的カードは、変数を使用して顧客(訪問者)ごとに個別の内容を表示したい場合に使用します。
たとえば、以下の画像では、情報カード(固定)のメッセージブロックを設定することで、顧客に対して商品に関する情報(写真、商品名、説明など)をカード形式で表示しています。
選択肢ブロック
選択肢ブロックを使用すると、質問に対する回答を複数の選択肢の中から選択してもらうことができます。
たとえば、「当店でのお買い物ははじめてですか?」という質問を表示し、「はい」と「いいえ」のいずれかの回答を選択してもらうことができます。また、「利用中のスマートフォンで不具合が発生している箇所を選択してください」という質問に対し、「液晶画面」、「バッテリー」、「ネットワーク」、「音声」、「アプリ」、「その他」などの選択肢を提示し、回答を選択してもらうことが可能です。
また、選択肢に関する詳細情報をカード形式で表示することもできます。
選択肢ブロックの種類
-
ボタン
:選択肢をボタン形式で表示します。選択形式として、単一選択か複数選択のいずれかを指定できます。
ボタンの種類としては以下のいずれかを選択できます。
-
テキスト
-
画像
-
音声
-
絵文字
-
フィードバック
-
動画
例:以下の画像では、顧客満足度を調査する選択肢ブロックで、選択肢に[フィードバック]と[絵文字]の種類のボタンを使用しています。
-
選択カード
:選択肢をカード形式で表示できます。カードにはタイトルやサブタイトル、画像などを追加できるため、選択肢に関して顧客により多くの情報を提示したい場合に適しています。設定では、固定カード(すべての顧客に対して同一の内容を表示するカード)とするか、動的カード(変数を使用して顧客ごとに個別の内容を表示できるカード)とするかを選択します。また、回答形式として単一選択と複数選択のいずれかを選択できます。
例:以下の画像では、顧客に商品を選択してもらうための選択肢ブロックにおいて、選択肢をカード形式で提示することで、顧客が商品を選択しやすいようにしています。
また、選択肢ブロックでは、顧客が選択した内容に応じて、その後の処理を分岐させ、異なる経路による処理を実行することができます。
例:「当店でのお買い物ははじめてですか?」という質問に対して、顧客が「いいえ」と回答した場合にのみ、続けて「前回購入された商品を選択してください」という質問を表示するような分岐処理を設定できます。
選択カードでは以下の設定を選択できます。
-
経路の作成
:有効にすると、各ボタンに対応する個別の経路を作成できます。
-
単一選択ボタンと複数選択ボタン
:有効にすると、単一選択または複数選択のボタンを設置できます。複数選択のボタンは、アンケートなどによくあるような複数回答形式の質問を提示したい場合に利用します。
メモ:
複数選択ボタンを選択している場合、経路の作成(各ボタンに対して個別の経路を作成する機能)は無効になります。これは、複数のボタンが選択された場合に、各ボタンに対応する複数の処理を同時に実行することはできないためです。
質問ブロック
質問ブロックを使用すると、顧客に対して質問したり、顧客から回答を受け取ったりすることができます。
また、顧客からの回答では、テキストを入力してもらうだけでなく、ファイルをアップロードしてもらったり、日時を選択してもらったりすることもできます。
たとえば、「ご利用ありがとうございます。こちらは自動応答チャットです」という挨拶に続けて、「お名前をご入力ください」、「サポートを受けたい製品をご選択ください」などのメッセージ(質問)を表示できます。メッセージのテキストには、簡単な書式を設定できるほか、変数を挿入することも可能です。たとえば、チャットの冒頭で顧客に名前を入力してもらった場合、質問ブロックの質問に変数として顧客の名前を含めることができます。具体的には、「@{askName}さん、サポートを受けたい製品を選択してください」と設定することで、山田さんという顧客が訪問したときに「山田さん、サポートを受けたい製品を選択してください」と表示できます。
各種類の質問ブロックで顧客から受信できるデータの種類は以下のとおりです。
質問ブロックの種類
|
データ
|
テキスト
|
顧客からテキスト形式の情報を受け取ります
|
画像
|
顧客から画像ファイルを受け取ります
|
動画
|
顧客から動画ファイルを受け取ります
|
音声
|
顧客から音声ファイルを受け取ります
|
スライダー
|
一定の範囲/目盛りから顧客に値を選択してもらいます
|
メールアドレス
|
顧客からメールアドレスの情報を受け取ります
|
URL
|
顧客からURLを受け取ります
|
通貨
|
顧客から、支払い/返金に関する詳細を受け取ります
|
カレンダー
|
顧客に日付/時間/日時を選択してもらいます
|
ファイル
|
顧客から音声、動画、画像、文書などのファイルを受け取ります(ファイルの形式に制限はありません)
|
数値
|
顧客から数値形式の情報を受け取ります。顧客は数値以外の値を入力することはできません。
そのため、アルファベットと数値の両方を含む情報を、この質問ブロックで受信することはできません。
メモ:
[数値]の他、[URL]と[メールアドレス]についても、入力規則に照らして入力されたデータの形式がチェックされます。たとえば、メールアドレスの場合、「@」記号や「.」が含まれているかどうかなどが確認されます。
|
質問ブロックでは、ブロック変数(ブロックで顧客から受信したデータを保存するための変数)の名前を変更することもできます。初期設定では、ブロック変数の名前としてブロック名が設定されます。たとえば、ブロック名が「PhotoEvidence」である場合、初期設定の変数名は「PhotoEvidence」となります。変数の名前を変更したい場合は、[入力内容を変数に設定する]欄で編集アイコンをクリックします。
メッセージ/質問の編集ツール
各ブロックの設定で、顧客に表示したいメッセージや質問を編集する際、テキスト入力欄の編集ツールでは以下の機能を使用できます。
-
テキストの装飾(太字、下線、斜体)
-
リンクの挿入
-
画像の挿入
-
動画の埋め込み
-
絵文字の挿入
-
変数の追加(共通変数/会話変数/個別変数)
II.処理ブロック
処理ブロックを利用すると、チャットの処理を他のブロック/フロー/サービスに関連付けたり、顧客からの反応に基づく条件分岐を作成したりできます。
たとえば、自動ガイドボットを通じてカーテンの注文を受け付ける場合、分岐ブロックを使用することで、顧客が既製品とオーダーメイドのどちらの種類のカーテンを購入したいかに応じて、異なるメッセージや質問などを提示することができます。
処理ブロックの種類(ジャンプブロック/分岐ブロック/Webhookブロック/操作ブロック):
ジャンプブロック
ジャンプブロックを使用すると、フローの処理を、あるブロックから別のブロックにジャンプさせることができます。具体的には以下のようなジャンプ処理が可能です。
-
同じフローの中で別のブロックにジャンプする
-
同じ部門の中にある別のフローのブロックにジャンプする
-
別の部門にあるフローのブロックにジャンプする
ジャンプブロックは、ある内容についてのやりとりに続けて、別の内容についてのやりとりを行いたい場合などに使用すると便利です。 ジャンプブロックでは入力変数と出力変数の関連付けが可能です。入力変数を関連付けると、ジャンプ元の変数の値をジャンプ先の変数の値に保存できます。出力変数を関連付けると、ジャンプ先の変数の値をジャンプ元の変数の値に保存できます。
以下ではジャンプブロックの活用例をご紹介します。
a) あるフローから別のフローにジャンプする例
ある旅行代理店では、自社のWebサイト上で自動ガイドボットを通じて航空券、宿泊施設、タクシーの予約を受け付けています。
自動ガイドボットでは、航空券、宿泊施設、タクシーのそれぞれのサービスについて別々の予約フローを使用しています。ここで、あるフローにおいて、別のフローにジャンプするためのジャンプブロックを設定しておくと、顧客はあるサービスについての予約を行った後、そのまま別のサービスの予約を開始することができます。また、入力変数や出力変数を関連付けることで、あるサービスの予約において取得した情報を、別のサービスの予約にも反映できます。これにより、顧客は同じ情報を何度も入力しなくて済むようになります。
具体例:
-
自動ガイドボットで航空券の予約を行った顧客に対して、「続けて、宿泊施設の予約を行いますか?」という質問を表示するとします。ここで、「はい」という選択肢の先にジャンプブロックを設置すると、顧客が「はい」を選択した場合に、宿泊施設の予約フローに移動する処理を実行できます。
-
このジャンプブロックで入力変数を関連付けると、航空券の予約の際に顧客に入力してもらった内容を宿泊施設の予約にも使用することが可能です。たとえば、航空券の予約フローで顧客に入力してもらったフライトの到着日を「
@dateOfArrival
」(到着日)という変数に保存し、この変数を宿泊施設の予約フローの変数「
@checkInDate
」(チェックイン日)に関連付けることができます。
同様に、出力変数を関連付けると宿泊施設の予約に際して発行された予約番号を「@bookingId」(予約番号)という変数に保存し、航空券の予約フローで表示することができます。
このように、入力変数や出力変数を関連付けることによって、一方のフローの変数に保存された値をもう一方のフローで使用することが可能です。これにより、顧客がスムーズに手続きを進められるようになります。
B) 同じフローの中で別のブロックにジャンプする例
モバイル端末の販売を行うある会社では、Webサイト上の自動ガイドボットを通じて、故障した端末の修理を受け付けているとします。
自動ガイドボットのフローでは、最初に端末を選択してもらい、端末識別番号(IMEI)と購入日を入力してもらいます。続けて、故障や不具合の内容を1つ選択してもらい、選択した内容に応じて、該当の故障や不具合に関する詳細な質問に回答してもらいます。その後、「他にも故障している箇所がありますか?」という質問を表示します。ここで、フロー上で「はい」という選択肢の先にジャンプブロックを設置し、ジャンプ先として故障や不具合の内容を選択する選択肢ブロックを指定します。これにより、顧客が「はい」という選択肢を選んだ場合に、故障や不具合の内容を選択する画面を再表示することができます。
このように、ジャンプブロックを使用すると、顧客が選択した内容に合わせて、処理の続きとしてふさわしいブロックにジャンプすることができます。
ジャンプブロックに見られるような処理は銀行のATMにおいても利用されています。銀行のATMで残高照会の処理を行った後に、[取引を続ける]等のボタンを押すと、次の取引(預金の引き出し、送金など)の選択画面に移動します。これはジャンプブロックと同様の処理によるものです。
分岐ブロック
分岐ブロックを使用すると、あらかじめ設定した条件に基づいて、チャットのフローを2つ以上の経路に分岐できます。フローでは、顧客に入力/選択してもらった情報が変数に保存されます。
分岐ブロックでは、このようにして変数に保存された値が特定の条件を満たすかどうかに基づいて、次の経路が決まります。条件の設定に使用できる変数には、以下のようなものがあります。
-
ブロック変数:ブロックで受け取った値を保存するための変数(対象のフロー内でのみ有効)
-
共通変数:複数のフローで共通的に利用できる変数
-
個別変数:対象のフロー内でのみ利用できる変数
ここで、分岐ブロックの設定例を確認してみましょう。あるモバイル端末の販売会社では、自動ガイドボットを使用して端末の返品や交換、修理などを受け付けています。この自動ガイドボットでは、顧客が不具合の内容を選択すると、選択した内容に合わせて、不具合に関する詳細な質問が表示されます。なお、不具合の詳細として選択した内容は、「@problemType」(問題の種類)という名前の変数に保存されます。この場合の分岐条件の設定例は以下のとおりです。
-
条件1:入力変数「@problemType」(問題の種類)に、「液晶画面の不具合」または「バッテリーの発熱」という値が保存されている
-
条件2:入力変数「@problemType」(問題の種類)に、「カメラの不具合」という値が保存されている
-
条件3:入力変数「@problemType」(問題の種類)に「SIMスロットの不具合」という値が保存されている
以上のような条件を設定することで、どの条件が満たされるかに応じて経路を分岐させ、顧客に別の質問を表示できます。
Webhookブロック
Webhookブロックを利用すると、自動ガイドボットの処理をZoho Deskや他のサービス(他のZohoサービスや外部サービス)の処理と連携できます。
たとえば、自動ガイドボットで顧客に入力してもらった内容をもとに、Zoho Deskの問い合わせやZoho CRMの連絡先を作成できます。これらのサービスとの連携は、APIを通じて行われます。そのため、APIを利用してアクセスできるデータや実行できる処理なら、Webhookブロックを通じて自動ガイドボットと連携できます。
参考情報:
自動ガイドボットにおけるWebhookの処理の設定
計算ブロック
計算ブロックを利用すると、計算処理を行い、チャット画面に結果を出力できます。計算ブロックの式には、共通変数や会話変数などの変数を使用することが可能です。設定であらかじめ保存しておいた値(共通変数)や、チャットのやりとりの中で取得した値(会話変数)を、各種計算に使用することができます。
たとえば、月々の支払い額を計算する場合に、共通変数としてあらかじめ保存しておいた利率の値を使用して計算を行い、その結果を出力できます。別の例としては、共通変数として商品単価をあらかじめ保存しておき、その値を使用して商品総額を計算するといったことも可能です。一方、顧客とのチャットの中で希望する数量を質問し、回答を会話変数として保存し、その値を合計金額の計算に使用するといった処理も可能です。計算の出力結果は、入力変数にいったん保存されます。メッセージブロックなどでその入力変数を利用することで、チャット画面上に計算結果を表示することが可能です。
ブロックの操作
フローの編集画面でブロックをクリックすると、ブロックに関するさまざまな操作を実行できます。実行できる操作は以下のとおりです。
-
[ブロックを編集する]:
ブロックの設定画面が表示され、ブロックの設定を編集できます。
-
[ブロックをコピーする]:
ブロック全体をコピーして、同じフロー内の別の場所で利用できます。
-
[経路をコピーする]:
ブロックの経路をコピーして、別のフローで利用できます。
-
[終了ブロックとして設定する]:
対象のブロックによるやりとりが完了したら、自動ガイドボットによるやりとりが終了するようにします(終了ブロックの先に経路やブロックを追加することはできません)。
-
[ブロックを削除する]:
ブロック全体を削除します。
-
[経路を削除する]:
経路全体を削除します。
高度な設定
ブロックの設定画面の[高度な設定]の欄では、以下の設定を行うことができます。
-
スキップ設定
:この設定が有効になっているブロックでは、質問に対する回答をスキップできます。たとえば、「性別を選択してください」という質問でスキップ設定が有効になっていると、顧客はこの質問に回答せずに次のメッセージ/質問を表示することができます。通常、スキップブロックは質問への回答が任意である場合に利用されるため、質問がスキップされた場合にも、フローにおける処理の流れが妨げられることはありません。
メモ:選択肢ブロックで、各ボタンに対応する個別の経路を作成する場合は、ブロックをスキップする設定を有効にすることはできません。
-
終了ブロック
:対象のブロックをもって、自動ガイドボットのやりとりを終了する場合に設定します。たとえば、やりとりの最後に「ご利用ありがとうございました」というメッセージを表示するブロックがあれば、そのようなブロックに対して設定します。
経路
経路とは、自動ガイドボットのフローで、処理がどのブロックに進んでいくかを指し示すものです。自動ガイドボットでは、顧客がどのような値を入力したかやどのような選択肢を選んだかに応じて、経路を分岐させることが可能です。これにより、まるで会話を行っているように、顧客の回答に対応するメッセージや質問を表示することができます。
たとえば、ある家具・インテリア用品の販売店の例を確認してみましょう。この企業では、オンラインストアで自動ガイドボットを通じて、カーテンの注文を受け付けています。顧客が購入できるカーテンには以下の2種類があります。
-
既製のカーテン
-
柄、素材、幅、丈、開き方などを指定したオーダーメイドのカーテン
これらの2種類のカーテンでは、顧客に入力してもらわなければならない情報も異なります。そのため、どちらの種類のカーテンを購入するかを顧客に選択してもらったら、経路を分岐させる必要があります。経路を分岐させることにより、既製のカーテンを購入する顧客とオーダーメイドのカーテンを購入する顧客に対して異なるメッセージや質問を表示できます。
経路という名前に表されているとおり、経路とは自動ガイドボットの処理がフロー(流れ図)上のどのブロックを通って進んでいくかを示すものです。経路は必要に応じてフロー内の別の場所にコピーできます。また、必要のない経路は削除することもできます。なお、経路を削除すると、対象の経路以下にある要素(ブロック、経路)はすべて削除されますのでご注意ください。
変数
変数は、自動ガイドボットのフローで値を保存するために使用します。ブロックで顧客に入力/選択してもらった内容を保存するために使用できる他、フロー内外の複数の場所で同じ値を使用したい場合などにも便利です。
変数には以下の種類があります。
-
ブロック変数:ブロックで受け取った値を保存するための変数
-
個別変数:対象のフロー内でのみ有効な変数
-
共通変数:複数のフローで共通的に有効な変数(固定値)
-
会話変数:顧客のブラウザーのセッションが有効な間のみ有効な変数
ブロック変数
質問ブロックと選択肢ブロックでは、ブロックを通じて顧客から受け取った値がブロック変数に自動で保存されます。これにより、その後のメッセージや質問で顧客に合わせた情報を表示できます(例:名前、予約番号、チケット番号、購入商品など)。
たとえば、「お名前をご入力ください」という質問に対して、顧客が「田中」と入力したとします。この場合、次の質問では顧客の入力内容を反映させて、「田中さん、次の選択肢からいずれか1つをご選択ください」といった質問を表示できます。
同様に、ブロック変数はWebhookブロックでも使用できます。Webhookブロックでは、出力変数が自動で作成されます。たとえば、問い合わせの作成に関するWebhookブロックを作成すると、「createTicketStatus」(問い合わせの作成ステータス)というブロック変数に値が自動で保存されます。
位置情報ブロック
では、緯度と経度の情報をブロック変数に保存できます。位置情報(緯度と経度の情報)は、地図とテキストの両方の形式でチャット上に表示されます。
個別変数
個別変数は特定のフロー内でのみ利用できる変数です。複数の部門やフローから使用することはできません。
個別変数では、値をあらかじめ指定できるため、特定の部門が管理しているWebサイトのURLや、顧客のメールアドレスなどを保存するのに適しています。
個別変数はフローの編集画面から作成できます。
共通変数
共通変数は、組織内で共通して利用することができます。特定のフローや部門に限定されることなく、複数のフローで使用することが可能です。そのため、組織名、本社の所在地や電話番号などを保存するのに適しています。これにより本社の所在地が変更した場合などにも、変数に保存する値を変更するだけで、すべての箇所に変更を反映できます。 共通変数の値には、固定値としてのみ保存可能です。値は、共通変数を作成する際に指定できます。たとえば、共通変数「orgName」(組織名)に「家具工房ジルカー」という値を設定したら、この変数はどのフローで使用されても「家具工房ジルカー」という値を表示します。
会話変数
自動ガイドボットでのやりとりを通じて取得した情報を保存するには、会話変数を使用します。会話変数は、組織内の複数のフローで使用できます。たとえば、会話変数を使用すると、ユーザーがWebサイトにどの国からサインインしているかなどの情報を取得できます。取得した情報に基づいて、どの言語でチャットを使用するかに関して、質問と選択肢を表示できます。
同様に、会話変数は、顧客がサインインしているかどうかや、有料ユーザー/未登録ユーザーであるかどうかなどを確認し、それに応じてフロー内の処理を分岐させるために使用できます。
なお、会話変数を作成する際には初期値を設定する必要があります。設定した初期値は、変数に値が保存されなかった場合に適用されます。たとえば、変数「region」(地域)の初期値を「日本」に設定したとします。この場合、顧客がどの地域からサインインしているかを特定できなかった場合は、変数「region」(地域)の値として初期値「日本」が適用されます。
フロー内に会話変数を使用した場合は、プレビューを表示して、会話変数が実際の自動ガイドボットでどのように表示されるかを確認できます。この際、会話変数にはテスト用の値を保存することが可能です。なお、プレビュー中にプレビュー画面の右上にある@(変数)アイコンをクリックすると、変数に保存するテスト用の値を変更できます。
会話変数のプレビューは、フローで会話変数を使用した場合にのみ表示できますのでご注意ください。
会話変数を作成するには:
-
画面右上にある
設定
アイコン→
[一般]
→
[自動ガイドボット]
→
[会話変数]
に移動します。
-
[会話変数を作成する]
をクリックします。
-
[変数名]
を入力します(例:地域、言語など)。
-
選択リストから
[変数の種類]
を選択します(テキスト/数字)。
-
[初期値]
を入力します(例:インド、英語など)。
-
[追加する]
をクリックします。
フローに関する指標データの表示
フロー公開後は、フローに関する指標データを確認できます。これにより、たとえば、フロー内の各経路を実際に何人の顧客がたどったか、といった情報を把握することが可能です。このような情報は、自動ガイドボットの利用状況の分析や、フローの改善に役立ちます。
たとえば、指標データをもとに以下のような分析や対応を行うことが可能です。
- 使用されていないジャンプブロックの経路を削除する
- 離脱者が多い箇所に、離脱理由を尋ねるフィードバックフォーム設置する
- フローの利用者が少ない場合、設置数を増やしたり、Webページの宣伝を行ったりして利用者の増加を図る
- 選択肢ブロックでクリック数が多い選択肢と少ない選択肢を分析し、改善を図る
分析対象の期間としては、過去7日間、15日間、30日間のいずれかを選択できます。フローは24時間ごとに自動で更新されます。フローが編集されるたびに、新しいバージョンが作成され、バージョンごとに指標データを確認することが可能です。
メモ:
指標データの表示は、公開中のフローにおいてのみ可能です。
顧客の人数はチャットのセッション数をもとに算出されます。顧客がチャットのセッションを何度も開始した場合は、開始した回数分だけ利用者の人数がカウントされます。
フローに関する指標データを表示するには:
- 画面右上の設定アイコンをクリックし、[一般]→[自動ガイドボット]→[案内フロー]の順に移動します。
- 公開中のフローの上にカーソルを重ねます。
- [フローの指標]アイコンをクリックします。