メインコンテンツまでスキップ
Automation Tool の実行結果を呼び出し元へ返します。CRD の型コードは Push Message と共通です。

Response

Response は Automation Tool 専用の出力プロセッサーです。

CRD での型は push-message

Response は Bot ワークフローの Push Message と同じ型 push-message を共有します。両者はワークフローの種類で区別されます。automation_tool のワークフローでは payload のみを受け取り、呼び出し元へ結果を返す役割を担います。bot のワークフローでは、ユーザーへメッセージを送る Push Message として message、template、flush、payload を設定します。

CRD で type: push-message を見たときは、まずそのワークフローの種類を確認して、どちらのページに当たるかを判断してください。

基本的な使い方​

Response はワークフロー内のデータを、設定された Payload の形に整えて、Automation Tool の最終的な結果として返します。

設定項目​

Name​

キャンバス上に表示される名前です。ワークフロー内でこのプロセッサーを識別するために使います。

Description​

このプロセッサーの用途を補足し、ワークフローの読みやすさを高めます。

Properties​

Payload(必須)​

返す結果で、Expression で指定します。JavaScript でワークフローの変数を加工し整形します。

Workflow CRD での設定​

型は push-message で、Automation Tool のワークフローでは payload のみを受け取ります。

- name: proc-response
type: push-message
labels:
display_name: Response
configs:
- name: payload
expression: |-
(() => {
return {
result: "Navigation request sent to the user's UI."
};
})()

ツールの終点として使う場合、relationships は通常空の配列にします。

接続関係​

Success​

結果の生成に成功すると、この接続点から次へ進みます。

Failure​

結果の生成に失敗した場合、この接続点から続き、prevError 変数にエラー情報が入ります。

使用例​

データを返す​


Response の payload の例:

(() => {
return {
result: httpResponse.json,
status: 'success',
};
})()

返す結果は agent への説明でもある​

payload はこのツールを呼び出した agent へそのまま渡されるため、単なるデータではなく、agent が結果を解釈する根拠になります。実務では result に、この操作がどこまで進んだのかを明記し、agent が言い過ぎないようにします。

(() => {
return {
result: "Navigation request sent to the user's UI. Whether it takes effect is decided by the client, which may reject an invalid path or filter. Do NOT tell the user that the page has changed; report only that the navigation request was sent. This is a UI-only action, not a user response."
};
})()

これは UI のナビゲーションイベントを送るだけのツールです。実際に効くかどうかはフロントエンドが決めるため、payload では agent に「リクエストを送った」ことだけを報告させ、ページが切り替わったとは言わせません。

注意事項​

  • このノードは automation_tool のワークフローにのみ存在します。同じ CRD 型コード push-message は bot ワークフローでは Push Message で、設定項目はまったく違います。
  • Payload の式は妥当な JavaScript のオブジェクトか値を返す必要があります。