메시지 노드는 사용자에게 메시지를 보내는 데 사용됩니다. 메시지 노드는 API, 웹 서비스 호출 또는 Webhook 이벤트를 수행하여 결과를 형식화된 응답으로 정의합니다. 아래와 같이 봇 응답 형식을 지정할 수 있습니다.

  • 일반 텍스트: 메시지를 일반 텍스트로 입력합니다. {{variable brackets}}로 저장된 컨텍스트 값을 사용할 수 있습니다. 예: 'Hello {{context.session.UserContext.firstName}}. How can I help you?'
  • 자바스크립트: 다음을 위해 JavaScript 응답을 작성합니다.
    • 컨텍스트 변수 및 세션 변수를 사용하여 메시지를 동적으로 구성하려는 경우.
    • 다양한 채널에서 지원하는 대로 템플릿 또는 위젯을 표시하려는 경우. 예: JavaScript 메시지를 작성하여 Facebook 채널이 캐러셀 템플릿을 제공할 수 있습니다.
    • 선택적으로 템플릿을 사용하여 HTML 보고서 형식으로 정보를 볼 수 있는 링크를 생성하고 봇 메시지로 URL을 공유할 수 있습니다.

예: Book Flights 샘플 대화는 다음 메시지 노드를 사용합니다.

  • WeatherReport: 이것은 LocationScript 노드를 사용해 형식이 지정된 WeatherApi 서비스 노드가 반환한 날씨 세부 정보를 표시합니다.
  • FinalFlightinfo: Flights info 서비스 노드가 반환한 항공편 일정을 표시합니다.
  • 감사합니다: 최종 항공편 세부 정보를 표시한 후 사용자에게 다른 요청이 있는지 묻는 메시지가 표시됩니다.

설정

대화 작업에서 메시지 노드를 설정하려면 다음 단계를 수행합니다.

노드 추가

  1. 메시지 노드를 추가하려는 대화 작업을 엽니다.
  2. 지정된 위치에 메시지 노드를 추가합니다. 노드를 추가하는 단계의 경우, 여기를 참조하세요.
  3. 메시지 창은 기본적으로 구성 요소 속성 탭이 선택되어 표시됩니다.

노드 설정

구성 요소 속성

참고: 이 섹션에서 설정하거나 편집한 설정은 이 노드를 사용하는 다른 모든 대화 작업에 반영됩니다.
  1. 구성 요소 속성 탭의 일반 설정 섹션에서 메시지 노드의 이름표시 이름 이름을 입력합니다.
  2. 봇 응답 섹션에서 봇 응답을 일반 텍스트 또는 JavaScript 메시지 형태로 작성하고 형식을 지정합니다. 기본 메시지는 플랫폼이 설정하며 사용자 정의할 수 있습니다.
  3. 메시지 링크를 사용하여 봇 응답에 대한 채널별 메시지를 입력할 수 있습니다. 자세한 내용은 프롬프트 편집기 사용을 참조하세요.
  4. 봇 응답을 추가하려면 봇 응답 추가를 클릭하고 위의 단계를 반복하세요.

메시지를 보고서 링크로 생성합니다(선택 사항)

메시지 노드를 사용하여 링크를 생성하면 템플릿을 사용하여 HTML 보고서 형식으로 정보를 볼 수 있습니다. URL 링크를 봇 메시지에 추가할 수 있습니다. 봇 응답에 링크를 추가할 때 사용자는 링크를 선택하고 SalesForce 봇에서 마감된 판매 기회에 대한 테이블 값 등 자세한 세부 정보를 얻을 수 있습니다. 보고서 링크를 생성하려면 다음 단계를 수행하세요.

  1. 구성 요소 속성 탭의 보고서 URL 섹션에서 보고서 생성 링크를 클릭합니다. 이 이미지는 새 대화 빌더에 해당하며, 이 기능은 메시지 노드 -> 구성 요소 속성 위치에 있는 이전 빌더에서 찾을 수 있습니다.
  2. 보고서 생성 대화 상자에서 다음 값을 입력합니다.
    • 링크 제목 – 봇 채널에 표시되는 링크 텍스트입니다. 예: 쇼핑 카트 보기.
    • 헤더 – 보고서의 제목입니다. 예: 쇼핑 카트에 있는 품목입니다.
    • 세부 정보 – 헤더 바로 아래에 표시되는 최종 사용자 도움말 정보이며 보고서 내용을 설명합니다. 예: 쇼핑 카트 검토주문할 준비가 되면 계속을 클릭하세요.
    • 데이터 경로 – 데이터 경로이며 일반적으로 웹 서비스의 응답입니다. 예:context.ShoppingCartService.response.body
    • 템플릿 – 작업 응답에서 데이터를 표시하는 다음 형식 템플릿 중 하나를 선택합니다. 각 유형에 대해 열 이름, 키 매핑, 데이터 유형 및 템플릿별 옵션을 정의합니다.
      • 테이블 – 열이 정의된 테이블 형식을 사용합니다. 테이블 템플릿의 각 매핑은 정렬 가능 여부, 이미지로 표시링크로 표시로 설정됩니다. 자세한 내용은 테이블 보고서 정의하기를 참조하세요.
      • 고정 열 테이블 – 하나 이상의 열이 고정된 테이블을 사용합니다. 고정 열 테이블 템플릿의 각 매핑은 정렬 가능 여부, 고정된 열, 이미지로 표시링크로 표시로 설정됩니다. 자세한 내용은 고정 열 테이블 보고서 정의하기를 참조하세요.
      • 카드 레이아웃 – 연락처 카드 형식을 사용합니다. 카드 레이아웃 템플릿의 각 매핑은 정렬 가능 여부, 이미지로 표시링크로 표시로 설정됩니다. 자세한 내용은 카드 레이아웃 보고서 정의하기를 참조하세요.
      • 날씨 정보 – 날씨 서비스 응답 페이로드의 날짜를 정의합니다. 날씨 정보 템플릿의 각 매핑은 정렬 가능 여부, 이미지로 표시링크로 표시로 설정됩니다. 자세한 내용은 날씨 정보 보고서 정의하기를 참조하세요.
      • 그룹별 카드 레이아웃 – 특정 필드로 그룹화된 항목 목록을 표시합니다. 자세한 내용은 그룹별 카드 레이아웃 그룹별 보고서 정의하기를 참조하세요.
  3. 저장을 클릭합니다.

변수 네임스페이스

  • 변수 네임스페이스 섹션에서 이 노드와 전환을 실행할 변수 네임스페이스를 연결합니다. 이 옵션은 봇에 변수 네임스페이스를 사용하도록 설정한 경우에만 표시됩니다. 작업 수준 설정을 사용하거나 이 노드에 사용자 정의할 수 있습니다. 자세한 내용은 네임스페이스 관리를 참조하세요.

인스턴스 속성

  1. 메시지 창에서 인스턴스 속성 탭을 클릭합니다.
  2. 중단 동작 섹션에서 이 노드에 대한 중단 동작을 설정할 수 있습니다. 참고: 인스턴스 속성 탭의 설정은 현재 작업에만 해당되며 이 엔티티 노드를 사용하는 다른 대화 작업에는 반영되지 않습니다.
    • 작업 수준 '중단 동작' 설정 사용: 봇은 대화 작업 수준에서 설정된 중단 동작 설정을 참조합니다.
    • 이 노드 옵션을 위한 사용자 정의: 이 옵션을 선택하고 동일하게 설정하여 이 노드에 대한 중단 동작을 사용자 정의할 수 있습니다. 자세한 내용은 중단 처리 및 컨텍스트 전환 문서를 참조하세요.
  3. 맞춤형 태그 섹션에서 태그를 추가하여 봇 대화의 맞춤형 프로필을 작성하세요. 자세히 확인하려면 여기를 클릭하세요.

IVR 속성

이 탭을 사용하여 입력 모드, 문법, 프롬프트 및 IVR 채널에서 이 노드가 사용할 호출 동작 매개 변수를 정의할 수 있습니다. 노드 수준에서 수행됩니다. 자세한 내용을 확인하려면 여기를 클릭하세요

연결 속성

노드의 연결 탭에서 대화 작업에서 어떤 노드를 다음에 실행할지 결정할 수 있습니다. 대화 작업에서 엔티티 또는 컨텍스트 개체의 값을 기반으로 조건문을 작성하거나 전환을 위해 의도를 사용할 수 있습니다. 구성 요소 전환을 설정하려면 이 단계를 수행하세요.

  1. 메시지 창에서 연결 탭을 클릭합니다.
  2. 연결 탭의 연결 규칙 섹션의 기본값 드롭다운 목록에서 노드를 선택할 수 있습니다.
  3. 조건부 흐름을 설정하려면 IF 추가를 클릭합니다.
  4. 다음 조건 중 하나를 기준으로 조건식을 설정합니다.
    • 엔티티: 다음 연산자 중 하나를 사용하여 대화의 엔티티 노드와 지정된 값을 비교합니다. Exists, equals to, greater than equals to, less than equals to, not equal to, greater than, less than. 엔티티, 각 드롭다운 목록을 사용한 연산자를 선택하고 상자에 숫자를 입력합니다. 예: PassengerCount (엔티티) greater than (연산자) 5 (지정된 값):
    • 컨텍스트: 다음 연산자 중 하나를 사용하여 대화의 컨텍스트 개체와 지정된 값을 비교합니다. Exists, equals to, greater than equals to, less than equals to, not equal to, greater than, less than. 예: Context.entity.PassengerCount (컨텍스트 개체) greater than (연산자) 5 (지정된 값).
    • 의도: 다음 사용자 발화와 일치하는 의도를 선택합니다.
  5. Then go to 드롭다운 목록에서 조건식이 성공할 경우 대화 흐름에서 실행할 다음 노드를 선택합니다. 예: PassengerCount (엔티티) greater than (연산자) 5 (지정된 값), Then go to Offers (하위 대화).
  6. Else 드롭다운 목록 조건이 실패할 경우 실행할 노드를 선택합니다.
참고: 여러 If 조건을 작성하려면 마지막 If 조건식 아래에 있는 Else If 추가를 클릭합니다.

メッセージノードは、ユーザーにメッセージを配信するために使用されます。メッセージノードは、通常、API、Webサービスコール、またはWebhookイベントに従って、結果をフォーマット化された応答として定義します。ボットレスポンスは、以下のようにフォーマット化することができます。

  • テキスト形式:メッセージをテキスト形式で入力します。保存されているコンテキスト値を {{variable brackets}}で使用できます。例: 'Hello {{context.session.UserContext.firstName}}. How can I help you?'
  • JavaScript:以下のいずれかのJavaScriptの応答を作成します。
    • コンテキスト変数とセッション変数を使用してメッセージを動的に構築するため。
    • さまざまなチャネルでサポートされているテンプレートやウィジェットを表示するため。例として、Facebookチャネル用のJavaScriptメッセージを作成し、カルーセルのテンプレートを提示することができます。
    • オプションで、テンプレートを使用してHTMLレポート形式で情報を表示するためのリンクを生成することができ、また、そのURLをボットメッセージで共有することができます。

例として、フライトの予約のサンプルダイアログでは、以下のメッセージノードを使用します。

  • WeatherReportこれは、LocationScriptノードを使用してフォーマット化したWeatherApiサービスノードから返された天気の詳細を示します。
  • FinalFlightinfo:これは、フライト情報 サービスノードが返すフライトの旅程を表示しています。
  • ありがとうございます最終的なフライトの詳細を表示した後、他にリクエストがあるかどうかを指示します。

セットアップ

ダイアログタスクにおけるメッセージノードのセットアップは、以下の手順で行います。

ノードの追加

  1. ダイアログタスクを開き、メッセージノードを追加します。
  2. メッセージノードを指定された場所に追加します。ノードの追加手順についてはこちらをご参照ください
  3. メッセージウィンドウは、デフォルトではコンポーネントプロパティタブが選択された状態で表示されます。

ノードの設定

コンポーネントプロパティ

メモ:このセクションでセットアップまたは編集する設定は、このノードを使用する他のすべてのダイアログタスクに反映されます。
  1. コンポーネントプロパティタブの一般設定セクションで、メッセージノードの名前表示名を入力します。
  2. ボットレスポンスセクションでは、テキスト形式またはJavaScriptメッセージとして、ボットレスポンスを作成し、フォーマット化します。デフォルトのメッセージはプラットフォームによって設定されていますが、カスタマイズすることもできます。
  3. 管理リンクを使用して、ボットレスポンスにチャネル固有のメッセージを入力できます。詳細は、プロンプトエディターの使用をご参照ください。
  4. ボットレスポンスをさらに追加するには、ボットレスポンスの追加をクリックし、上記の手順を繰り返します。

メッセージをレポートリンクとして生成(オプション)

メッセージノードによって、テンプレートを使用して、情報をHTMLレポート形式で表示するためのリンクを生成することができます。URLリンクがボットメッセージに追加されています。ボットレスポンスにリンクを追加すると、ユーザーはそのリンクを選択して、SalesForceボットの販売機会終了に関する値のテーブルなどの詳細情報を手に入れることができます。レポートリンクを生成するには、下記の手順に従います。

  1. コンポーネントプロパティタブのレポート URLセクションで、レポートの生成リンクをクリックします。 この画像は新しいダイアログビルダーに対応していますが、従来のビルダーでも同じ位置(つまり、メッセージノード->コンポーネントのプロパティ)でこの機能を見つけることができます。
  2. レポートの生成ダイアログボックスで、以下の値を入力します。
    • リンクタイトル – ボットチャネルに表示されるリンクテキスト。例:ショッピングカートの表示
    • ヘッダー – レポートのタイトル。例:「ショッピングカートの中にアイテムが入っています」。
    • 詳細 – ヘッダーの直下に表示されるエンドユーザー向けのヘルプ情報で、レポートの内容を説明しています。例として、ショッピングカートの中を見直し、注文の準備ができたら「続ける」をクリックします。
    • データパス – データのパスであり、通常はWebサービスからの応答です。例:context.ShoppingCartService.response.body
    • テンプレート – タスク応答のデータを表示するためのフォーマットテンプレートを以下から1つ選択します。各タイプには、列名キーマッピングデータ型、およびテンプレート固有のオプションを定義します。
      • テーブル – 定義された列があるテーブル形式を使用します。テーブルテンプレートの各マッピングは並べ替え可能画像で表示、およびリンクで表示に設定されています。詳細は、テーブルレポートの定義をご参照ください。
      • 固定列テーブル – 1つ以上の固定列があるテーブル形式を使用します。固定列テーブルテンプレートの各マッピングは、並べ替え可能固定列で表示画像で表示、およびリンクで表示に設定されています。詳細情報は、固定列テーブルレポートの定義をご参照ください。
      • カードレイアウト – コンタクトカード形式を使用しています。カード レイアウトテンプレートの各マッピングは、並べ替え可能画像で表示、およびリンクで表示に設定されています。詳細情報は、カードレイアウトレポートの定義をご参照ください。
      • 天気情報 – 天気サービスレスポンスペイロードの日付を定義します。天気情報テンプレートの各マッピングは、並べ替え可能画像で表示、およびリンクで表示に設定されています。詳細情報は、天気予報レポートの定義をご参照ください。
      • グループ別のカードレイアウト – 特定のフィールド別にグループ化されたアイテムのリストを表示します。詳細情報は、グループ別のカードレイアウトレポートの定義をご参照ください。
  3. 保存をクリックします。

可変ネームスペース

  • 可変ネームスペースセクションでは、可変ネームスペースを関連付けてこのノードとその遷移を実行します。このオプションは、可変ネームスペースがボットに対して有効になっている場合にのみ表示されます。タスクレベルの設定を使用するか、またはこのノード用にカスタマイズできます。詳細情報は、ネームスペースの管理をご参照ください。

インスタンスプロパティ

  1. 「メッセージ」ウィンドウで、インスタンスプロパティタブをクリックします。
  2. 割り込み動作セクションでは、このノードの割り込み動作を設定できます。メモ:[インスタンスプロパティ]タブの設定は、現在のダイアログタスクに固有のものであって、このノードを使用して他のダイアログタスクに反映させることはできません。
    • タスクレベルの「割り込み動作」の設定を使用:ボットは、ダイアログタスクレベルで設定された割り込み動作の設定を参照します。
    • このノードオプションのカスタマイズ:このオプションを選択してその設定を行うことで、このノードの割り込み動作の設定をカスタマイズできます。詳細情報は、割り込み処理とコンテキストの切り替えの記事をご参照ください。
  3. カスタムタグセクションにおいて、タグを追加して、ボット会話のカスタムプロファイルを作成します。詳しくはこちらをクリックしてください

IVRプロパティ

このタブを使用して、このノードがIVRチャネルで使用する入力モード、文法、プロンプト、および呼び出し動作パラメータを定義できます。それはノードレベルで行われます。詳細はこちらをクリックしてください

接続プロパティ

ノードの接続タブから、次に実行するダイアログタスクのノードを決定できます。条件文は、ダイアログタスク内の任意のエンティティやコンテキストオブジェクトの値に基づいて記述することも、遷移にインテントを使用することもできます。コンポーネント遷移をセットアップするには、以下の手順に従います。

  1. 「メッセージ」ウィンドウで、接続タブをクリックします。
  2. 接続タブの接続ルールセクションでは、 デフォルトドロップダウンリストからノードを選択することができます。
  3. 条件付きのフローを設定するには、IFの追加をクリックします。
  4. 以下のいずれかの基準に基づいて、条件式を設定します。
    • エンティティ:これらの演算子のいずれかを使用して、ダイアログ内のエンティティノードを特定の値と比較します。存在する、等しい、等しいより大きい、等しいより小さい、等しくない、より大きい、より小さい。それぞれのドロップダウンリストを使用して、エンティティ、演算子を選択し、ボックスに数値を入力します。例:PassengerCount(エンティティ)は5(指定値)より大きい(演算子)
    • コンテキスト:これらの演算子のいずれかを使用して、ダイアログ内のコンテキストオブジェクトを特定の値と比較します。存在する、等しい、等しいより大きい、等しいより小さい、等しくない、より大きい、より小さい。例: Context.entity.PassengerCount (コンテキストオブジェクト)が(演算子)5(指定値)より大きい。
    • インテント:次のユーザーの発話に一致するインテントを選択します。
  5. 次へ進むドロップダウンリストで、条件式が成功した場合にダイアログフローで実行する次のノードを選択します。例として、PassengerCount (エンティティ) が(演算子) 5 (指定値)より大きい場合、次へ進むオファー(サブダイアログ)になります。
  6. その他ドロップダウンリストで、条件が失敗した場合に実行するノードを選択します。
メモ:複数のIf条件を書きたい場合は、最後のIf条件式の下のその他の条件を追加をクリックします。

The Message Node is used to deliver a message to the user. Message nodes commonly follow an API, web service call, or webhook event to define their results as a formatted response.
You can format bot responses as below:

  • Plain text: Type a message in plain text. You can use stored context values with {{variable brackets}}. For example: 'Hello {{context.session.UserContext.firstName}}. How can I help you?'
  • Javascript: Compose JavaScript responses either:
    • For dynamically constructing messages using context and session variables.
    • for displaying templates or widgets as supported by various channels.
      For example, you can compose a JavaScript message for Facebook Channel to present a Carousel template.
    • Optionally, you can generate links to view the information in an HTML report format using templates and share the URL with the bot message.

For example, the Book Flights sample dialog uses the following message nodes:

  • WeatherReport: This shows the weather details returned by the WeatherApi Service node, formatted using the LocationScript node.
  • FinalFlightinfo: This shows the flight itineraries that the Flights info service node returns.
  • Thanks: After showing the final flight details, prompts the user if they have any other requests.

To understand customized JavaScript responses and channel-specific templates, refer to Customize JavaScript Responses in User Prompts.

Set-Up

Setting up a Message node in a dialog task involves the following steps:

Add Node

  1. Open the dialog task to add the Message node.
  2. Add message node in the designated place. For steps in adding nodes, refer here.
  3. The Message window is displayed with the Component Properties tab selected by default.

Configure Node

Component Properties

Note: The configurations you set up or edit in this section reflect in all other dialog tasks that use this node.
  1. On the Component Properties tab, under the General Settings section, enter a Name and Display Name for the message node.
  2. Under the Bot Responses section, compose and format the bot response either as plain text or as a JavaScript message. A default message is set by the platform, you can customize it.
  3. You can enter channel-specific messages for bot responses using the Manage link. For more information, refer to Using the Prompt Editor.
  4. To add more bot responses, click Add Bot Response and repeat the above steps.

Generate Message as Report Link (Optional)

The Message node allows you to generate links to view the information in an HTML report format using templates. The URL link is added to the bot message. When you add a link to a bot response, the users can select the link and get more details, such as a table of values for Closed Sales Opportunities in the SalesForce Bot.
To generate a report link, follow the below steps:

  1. On the Component Properties tab, under the Report URL section, click Generate Report Link.

    This image corresponds to the new dialog builder, you will find this feature in legacy builder at the same location i.e. Message node -> Component Properties.
  2. On the Generate Report dialog box, enter the following values:
    • Link Title – The link text displayed in the bot channel. For example, View Shopping Cart.
    • Header – The title of the report. For example, These are the items in your Shopping Cart.
    • Details – End-user help information displayed directly below the header, describing the content of the report. For example, Review your Shopping Cart, and then click Continue when you are ready to place your order.
    • Data Path – Path for the data, usually the response from the web service. For example, context.ShoppingCartService.response.body
    • Template – Select one of the following format templates to display the data from the task response. For each type, define the Column Name, Key Mapping, Data Type, and template-specific options.
      • Table – Uses a table format with defined columns. Each mapping for the Table template is set to Is Sortable, Display as an image, and Display it as a link. For more information, refer to Defining a Table Report.
      • Fixed Column Table – Uses a table format with one or more columns fixed. Each mapping for the Fixed Column Table template is set to Is Sortable, Column in fixed, Display as an image, and Display it as a link. For more information, refer to Defining a Fixed-Column Table Report.
      • Card Layout – Uses a contact card format. Each mapping for the Card Layout template is set to Is Sortable, Display as an image, and Display it as a link. For more information, refer to Defining a Card Layout Report.
      • Weather Info – Define a date for a weather service response payload. Each mapping for the Weather Info template is set to Is Sortable, Display as an image, and Display it as a link. For more information, refer to Defining a Weather Info Report.
      • Card Layout with Group By – Shows a list of items grouped by a specific field. For more information, refer to Define a Card Layout with Group By Report.
  3. Click Save.

Variable Namespace

  • In the Variable Namespaces section, associate the variable namespaces to execute this node and its transitions. This option is visible only when the Variable Namespace is enabled for the bot. You can go with the task level settings or customize it for this node. For more information, refer to Managing Namespace.

Instance Properties

  1. On the Message window, click the Instance Properties tab.
  2. Under the Interruptions Behavior section, you can configure the interruptions behavior for this node.
    Note: The settings in the Instance Properties tab are specific to the current task and do not reflect in other dialog tasks that use this node.

    • Use the task level ‘Interruptions Behavior’ setting: The bot refers to the Interruptions Behavior settings set at the dialog task level.
    • Customize for this node option: You can customize the Interruptions Behavior settings for this node by selecting this option and configuring the same. Refer to Interruption Handling and Context Switching article for more information.
  3. Under the Custom Tags section, add tags to build custom profiles of your bot conversations. Click here for more.

IVR Properties

You can use this tab to define the input mode, grammar, prompts, and call behavior parameters for this node to use in IVR Channel. It is done at the node level. Click here for details

Connections Properties

From the node’s Connections tab, you can determine the node in the dialog task to execute next. You can write the conditional statements based on the values of any Entity or Context Objects in the dialog task, or you can use intents for transitions.
To setup Component Transitions, follow these steps:

  1. On the Message window, click the Connections tab.
  2. On the Connections tab, under the Connection Rules section, you can select nodes from the Default drop-down list.
  3. To configure a conditional flow, click Add IF.
  4. Configure the conditional expression based on one of the following criteria:
    • Entity: Compare an entity node in the dialog with a specific value using one of these operators: Exists, equals to, greater than equals to, less than equals to, not equal to, greater than, and less than. Select the entity, operator using the respective drop-down lists, and type the number in the Value box. For example, PassengerCount (entity) greater than (operator) 5 (specified value).
    • Context: Compare a context object in the dialog with a specific value using one of these operators: Exists, equals to, greater than equals to, less than equals to, not equal to, greater than, and less than. For example, Context.entity.PassengerCount (Context object) greater than (operator) 5 (specified value).
    • Intent: Select an intent that matches the next user utterance.
  5. In the Then go to drop-down list, select the next node to execute in the dialog flow if the conditional expression succeeds. For example, if the PassengerCount (entity) greater than (operator) 5 (specified value), Then go to Offers (sub-dialog).
  6. In the Else drop-down list, select the node to execute if the condition fails.
Note: If you want to write multiple If conditions, click Add Else If below the last If conditional expression.