ボットビルダー変数を使用すると、会話に関連するデータに基づいてメッセージングボットの回答をカスタマイズすることができます。メッセージングメタデータ変数はボットビルダーで使用される変数の一種で、現在のカスタマーの身元情報と認証ステータスに関する情報を格納します。
メッセージングメタデータ変数は、メッセージングの認証に使用される署名付きJSON Webトークン(JWT)から値を取得します。会話中に、メッセージングボットはこのデータを使用して、応答をカスタマイズしたり、カスタマーに関する情報を表示したり、会話フローを分岐させたりすることができます。
ボットの変数の概要、および回答での使用方法については、「変数を使用してボットの回答をパーソナライズする方法」を参照してください。
メッセージングメタデータ変数を有効にする
メッセージングメタデータ変数は、デフォルトでは有効になっていません。メッセージングメタデータ変数を有効にするには、管理者がメッセージング認証用のJWTの生成に使用される署名キーを作成する必要があります。メッセージング認証およびメッセージングメタデータ変数を利用可能なチャネルは、Web WidgetとモバイルSDKのみです。
メッセージング認証の設定について詳しくは、「Web WidgetおよびモバイルSDKのメッセージングでのエンドユーザーの認証」を参照してください。
サポートされるメッセージングメタデータ変数
メッセージングメタデータ変数の名前 | 説明 |
---|---|
提供されたメールアドレス | カスタマーのメールアドレス。このメールアドレスは、メッセージング認証に使用されるJWTから取り出されます。 |
指定された名前 | カスタマーの名前。この名前は、メッセージング認証に使用されるJWTから取り出されます。 |
認証済み外部ID | カスタマーを識別するための英数字から成る一意の文字列。このIDは、メッセージング認証に使用されるJWTから取り出されます。 |
認証済みステータス | trueの場合、カスタマーは認証済みです。認証されていなければ、falseです。この変数は常にtrueかfalseのいずれかで、空になることはありません。 「条件で分岐」ステップで「認証済みステータス」変数を使用する場合、=演算子のみサポートされます。 |
指定された名前と提供されたメールアドレスの変数の使用
指定された名前と提供されたメールアドレスの変数を使用する場合は、以下の点に注意してください。
- メッセージングボットは、「詳細を質問する」ステップで、認証済みカスタマーの「名前」変数と「メール」変数の収集を自動的にスキップします。認証済みのカスタマーの場合、これらの変数は空であり、会話の後のステップでスキップされます。この場合には、指定された名前と提供されたメールアドレスの変数を使用します。
「詳細を質問する」ステップで「名前」変数と「メール」変数の収集がスキップされた 指定された名前と提供されたメールアドレスの変数 - メッセージングの認証に使用されるJWTには、カスタマーの名前やメールアドレスは必要ありません。組織がJWTに名前またはメールアドレスを含めない場合、それぞれの「指定された名前」変数と「提供されたメールアドレス」変数は空で、会話中にスキップされます。
そのような場合は、JWTを編集して名前とメールアドレスを含めることをお勧めします。
- 未認証のカスタマーの場合、「指定された名前」変数と「提供されたメールアドレス」変数は空になっています。未認証のカスタマーの回答ステップでは、これらの変数を使用しないようにしてください。
未認証のカスタマーへのメッセージングメタデータ変数の使用
未認証のカスタマーの場合、「認証済みステータス」変数の値はfalseになります。その他のメッセージングメタデータ変数は、認証されていないカスタマーの場合は空であり、会話中にスキップされます。
メッセージングメタデータ変数の使用に関するベストプラクティス
メッセージングメタデータ変数を使用する回答を作成する場合は、以下のベストプラクティスを念頭に置いてください。
- メッセージングの認証に使用するJWTにカスタマーの名前やメールアドレスを含めない場合は、「指定された名前」変数と「提供されたメールアドレス」変数を使用しないでください。
- 認証済みと未認証の両方のカスタマーが利用できる回答フローを構築するには、「条件で分岐」ステップを使用して、カスタマーの「認証済みステータス」変数をチェックします。「認証済みステータス」がtrueの分岐には、メッセージングメタデータ変数のみを含めます。
- 認証済みのカスタマーのみが利用できる回答を構築していて、組織のJWTに名前とメールアドレスが含まれている場合、カスタマーの名前とメールアドレスには「指定された名前」変数と「提供されたメールアドレス」変数を使用します。このような場合、「詳細を質問する」ステップを使用して、この情報を再度収集する必要はありません。