仮想エージェントボット統合 API
仮想エージェントボット統合 API は、ユーザーが任意のチャットインターフェイスまたはボットエコシステムをServiceNow 仮想エージェントまたはライブエージェントと統合できるようにするエンドポイントを提供します。
この API は、 仮想エージェント で提供される会話型カスタムチャット統合フレームワークに基づいてビルドされ、 sn_va_as_service 名前空間で動作します。
仮想エージェントボット統合 API のインストールと構成の詳細については、「仮想エージェント API」を参照してください。
VA ボット統合 - POST /sn_va_as_service/bot/integration
指定されたメッセージ、添付ファイル、または URL を指定されたセカンダリ ServiceNow 仮想エージェント (VA) ボットに送信します。
顧客のサイトには、1 つ以上のセカンダリ ServiceNow ボットを配置できます。ServiceNow VA セカンダリボットにメッセージを渡すだけでなく、プライマリボットまたはチャットクライアントはライブエージェントチャットを介してこのエンドポイントを使用し、エージェントにメッセージを渡すことができます。要求の本文で渡された action パラメーターを使用して、指定されたコンテンツの処理方法を指定します。
URL 形式
デフォルトの URL:/api/sn_va_as_service/bot/integration
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| なし |
| 名前 | 説明 |
|---|---|
| なし |
| 名前 | 説明 |
|---|---|
| action | VA が実行する必要があるアクション。 有効な値:
データタイプ:文字列 デフォルト:null |
| botToBot | 会話がボット間 (プライマリボットとセカンダリボット間など) であるかどうかを示すフラグ。 可能な値:
データタイプ:ブーリアン デフォルト:true |
| 原因 | チャット会話の障害の原因 ( EXTERNAL_FAILUREなど)。このプロパティは、 action プロパティが FAULT_CONVERSATION に設定されている場合にのみ使用されます。 データタイプ:文字列 |
| clientSessionId | エンドユーザーが ServiceNow ボット またはサポートされているサードパーティのチャットアプリケーションとの通信に使用しているアプリケーション/サービスの一意のクライアントセッション識別子。
テーブル:インタラクション [interaction] データタイプ:文字列 デフォルト:null |
| clientVariables | 応答で返されるパススルー JSON 形式の名前と値のペア。これらの値はエンドポイントによって処理されませんが、特定の顧客情報を会話に添付するために使用できます。 データタイプ: オブジェクト デフォルト:null |
| contextVariables | ユーザーに関する追加情報を提供する JSON 形式の名前と値のペア。この情報を入力して、会話エクスペリエンスをカスタマイズします。コンテキスト変数の詳細については、「 チャットコンテキスト変数の定義と公開」を参照してください。 たとえば、次のようになります。 データタイプ:オブジェクト デフォルト:null |
| emailId | アカウントのリンクを有効にする場合は必須です。それ以外の場合は、すべてのユーザーがゲストユーザーと見なされます。チャットクライアントのエンドユーザー、ボットがやり取りしているユーザーのメールアドレス。アカウントのリンクの詳細については、「 ServiceNow ユーザーアカウントを仮想エージェント対話用のメッセージングアプリケーションにリンクする」を参照してください。 データタイプ:文字列 |
| history | ユーザーによる最初の要求から開始される、ユーザーとプライマリボットの会話の履歴。 データタイプ: オブジェクト |
| history.displayName | メッセージの送信先ユーザーの名前。プライマリボットの場合は、Bot を渡します。 データタイプ:文字列 |
| history.isBotMessage | メッセージがプライマリボットによって送信されたかどうかを示すフラグ。 有効な値:
データタイプ:ブーリアン |
| history.timestamp | メッセージが送信された時刻を示すタイムスタンプ (ミリ秒単位)。 有効な値:13 桁の Unix タイムスタンプ データタイプ:文字列 |
| history.type | 送信されたメッセージのタイプ。 有効な値:text データタイプ:文字列 |
| history.value | 情報のコンテンツ。たとえば、メッセージテキストです。 データタイプ:文字列 |
| インテント | 会話の意図を説明します。action パラメーターが SWITCH に設定されている場合は、この情報を指定します。データタイプ:オブジェクト |
| intent.id | 会話の切り替え先となるシステムトピックの NLU インテント ID。intent.id は、チャットセッションで渡された言語に基づいて解決されます。会話の開始時に言語が渡されない場合は、ユーザーのセッション/プロファイルから言語が取得されます。 データタイプ:文字列 テーブル:CS トピック言語 [sys_cs_topic_language] |
| メッセージ | 必須。ServiceNow ボットに送信するメッセージの詳細。 データタイプ:オブジェクト |
| message.attachment | 添付ファイルを送信する場合は必須です。送信する各添付ファイルの詳細。 添付ファイルは URL としてのみ渡すことができます。すべての添付ファイルに対してウイルススキャンがトリガーされます。添付ファイルのサイズに制限はありませんが、大きなファイルは転送にかなりの時間がかかる場合があります。 データタイプ:オブジェクトのアレイ |
| message.attachment.clientAttachmentId | ServiceNow ボットに送信する添付ファイルの一意の識別子。この識別子の形式は、実装者が決定します。 データタイプ:文字列 デフォルト:null |
| message.attachment.contentType | 添付ファイルが指定されている場合は必須です。添付ファイルの標準的な MIME タイプ。 有効な値 (値の大文字と小文字を区別しない):
データタイプ:文字列 |
| message.attachment.fileName | 添付ファイルが指定されている場合は必須です。添付ファイルのファイル名。 データタイプ:文字列 |
| message.attachment.headers | 添付ファイルが非公開で保護されている場合に必要な追加情報。 データタイプ:オブジェクト |
| message.attachment.headers.Authorization | 添付ファイルにアクセスするための認証を取得するために必要な情報 (ユーザー名やパスワードなど)。 データタイプ:文字列 |
| message.attachment.url | 添付ファイルが指定されている場合は必須です。添付ファイルが配置されている URL。VA はこの URL から添付ファイルを取得し、ウイルススキャンを実行してからファイルを処理します。添付ファイルが公開ファイルでない場合は、添付ファイルにアクセスできるように、認証情報を含む message.attachment.header オブジェクトを渡す必要があります。sys_cs_provider にファイル登録された信頼できるドメインに URL ドメインが存在することも確認する必要があります。 データタイプ:文字列 |
| message.clientMessageId | メッセージの一意の英数字識別子。この識別子の形式は、実装者が決定します。 データタイプ:文字列 デフォルト:Null |
| message.id | UPDATE_MESSAGES アクションでのみ使用されます。更新するチャットメッセージの一意の ID。 データタイプ:文字列 |
| message.status | メッセージステータス。 有効な値 (値の大文字と小文字を区別しない):
データタイプ:文字列 |
| message.text | attachmentパラメーターが指定されていない場合は必須です。メッセージのテキストです。
データタイプ:文字列 最大長:無制限 |
| message.typed | 必須。メッセージが入力されたか、オプション選択 (選択済み) であったかを示すフラグ。 有効な値:
データタイプ:ブーリアン |
| requestId | 必須。この要求に対する一意の英数字の識別子。この識別子の形式は、実装者が決定します。 データタイプ:文字列 |
| silentMessage | これがサイレントメッセージかどうかを示すフラグ。サイレントメッセージは、応答を必要としないメッセージです。 有効な値:
注:
silentMessage = true の要求が送信された場合、サイレント モードをオフにする要求が silentMessage = false を渡して送信されるまで、後続のすべてのボット メッセージは抑制されたままになります。データタイプ:ブーリアン デフォルト値:false |
| timestamp | チャットクライアントのエンドユーザーからメッセージが送信された Unix エポック時間。 データタイプ:数値 単位:ミリ秒 デフォルト:現在の時刻 |
| タイムゾーン | チャットクライアントのエンドユーザーの GMT タイムゾーン。 たとえば、次のようになります。 使用可能なタイムゾーン値のリストについては、https://en.wikipedia.org/wiki/List_of_tz_database_time_zones を参照してください。 データタイプ:文字列 デフォルト:ServiceNow インスタンスの GMT タイムゾーン。 |
| topic | ユーザーがトピック名を指定して特定のトピックに切り替える場合は必須です。切り替え先となるトピックの名前と値のペア。トピック名またはトピック sys_id のいずれかを指定できます。 注:
オブジェクトに指定できるトピック名または ID は 1 つだけです。 データタイプ: オブジェクト 例: |
| topic.name | 切り替え先となるトピックの名前。 データタイプ:文字列 テーブル:仮想エージェントトピック [sys_cs_topic] テーブルの名前フィールド。 |
| topic.id | 切り替え先となるトピックの sys_id。 データタイプ:文字列 テーブル:仮想エージェントトピック [sys_cs_topic] |
| userId | 必須。一意のユーザー識別子。これは、ボットとやり取りしているエンドユーザーの識別子です。 データタイプ:文字列 |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。application/json のみをサポートします。 |
| Content-Type | 要求本文のデータ形式。application/json のみをサポートします。 |
| トークン | トークンベースの認証を使用する場合は必須です。ベーシック認証または OAuth 認証ではオプションです。このエンドポイントにトークン認証が設定されている場合に使用する認証トークン。 データタイプ:文字列 |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 ステータスコード 200 を受信しても応答が返されない場合は、次の点を確認してください。
|
| 400 | 要求が正しくありません。不適切な要求タイプまたは誤った要求が検出されました。 |
| 401 | 権限がありません。ユーザー資格情報が間違っているか、渡されていません。 |
| 405 | 無効なメソッドです。この機能は無効です。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター
エンドポイントコールのステータス。これは、最初のコール要求の受信時に送信されます。要求はまだ処理されていません。
| 名前 | 説明 |
|---|---|
| error | 検出されたエラーの説明。エラーが発生した場合にのみ返されます。 データタイプ:オブジェクト |
| error.detail | 発生したエラーに関する詳細。 データタイプ:文字列 |
| error.message | スローされたエラーメッセージ。 データタイプ:文字列 |
| status | エンドポイントコールのステータス。 有効な値:
データタイプ:文字列 |
VA 応答本文のパラメーター
VA から構成された応答エンドポイントに送信される応答本文。
| 名前 | 説明 |
|---|---|
| agentChat | 会話が ServiceNow ライブエージェントに接続されているかどうかを示すフラグ。 可能な値:
データタイプ:ブーリアン |
| body | 応答メッセージ本文の要素を説明するオブジェクトのリスト。 データタイプ:オブジェクトのアレイ |
| body.actionType | セカンダリボットからプライマリボットにディスパッチされるアクションメッセージのタイプ。たとえば、入力インジケーターまたはエージェントの待機時間です。 可能な値:
例: 入力インジケーターが有効になっている場合は、 ライブエージェントへの転送時に データタイプ:文字列 |
| body.agentInfo | エージェントチャットセットアップで有効になっている場合、関連付けられたエージェントの名前とアバター。 データタイプ: オブジェクト 例: |
| body.agentInfo.agentAvatar | エージェントに関連付けられたアバターファイルの URL。 例:「https://instance.servicenow.com/ee4eebf30a0004d963b5c5ac0d734dc4.iix?t=small」 データタイプ:文字列 |
| body.agentInfo.agentId | ライブエージェントのsys_id。 テーブル:ライブプロファイル [live_profile] データタイプ:文字列 |
| body.agentInfo.agentName | エージェントの表示名。 データタイプ:文字列 |
| body.agentInfo.sentFromAgent | メッセージがライブエージェントによって送信されたかどうかを示すフラグ。 可能な値:
データタイプ:ブーリアン |
| body.data | カード内のデータを定義する JSON 文字列。 データタイプ:文字列 |
| body.group | 本文要素が属するリッチコントロールグループ。送信変換スクリプトを記述することで、これらのデフォルトのコントロールをさらに変換できます。これらのスクリプトの詳細については、「 仮想エージェントアクションスクリプト」を参照してください。 可能な値:
データタイプ:文字列 |
| body.header | リンクヘッダー。 データタイプ:文字列 |
| body.height | HTML 要素の高さ。 データタイプ:数値 単位:ピクセル |
| body.itemType | 本文要素のタイプ。 可能な値:(大文字と小文字を区別)
データタイプ:文字列 |
| body.label | 関連する要素に表示するラベル。 データタイプ:文字列 |
| body.maskType | 関連データの機密性。 可能な値:
データタイプ:文字列 |
| body.maxCount | uiTypeが FileUpload の場合にのみ返されます。一度にアップロードできる添付ファイルの最大数。データタイプ:数値 (整数) |
| body.maxSize | uiTypeが FileUpload の場合にのみ返されます。アップロードできる添付ファイルの最大サイズ。データタイプ:数値 (整数) 単位:メガバイト |
| body.message | actionType が StartSpinner の場合にのみ返されます。ユーザーに表示するメッセージ。データタイプ:文字列 |
| body.messageId | サポートされているサードパーティのチャットアプリケーションに ServiceNow 仮想エージェント から送信されたメッセージの一意の識別子。 テーブル:会話メッセージ [sys_cs_message] データタイプ:文字列 |
| body.multiSelect | ユーザーが複数のオプションを選択できるかどうかを示すフラグ。 可能な値:
データタイプ:ブーリアン |
| body.nluTextEnabled | ユーザーのチャットクライアントが Natural Language Understanding (NLU) テキストメッセージを受信できるかどうかを示すフラグ。 可能な値:
データタイプ:ブーリアン |
| body.options | ピッカーコントロールに使用できるオプションを説明するリスト。 データタイプ:オブジェクトのアレイ |
| body.options.attachment | 取得するカルーセル内の画像の URL。 データタイプ:文字列 |
| body.options.description | カルーセルアイテムの説明。 データタイプ:文字列 |
| body.options.enabled | エンドユーザーのチャットクライアントでピッカーコントロールが有効になっているかどうかを示すフラグ。ボット間の実装では、ピッカーコントロールが無効になっていることを確認するのはプライマリボットです。 可能な値:
データタイプ:ブーリアン |
| body.options.label | 関連する body.options.value パラメーターに表示するラベル。 データタイプ:文字列 |
| body.options.renderStyle | 関連する要素をレンダリングするときに使用するスタイル。 可能な値:data データタイプ:文字列 |
| body.options.value | 関連する body.options.label パラメーターに表示する値。 データタイプ:文字列 |
| body.promptMsg | ピッカーコントロールで表示するプロンプトメッセージ。 データタイプ:文字列 |
| body.required | エンドユーザーが本文要素のクエリに応答する必要があるかどうかを示すフラグ。 可能な値:
データタイプ:ブーリアン |
| body.spinnerType | actionType が StartSpinner の場合にのみ返されます。チャットユーザーに表示されるスピナーのタイプ。可能な値: wait_time:ライブエージェントに転送されるまでの遅延時間を示すメッセージ。 データタイプ:文字列 |
| body.style | 本文要素のスタイル。 可能な値:
データタイプ:文字列 |
| body.templateName | 関連するカードを表示するために使用するテンプレートの名前。 データタイプ:文字列 |
| body.type | DefaultOutputLink に対してのみ返されます。返されるデータのタイプ。 可能な値:link データタイプ:文字列 |
| body.uiType | 本文要素のタイプ。可能な値は body.group パラメーターの値によって異なります。これらの値は、仮想エージェントデザイナーで定義されたコントロールにマッピングされます。詳細については、「 仮想エージェントデザイナーの概要」を参照してください。 可能な値:
データタイプ:文字列 |
| body.value | 本文要素を処理するために使用するデータ。返される情報のタイプは、本文要素のタイプによって異なります。 OutputLink:オブジェクト。 OutputImage:文字列。画像 URL。 OutputHtml:文字列。クライアントが表示する必要がある HTML。 データタイプ:文字列またはオブジェクト |
| body.value.action | DefaultOutputLink に対してのみ返されます。返されるリンクの URL。 データタイプ:文字列 |
| body.waitTime | ユーザーがライブエージェントに接続するまでに待機する必要がある時間。 データタイプ:文字列 |
| body.width | 関連する HTML 要素の幅。 データタイプ:数値 単位:ピクセル |
| clientSessionId | エンドユーザーが ServiceNow ボットとの通信に使用しているチャットアプリケーション/サービスの一意のクライアントセッション識別子。 データタイプ:文字列 |
| clientVariables | 要求本文の clientVariables パラメーターで渡されるものからコピーされた、JSON 形式の名前と値のペア。これらの値はエンドポイントによって処理されませんが、特定の顧客情報を会話に添付するために使用できます。 データタイプ: オブジェクト |
| completed | ServiceNow 仮想エージェントが会話を正常に完了したかどうかを示すフラグ。 可能な値:
データタイプ:ブーリアン |
| enterpriseId | 現在、使用されていません。 |
| interactionId | ServiceNow 仮想エージェント とサポートされているサードパーティのチャットアプリケーション間の各会話の一意の識別子。 データタイプ:文字列 |
| メッセージ | ServiceNow VA に送信されたメッセージの詳細。これは、メッセージオブジェクトで渡されたものと同じです。 データタイプ: オブジェクト |
| message.attachment | 添付ファイルの詳細。添付ファイルはファイルまたは URL のいずれかです。 データタイプ:オブジェクト |
| message.attachment.clientAttachmentId | ServiceNow VA に送信された添付ファイルの一意の識別子。この識別子の形式は、実装者が決定します。 データタイプ:文字列 |
| message.attachment.contentType | 添付ファイルの標準的な MIME タイプ。 可能な値 (大文字と小文字を区別しない):
データタイプ:文字列 |
| message.attachment.fileName | 添付ファイルのファイル名。 データタイプ:文字列 |
| message.attachment.url | 添付ファイルが配置されている URL。 データタイプ:文字列 |
| message.clientMessageId | メッセージの一意の英数字識別子。 データタイプ:文字列 |
| message.text | メッセージのテキスト。 データタイプ:文字列 最大長:無制限 |
| message.typed | メッセージが入力されたか、オプション選択 (選択済み) であったかを示すフラグ。 可能な値:
データタイプ:ブーリアン |
| nowBotId | 現在、使用されていません。 |
| nowSessionId | 現在、使用されていません。 |
| requestId | この要求に対する一意の識別子。 データタイプ:文字列 |
| スコア | ServiceNow NLU モデルからのインテント信頼スコア。87.3% など、パーセントで指定します。このスコアにより、プライマリボットは、プライマリボットの NLU モデルの信頼性しきい値に基づいて、関連するインテントを表示するかどうかを決定できます。ServiceNow NLU モデルの信頼度しきい値は、プライマリボットの NLU モデルの信頼度しきい値をすべてのセカンダリボットに一貫して適用できるように、ServiceNow インスタンスで無視されます。 データタイプ:数値 |
| takeControl | ServiceNow 仮想エージェントがコントロールをプライマリボットに戻すことを希望していることを示すフラグ。 可能な値:
データタイプ:ブーリアン デフォルト値:false |
| userId | ボットとやり取りしているエンドユーザーの識別子。 データタイプ:文字列 |
START_CONVERSATION アクションを使用して会話を開始する
次の例は、 START_CONVERSATION アクションを使用して仮想エージェントとの会話を開始する方法を示しています。このコールにより、ユーザーは挨拶トピックに誘導されます。
curl "https://instance.servicenow.com/api/sn_va_as_service/bot/integration" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
"requestId": "asd2423-sda23-qwe23-we23",
"action": "START_CONVERSATION",
"enterpriseId": "ServiceNow",
"nowBotId": "A85PWLERF",
"clientSessionId": "",
"nowSessionId": "",
"message":{
"text": "",
"typed": true,
"clientMessageId": "ABC-123"
},
"userId": "beth.anglin",
"emailId": "beth.anglin@example.com",
"timestamp": 1588824102,
"timezone": "America/New_York"
}"
--user "username":"password"
VA から構成済み応答エンドポイントに送信される応答本文は次のとおりです。
{
"requestId":"asd2423-sda23-qwe23-we23",
"clientSessionId":"",
"nowSessionId":"",
"message":{
"text":"",
"typed":true,
"clientMessageId":"ABC-123"
},
"userId":"beth.anglin",
"body":[
{
"uiType":"OutputText",
"group":"DefaultText",
"value":"Hi, I'm your Virtual Agent. Let me know how I can help you today.",
"maskType":"NONE"
},
{
"uiType":"TopicPickerControl",
"group":"DefaultPicker",
"nluTextEnabled":false,
"promptMsg":"Hi guest, please enter your request or make a selection of what I can help with. You can type help any time when you need help.",
"label":"Show me everything",
"options":[
{
"label":"b2b topic",
"value":"2bb7bd7670de6010f877c7f188266fc7",
"enabled":true
},
{
"label":"Live Agent Support.",
"value":"ce2ee85053130010cf8cddeeff7b12bf",
"enabled":true
}
]
}
],
"score":1
}
チャットインタラクションの作成
次の例は、CREATE_CONVERSATION アクションを使用してチャットインタラクションを作成する方法を示しています。
curl "https://instance.servicenow.com/api/sn_va_as_service/bot/integration" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
"requestId": "f42f3550-5b44-4cde-aa52-9b6756b3131c",
"clientSessionId": "",
"action": "CREATE_CONVERSATION",
"message": {
"text": "hi",
"typed": false
},
"userId": "abel.tuter",
"emailId": "abel.tuter@example.com"
}"
--user "username":"password"
VA から構成済み応答エンドポイントに送信される応答本文は次のとおりです。
{
"requestId": "f42f3550-5b44-4cde-aa52-9b6756b3131c",
"clientSessionId": "",
"message": {
"text": "hi",
"typed": false
},
"userId": "abel.tuter",
"interactionId": "240c91c8fd9f2e50f877c29ac5fbe8ed",
"body": [
{
"uiType": "ActionMsg",
"actionType": "CreateConversation",
"conversationId": "a40c91c8fd9f2e50f877c29ac5fbe8eb",
"interactionId": "240c91c8fd9f2e50f877c29ac5fbe8ed",
"messageId": "b80c91c8fd9f2e50f877c29ac5fbe8f8"
}
],
"score": 1
}
START_CREATED_CONVERSATIONアクションを使用して開始された会話を開始
次の例は、CREATE_CONVERSATION アクションを使用して開始されたチャット会話を開始する方法を示しています。
curl "https://instance.servicenow.com/api/sn_va_as_service/bot/integration" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
"requestId": "f42f3550-5b44-4cde-aa52-9b6756b3131c",
"clientSessionId": "",
"action": "START_CREATED_CONVERSATION",
"userId": "abel.tuter",
"emailId": "abel.tuter@example.com"
}"
--user "username":"password"
VA から構成済み応答エンドポイントに送信される応答本文は次のとおりです。
{
"requestId":"302bas2be70-sadsa-we32-3eq2-1231ra9",
"clientSessionId":"",
"message":{
"text":"hola",
"typed":true
},
"userId”:”abel.tuter",
"body":[
{
"uiType":"OutputText",
"group":"DefaultText",
"value":"Hi, I'm your Virtual Agent. Let me know how I can help you today.",
"maskType":"NONE"
},
{
"uiType":"TopicPickerControl",
"group":"DefaultPicker",
"nluTextEnabled":false,
"promptMsg":"Hi guest, please enter your request or make a selection of what I can help with. You can type hellllp! any time when you need help.",
"label":"Show me everything",
"options":[
{
"label":"boolean check",
"value":"1b5257a1db712010d3d6d9595e9619f3",
"enabled":true
},
{
"label":"Test_table_datepicker",
"value":"6515f0cadb4220108249f7541d961980",
"enabled":true
},
{
"label":"Test File upload",
"value":"76c1f4b2db7520108249f7541d9619a7",
"enabled":true
},
{
"label":"Test B2B 2",
"value":"8373e55cdb8120108249f7541d96196d",
"enabled":true
},
{
"label":"FAQ Conversation Builder_Global",
"value":"9f3114a3dbc520108249f7541d961981",
"enabled":true
},
{
"label":"Get to know you",
"value":"a443dd6adb812010d3d6d9595e961954",
"enabled":true
},
{
"label":"Get to know you_Global",
"value":"b1a56b87db8120108249f7541d9619b2",
"enabled":true
},
{
"label":"Live Agent Support.",
"value":"ce2ee85053130010cf8cddeeff7b12bf",
"enabled":true
},
{
"label":"Apply for PTO_B2B NLU",
"value":"d948c94cdb052010d3d6d9595e961969",
"enabled":true
}
]
}
],
"score":1
}
を使用した会話の不具合
次の例は、FAULT_CONVERSATION アクションを使用して cause パラメーターの値を設定する方法を示しています。
curl "https://instance.servicenow.com/api/sn_va_as_service/bot/integration" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
"requestId": "f42f3550-5b44-4cde-aa52-9b6756b3131c",
"clientSessionId": "",
"action": "FAULT_CONVERSATION",
"cause": "EXTERNAL_FAILURE",
"userId": "abel.tuter",
"emailId": "abel.tuter@example.com"
}"
--user "username":"password"
VA から構成済み応答エンドポイントに送信される応答本文は次のとおりです。
{
"requestId": "f42f3550-5b44-4cde-aa52-9b6756b3131c",
"clientSessionId": "",
"userId": "abel.tuter",
"body": [],
"takeControl": true,
"score": 0
}
エージェントチャットパネルのメッセージを更新する
UPDATE_MESSAGESアクションは、ライブエージェントの会話中に使用され、サードパーティのチャット統合からのメッセージの更新をエージェントチャットパネルに反映するために使用されます。このアクションはメッセージのリストを受け入れることができ、すべてのメッセージの更新を 1 回の実行で実行できます。
curl "https://instance.servicenow.com/api/sn_va_as_service/bot/integration" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
"requestId": "f42f3550-5b44-4cde-aa52-9b6756b3131c",
"clientSessionId": "",
"message": [
{
"status": "external_error",
"id": "54623afeff762210efa1ffffffffff77"
}
],
"userId": "abel.tuter",
"emailId": "abel.tuter@example.com",
"action": "UPDATE_MESSAGES"
}"
--user "username":"password"
VA から構成された応答エンドポイントに送信される応答メッセージは次のとおりです。
Message Processed Successfully
チャット履歴のみを更新
次の例は、チャット履歴のみを更新する方法を示しています。
curl "https://instance.servicenow.com/api/sn_va_as_service/bot/integration" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
"requestId": "f42f3550-5b44-4cde-aa52-9b6756b3131c",
"clientSessionId": "",
"userId": "abel.tuter",
"emailId": abel.tuter@example.com,
"action": "SEND_HISTORY",
"history": [
{
"isBotMessage": true,
"value": "How can I help you?",
"displayName": "Genesys Bot",
"type": "text",
"timestamp": "1739866290393"
},
{
"isBotMessage": false,
"value": "I am facing an issue while creating an incident.",
"displayName": "User",
"type": "text",
"timestamp": "1739877357223"
},
{
"isBotMessage": true,
"value": "Okay. i am routing you to an agent",
"displayName": "Genesys Bot",
"type": "text",
"timestamp": "1739877409746"
},
{
"isBotMessage": false,
"value": "Thanks.",
"displayName": "User",
"type": "text",
"timestamp": "1739877453201"
}
]
}"
--user "username":"password"
VA から構成された応答エンドポイントに送信される成功応答は次のとおりです。
{"status": "success"}
発言を使用してライブエージェントに会話を転送する
次の例は、message.text パラメーターに発言として agent を渡すことで、挨拶トピックをバイパスして会話をライブエージェントに転送する方法を示しています。可能な発言の値は sys_cs_contextual_action テーブルで定義されます。コンテキストアクションの詳細については、「 カスタムチャット統合のコンテキストアクション」を参照してください。
curl "https://instance.servicenow.com/api/sn_va_as_service/bot/integration" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--header "token: ORANGE" \
--data " {
"requestId": "322bas2be70-sadsa-we32-3eq2-1231ra9",
"botToBot": true,
"clientSessionId": "",
"silentMessage": false,
"message":{
"text": "agent",
"typed": true
},
"userId": "abel.tuter",
"emailId": "abel.tuter@servicenow.com",
"timestamp": 1588824102,
"timezone": "America/New_York"
}"
VA から構成済み応答エンドポイントに送信される応答本文は次のとおりです。
{
"requestId":"322bas2be70-sadsa-we32-3eq2-1231ra9",
"clientSessionId":"",
"message":{
"text":"agent",
"typed":true
},
"userId":"abel.tuter",
"body":[
{
"uiType":"Picker",
"group":"DefaultPicker",
"required":true,
"nluTextEnabled":false,
"label":"I want to be sure I got this right. What item best describes what you want to do?",
"itemType":"List",
"style":"list",
"multiSelect":false,
"options":[
{
"label":"Live Agent Support.",
"value":"Live Agent Support.",
"renderStyle":"data",
"enabled":false
},
{
"label":"Virtual Agent Capabilities.",
"value":"Virtual Agent Capabilities.",
"renderStyle":"data",
"enabled":false
},
{
"label":"I want something else",
"value":"-1",
"renderStyle":"data",
"enabled":false
}
],
"scriptedData":null
}
],
"score":1
}
ユーザーの選択に基づいてライブエージェントサポートに会話を転送する
次の例は、前のインタラクションからのユーザーの選択に基づいて会話をライブエージェントサポートに転送することを示しています。
curl "https://instance.servicenow.com/api/sn_va_as_service/bot/integration" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--header "token: ORANGE" \
--data "{
"requestId": "322bas2be70-sadsa-we32-3eq2-1231ra9",
"botToBot": true,
"clientSessionId": "",
"silentMessage": false,
"message":{
"text": "Live Agent Support.",
"typed": true
},
"userId": "abel.tuter",
"emailId": "abel.tuter@servicenow.com",
"timestamp": 1588824102,
"timezone": "America/New_York"
} "
VA から構成済み応答エンドポイントに送信される応答本文は次のとおりです。
{
"requestId":"322bas2be70-sadsa-we32-3eq2-1231ra9",
"clientSessionId":"",
"message":{
"text":"Live Agent Support.",
"typed":true
},
"userId":"abel.tuter",
"body":[
{
"uiType":"OutputText",
"group":"DefaultText",
"value":"Please stand by while I connect you to a live agent."
}
],
"agentChat":true,
"score":1
}
アクションパラメーターを設定して仮想エージェントの会話を終了する
次の例は、action パラメーターを END_CONVERSATION に設定して仮想エージェントの会話を終了する方法を示しています。
curl "https://instance.servicenow.com/api/sn_va_as_service/bot/integration" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
"requestId": "s345ew-sjg554-qwe23-we23",
"action": "END_CONVERSATION",
"enterpriseId": "ServiceNow",
"nowBotId": "A85PWLERF",
"clientSessionId": "",
"nowSessionId": "",
"message":{
"text": "b2b topic",
"typed": true,
"clientMessageId": "ABC-123"
},
"userId": "beth.anglin",
"emailId": beth.anglin@example.com,
"timestamp": 1588824102,
"timezone": "America/New_York"
}"
--user "username":"password"
終了した会話を示す、VA から構成済み応答エンドポイントに送信される応答本文は次のとおりです。
{
"requestId":"s345ew-sjg554-qwe23-we23",
"clientSessionId":"",
"nowSessionId":"",
"message":{
"text":"",
"typed":true,
"clientMessageId":"ABC-123"
},
"userId":"beth.anglin",
"body":[
{
"uiType":"OutputText",
"group":"DefaultText",
"value":"The conversation has ended. If you need help again, type hi.",
"maskType":"NONE"
}
],
"score":1
}
アクションパラメーターを設定してライブエージェントの会話を終了する
次の例は、action パラメーターを END_CONVERSATION に設定してライブエージェントの会話を終了する方法を示しています。
curl "https://instance.servicenow.com/api/sn_va_as_service/bot/integration" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
"requestId": "sad-sjg554-qwe23-we23",
"action": "END_CONVERSATION",
"enterpriseId": "ServiceNow",
"nowBotId": "A85PWLERF",
"clientSessionId": "",
"nowSessionId": "",
"message":{
"text": "",
"typed": true,
"clientMessageId": "ABC-123"
},
"userId": "beth.anglin",
"emailId": "beth.anglin@example.com",
"timestamp": 1588824102,
"timezone": "America/New_York"
}"
--user "username":"password"
終了した会話を示す、VA から構成済み応答エンドポイントに送信される応答本文は次のとおりです。
{
"requestId":"sad-sjg554-qwe23-we23",
"clientSessionId":"",
"nowSessionId":"",
"message":{
"text":"",
"typed":true,
"clientMessageId":"ABC-123"
},
"userId":"beth.anglin",
"body":[
{
"uiType":"OutputText",
"group":"DefaultText",
"value":"The conversation has ended. If you need help again, type hi.",
"maskType":"NONE"
}
],
"completed":true,
"score":1
}
sys_cs_contextual_action テーブルで定義されたコマンドを発言として使用して仮想エージェントとの会話を開始する
次の例は、前の例のように action パラメーターを START_CONVERSATION に設定する代わりに、sys_cs_contextual_action テーブルで定義された Hi コマンドを発言として使用して仮想エージェントとの会話を開始する方法を示しています。この例では、Hi コマンドの言語バリアントの 1 つである「hola」を使用しています。
curl "https://instance.servicenow.com/api/sn_va_as_service/bot/integration" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--header "token: ORANGE" \
--data "{
"requestId": "302bas2be70-sadsa-we32-3eq2-1231ra9",
"botToBot": true,
"clientSessionId": "",
"silentMessage": false,
"message":{
"text": "hola",
"typed": true
},
"userId": "fred.ludy",
"emailId": "abel.tuter@servicenow.com",
"timestamp": 1588824102,
"timezone": "America/New_York"
}"
VA から構成済み応答エンドポイントに送信される応答本文は次のとおりです。
{
"requestId":"302bas2be70-sadsa-we32-3eq2-1231ra9",
"clientSessionId":"",
"message":{
"text":"hola",
"typed":true
},
"userId":"fred.ludy",
"body":[
{
"uiType":"OutputText",
"group":"DefaultText",
"value":"Hi, I'm your Virtual Agent. Let me know how I can help you today.",
"maskType":"NONE"
},
{
"uiType":"TopicPickerControl",
"group":"DefaultPicker",
"nluTextEnabled":false,
"promptMsg":"Hi guest, please enter your request or make a selection of what I can help with. You can type hellllp! any time when you need help.",
"label":"Show me everything",
"options":[
{
"label":"boolean check",
"value":"1b5257a1db712010d3d6d9595e9619f3",
"enabled":true
},
{
"label":"Test_table_datepicker",
"value":"6515f0cadb4220108249f7541d961980",
"enabled":true
},
{
"label":"Test File upload",
"value":"76c1f4b2db7520108249f7541d9619a7",
"enabled":true
},
{
"label":"Test B2B 2",
"value":"8373e55cdb8120108249f7541d96196d",
"enabled":true
},
{
"label":"FAQ Conversation Builder_Global",
"value":"9f3114a3dbc520108249f7541d961981",
"enabled":true
},
{
"label":"Get to know you",
"value":"a443dd6adb812010d3d6d9595e961954",
"enabled":true
},
{
"label":"Get to know you_Global",
"value":"b1a56b87db8120108249f7541d9619b2",
"enabled":true
},
{
"label":"Live Agent Support.",
"value":"ce2ee85053130010cf8cddeeff7b12bf",
"enabled":true
},
{
"label":"Apply for PTO_B2B NLU",
"value":"d948c94cdb052010d3d6d9595e961969",
"enabled":true
}
]
}
],
"score":1
}
sys_cs_contextual_action テーブルで定義されたコマンドを発言として使用して会話を終了する
次の例は、前の例のように action を END_CONVERSATION に設定する代わりに、sys_cs_contextual_action テーブルで定義された Bye コマンドを発言として使用して仮想エージェントとの会話を終了する方法を示しています。この例では、Bye コマンドの言語バリアントの 1 つである「choa」を使用しています。
curl "https://instance.servicenow.com/api/sn_va_as_service/bot/integration" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--header "token: ORANGE" \
--data "{
"requestId": "302bas2be70-sadsa-we32-3eq2-1231ra9",
"botToBot": true,
"clientSessionId": "",
"silentMessage": false,
"message":{
"text": "choa",
"typed": true
},
"userId": "fred.ludy",
"emailId": "abel.tuter@servicenow.com",
"timestamp": 1588824102,
"timezone": "America/New_York"
}"
VA から構成済み応答エンドポイントに送信される応答本文は次のとおりです。
{
"requestId":"302bas2be70-sadsa-we32-3eq2-1231ra9",
"clientSessionId":"",
"message":{
"text":"chao",
"typed":true
},
"userId":"fred.ludy",
"body":[
{
"uiType":"Picker",
"group":"DefaultPicker",
"required":true,
"nluTextEnabled":false,
"label":"Please make a selection.",
"itemType":"List",
"style":"list",
"multiSelect":false,
"options":[
{
"label":"End conversation",
"value":"1",
"renderStyle":"data",
"enabled":false
},
{
"label":"Cancel",
"value":"0",
"renderStyle":"data",
"enabled":false
}
],
"scriptedData":null
}
],
"score":1
}
SWITCH アクションパラメーターを使用して進行中の会話を変更する
次の例は、SWITCH action パラメーターを使用して、進行中の会話を intent.id パラメーターの指定内容と一致するトピックに変更する方法を示しています。
curl "https://instance.servicenow.com/api/sn_va_as_service/bot/integration" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
"requestId": "sdfsfs-hgfhg-34fssd-zxcz-sd43",
"enterpriseId": "ServiceNow",
"nowBotId": "A85PWLERF",
"clientSessionId": "",
"nowSessionId": "",
"action": "SWITCH",
"intent" : {
"id": "Saloon Vehicle"
},
"message":{
"typed": true,
"clientMessageId": "ABC-123"
},
"userId": "Guest",
"timestamp": 1588824102,
"timezone": "America/New_York"
}"
--user "username":"password"
VA が新しいトピックに切り替えられたことを示す、VA から構成済み応答エンドポイントに送信される応答本文は次のとおりです。
{
"requestId":"sdfsfs-hgfhg-34fssd-zxcz-sd43",
"clientSessionId":"",
"nowSessionId":"",
"message":{
"typed":true,
"clientMessageId":"ABC-123"
},
"userId":"Guest",
"body":[
{
"uiType":"InputText",
"group":"DefaultText",
"required":true,
"nluTextEnabled":false,
"label":"limo input:",
"maskType":"NONE"
}
],
"score":1
}
発言の 自然言語理解 (NLU) (NLU) 信頼スコアを取得する
次の例は、VA でNLUが有効になっている場合に発言の信頼スコアNLUを取得する方法を示しています。
curl "https://instance.servicenow.com/api/sn_va_as_service/bot/integration" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
"requestId": "sdfsfs-hgfhg-34fssd-zxcz-sd43",
"enterpriseId": "ServiceNow",
"nowBotId": "A85PWLERF",
"clientSessionId": "",
"nowSessionId": "",
"message":{
"text": "most popular choice",
"typed": true,
"clientMessageId": "ABC-123"
},
"userId": "Guest",
"timestamp": 1588824102,
"timezone": "America/New_York"
}"
--user "username":"password"
NLU 信頼スコアを示す、VA から構成済み応答エンドポイントに送信される応答本文は次のとおりです。
{
"requestId":"sdfsfs-hgfhg-34fssd-zxcz-sd43",
"clientSessionId":"",
"nowSessionId":"",
"message":{
"text":"most popular choice",
"typed":true,
"clientMessageId":"ABC-123"
},
"userId":"Guest",
"body":[
{
"uiType":"InputText",
"group":"DefaultText",
"required":true,
"nluTextEnabled":false,
"label":"model input:",
"maskType":"NONE"
}
],
"score":"0.92"
}
特定のキューのライブエージェントに会話を転送する
次の例は、会話を特定のキューのライブエージェントに転送する方法を示しています。最初に特定の条件でキューを設定する必要があります。次に、これらの条件を要求本文の contextVariables として渡します。作業項目キューの作成の詳細については、「 作業項目キューの作成」を参照してください。
curl "https://instance.servicenow.com/api/sn_va_as_service/bot/integration" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
"requestId": "34re-dasd-qwe23-dsds", // Unique value for a message (hash)
"enterpriseId": "ServiceNow", // ServiceNow (Optional
"nowBotId": "A85PWLERF", // In case of multiple ServiceNow secondary bots (one for HR, one for ITSM)
"action":"AGENT", // Actions to close conversation. Other possible value is END_CONVERSATION
"clientSessionId": "", // Client conversation id
"nowSessionId": "", // ServiceNow conversation id
"message":{
"text": "How are you?", // User passed message
"typed": true, // typed or clicked
"clientMessageId": "ABC-123"
},
"userId": "abraham.lincoln", // User’s id in their system
"emailId": "abraham.lincoln@example.com",
"timestamp": 1588824102,
"timezone": "America/New_York",
"contextVariables":{
"b2b_category":"humanresource"
}
}"
--user "username":"password"
VA から構成済み応答エンドポイントに送信される応答本文は次のとおりです。
{
"requestId":"34re-dasd-qwe23-dsds",
"clientSessionId":"",
"nowSessionId":"",
"message":{
"text":"How are you?",
"typed":true,
"clientMessageId":"ABC-123"
},
"userId":"abraham.lincoln",
"body":[
{
"uiType":"OutputText",
"group":"DefaultText",
"value":"I am sorry but I didn't understand your request.",
"maskType":"NONE"
},
{
"uiType":"OutputText",
"group":"DefaultText",
"value":"Please try giving me your request in a different way. I'm currently better at understanding short sentences.",
"maskType":"NONE"
},
{
"uiType":"TopicPickerControl",
"group":"DefaultPicker",
"nluTextEnabled":false,
"promptMsg":"Hi guest, please enter your request or make a selection of what I can help with. You can type help any time when you need help.",
"label":"Show me everything",
"options":[
{
"label":"Live Agent Support.",
"value":"ce2ee85053130010cf8cddeeff7b12bf",
"enabled":true
}
]
}
],
"score":0
}
公開アプリケーション/PDF 添付ファイルを転送する
この例は、公開アプリケーション/PDF 添付ファイルを転送する方法を示しています。
curl "https://instance.servicenow.com/api/sn_va_as_service/bot/integration" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--header "token: BOT_Token" \
--data "{
"requestId": "f42f3550-5b44-4cde-aa52-9b6756b3131c",
"clientSessionId": "U94CSJLEN",
"message": {
"attachment": {
"clientAttachmentId": "my-unique-identifier",
"contentType": "application/pdf",
"fileName": "MY PDF TEST",
"url": "http://www.africau.edu/images/default/sample.pdf"
}
},
"userId": "U94CSJLEN",
"emailId": "admin@example.com"
}"
--user "username":"password"
VA から構成済み応答エンドポイントに送信される応答本文は次のとおりです。
{
"requestId":"f42f3550-5b44-4cde-aa52-9b6756b3131c",
"clientSessionId":"U94CSJLEN",
"message":{
"attachment":{
"clientAttachmentId":"my-unique-identifier",
"contentType":"application/pdf",
"fileName":"MY PDF TEST",
"url":"http://www.africau.edu/images/default/sample.pdf"}
},
"userId":"U94CSJLEN",
"body":[
{
"uiType":"OutputText",
"group":"DefaultText",
"required":false,
"nluTextEnabled":false,
"label":"File got",
"maskType":"NONE",
"itemType":"outputtext"
},
{
"uiType":"OutputText",
"group":"DefaultText",
"required":false,
"nluTextEnabled":false,
"label":"The conversation has ended. If you need help again, type hi.",
"maskType":"NONE",
"itemType":"outputtext"
}
],
"completed":true,
"score":1
}
ビデオ/mpeg 添付ファイルを転送する
この例は、ビデオ/mpeg 添付ファイルをアップロードするための要求/応答を示しています。
curl "https://instance.servicenow.com/api/sn_va_as_service/bot/integration" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--header "token: BOT_TOKEN" \
--data "{
"requestId": "f42f3550-5b44-4cde-aa52-9b6756b3131c",
"clientSessionId": "U94CSJLEN",
"message": {
"attachment": {
"clientAttachmentId": "my-unique-identifier10",
"contentType": "video/mpeg",
"fileName": "MY TEST10.mp4",
"url": "https://sample-videos.com/video123/mp4/720/big_buck_bunny_720p_1mb.mp4"
}
},
"userId": "U94CSJLEN",
"emailId": "admin@example.com"
}"
--user "username":"password"
VA から構成済み応答エンドポイントに送信される応答本文は次のとおりです。
{
"requestId":"f42f3550-5b44-4cde-aa52-9b6756b3131c",
"clientSessionId":"U94CSJLEN",
"message":{
"attachment":{
"headers":{
"Authorization":"Basic amFzbWluZS53YWRod2FuaWE6VGVzdGluZ0AxMjM="
},
"clientAttachmentId":"my-unique-identifier10",
"contentType":"video/mpeg",
"fileName":"MY TEST10.mp4",
"url":"https://sample-videos.com/video123/mp4/720/big_buck_bunny_720p_1mb.mp4"
}
},
"userId":"U94CSJLEN",
"body":[
{
"uiType":"OutputText",
"group":"DefaultText",
"required":false,
"nluTextEnabled":false,
"label":"File got",
"maskType":"NONE",
"itemType":"outputtext"
},
{
"uiType":"OutputText",
"group":"DefaultText",
"required":false,
"nluTextEnabled":false,
"label":"The conversation has ended. If you need help again, type hi.",
"maskType":"NONE","itemType":"outputtext"
}
],
"completed":true,
"score":1
}
画像/jpeg 添付ファイルを転送する
この例は、画像/jpeg 添付ファイルをアップロードするための要求/応答を示しています。
curl "https://instance.servicenow.com/api/sn_va_as_service/bot/integration" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--header "token: BOT_TOKEN" \
--data "{
"requestId": "f42f3550-5b44-4cde-aa52-9b6756b3131c",
"clientSessionId": "U94CSJLEN",
"message": {
"attachment": {
"clientAttachmentId": "my-unique-identifier10",
"contentType": "image/jpeg",
"fileName": "MY TEST10.jpg",
"url": "https://image.imagestock.com/image-photo/pink-butterfly-isolated-on-white-260nw-1218104047.jpg"
}
},
"userId": "U94CSJLEN",
"emailId": "admin@example.com"
}"
--user "username":"password"
VA から構成済み応答エンドポイントに送信される応答本文は次のとおりです。
{
"requestId":"f42f3550-5b44-4cde-aa52-9b6756b3131c",
"clientSessionId":"U94CSJLEN",
"message":{
"attachment":{
"headers":{
"Authorization":"Basic amFzbWluZS53YWRod2FuaWE6VGVzdGluZ0AxMjM="
},
"clientAttachmentId":"my-unique-identifier10",
"contentType":"image/jpeg",
"fileName":"MY TEST10.jpg",
"url":"https://image.imagestock.com/image-photo/pink-butterfly-isolated-on-white-260nw-1218104047.jpg"
}
},
"userId":"U94CSJLEN",
"body":[
{
"uiType":"OutputText",
"group":"DefaultText",
"required":false,
"nluTextEnabled":false,
"label":"File got",
"maskType":"NONE",
"itemType":"outputtext"
},
{
"uiType":"OutputText",
"group":"DefaultText",
"required":false,
"nluTextEnabled":false,
"label":"The conversation has ended. If you need help again, type hi.",
"maskType":"NONE",
"itemType":"outputtext"
}
],
"completed":true,
"score":1
}