メッセージノードを使用して、ユーザーにメッセージを配信できます。 メッセージノードは通常、API、Weサービスコール、またはWebフックイベントに従って、結果をフォーマット済みの応答として定義します。
ボット応答は、次のようにフォーマットできます。
- プレーンテキスト:プレーンテキストでメッセージを入力します。
保存されたコンテキスト値は、{{variable brackets}}
で使用できます。
例:’こんにちは{{context.session.UserContext.firstName}}。ご用件をどうぞ。'
- JavaScript : JavaScript応答を作成します。
- コンテキスト変数とセッション変数を使用してメッセージを動的に作成する場合、または
- さまざまなチャネルでサポートされているテンプレートやウィジェットを表示する場合。
例えば、 Facebookチャネル用のJavaScriptメッセージを作成して、 カルーセルテンプレートを表示することができます。 - オプションで、テンプレートを使用してHTMLレポート形式で情報を表示するリンクを生成し、そのURLを ボットメッセージと共有することができます。
例えば、 フライトの予約サンプルダイアログでは、次のメッセージノードが使用されます。
-
天気予報
:位置スクリプトノードを使用してフォーマットされた 天気Api サービスノードによって返された天気の詳細を表示します。 - 最終フライト情報:
フライト情報サービスノードによって返されるフライト旅程を表示します。 - ありがとう: 最終フライトの詳細を表示した後は、他のリクエストがあるかどうかをユーザーに確認します。
メッセージノードの設定
ダイアログタスクでメッセージノードを設定するには、以下のステップを実行します。
ボットの応答を設定する
- メッセージノードに名前と表示名を入力したら、
- ボットの応答セクションを使用して、ボットの応答をプレーンテキストまたはJavaScriptメッセージとして設定し、フォーマットすることができます。デフォルトのメッセージはプラットフォームによって設定されていますが、以下の方法でカスタマイズすることができます。
- メッセージを直接編集してエンターキーを押します。メッセージはプレーンテキスト形式で保存されます。
- 応答の管理をクリックします。ボット応答ウィンドウが開きます。さらにオプションがあります。
- コンテキストオブジェクト変数やjavascriptコードを追加してデフォルトのサンプルメッセージを編集するには、サンプルメッセージをクリックして変更します。
- 新しいボット応答を追加するには、ボット応答の追加をクリックします。
チャネルのドロップダウンリストでは、すべてのチャネルがデフォルト設定です。チャネル固有のメッセージを作成するには、リストからチャネルを選択します。
メッセージエディタでは、プレーンテキストタブがデフォルトで選択されています。Javascriptメッセージを作成したい場合は、JavaScriptタブをクリックしてください。
注意:現在コンテキストに保存されている任意の値を使用することができます。例:print('こんにちは'+ context.session.UserContext.firstName+ '.ご用件をどうぞ。')
- メッセージを作成し、保存をクリックします。
さらにボットの応答を追加するには、ステップ2bから繰り返します。
変数名前空間の構成
(ver8.0で導入)
- 変数名前空間]セクション(ver8.0で導入)で、このノードとその遷移の実行に使用される変数名前空間を関連付けます。このオプションは、ボットで変数名前空間が有効になっている場合にのみ表示されます。タスクレベルの設定を使用するか、このノード用にカスタマイズできます。詳細については、「名前空間の管理」を参照してください。
インスタンスプロパティを設定する
- 保留と再開:メッセージノードのインスタンスプロパティを使用して、このノードの保留と再開の動作を構成することができます。
注意:インスタンス プロパティパネルの設定は、現在のタスクに固有のものであり、このエンティティノードを使用している他のダイアログ タスクには反映されません。- タスクレベルの「保留を再開」設定の使用:ボットは、ダイアログタスクレベルで設定された保留と再開の設定を参照します。
- このノード用にカスタマイズするオプション:このオプションを選択して同じように構成することで、このノード用の保留と再開の設定をカスタマイズすることができます。詳細は 割り込み処理とコンテキスト切り替えの記事をお読みください。
- カスタムタグは、ボット会話のカスタムプロファイルを構築するためのタグを定義します。詳細はこちらを参照してください。
接続プロパティを設定する
ノードの接続パネルから、ダイアログタスクのどのノードを次に実行するかを決定することができます。ダイアログタスク内の任意のエンティティまたはコンテキストオブジェクトの値に基づいて条件文を記述したり、遷移にインテントを使用したりすることができます。
コンポーネント遷移を設定するには、以下のステップに従ってください:
- デフォルト接続の下にある利用可能なノードから選択することができます。
- 条件付きフローを構成するには、IF の追加をクリックします。
- 次のいずれかの基準に基づいて条件式を構成します。
-
エンティティ:これらの演算子のいずれかを使用して、ダイアログ内のエンティティノードを特定の値と比較します。存在する、~に等しい、~より大きいか等しい、~より小さいか等しい、 ~に等しくない、 ~より大きい、 ~より小さい。それぞれのドロップダウンリストを使用して、エンティティ、演算子を選択し、値ボックスに数値を入力します。例:乗客数 (エンティティ) が (演算子) 5 (指定された値)より大きい
- コンテキスト:これらの演算子のいずれかを使用して、ダイアログ内のコンテキストオブジェクトを特定の値と比較します:存在する、~に等しい、~より大きいか等しい、~より小さいか等しい、 ~に等しくない、 ~より大きい、 ~より小さい。
例: Context.entity.PassengerCount
(コンテキストオブジェクト)5(指定された値)より大きい(演算子) - インテント: (次のユーザーの発言と一致させるべきインテントを選択します。
IVR プロパティの設定
このタブを使用して、IVRチャネルで使用するこのノードの入力モード、文法、プロンプト、呼出し動作のパラメータをノードレベルで定義することができます。詳細はこちらを参照してください