メインコンテンツまでスキップ
メッセージをすぐにユーザーへ送り、そのまま次へ進みます。

Push Message

Push Message はユーザーへメッセージを返すプロセッサーです。

基本的な使い方​

Push Message は設定されたメッセージを直ちに送信し、次のプロセッサーへ進みます。

設定項目​

ノードのプロパティパネルです。

Push Message のプロパティパネル。Message が必須で、ほかに Template、Flush トグル、Payload

Name​

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

Description​

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

Properties​

Message(必須)​

ユーザーへ送るテキストです。Literal、Expression、Template の値の種類に対応しています。詳しくはExpression の概要 — 値の取得を参照してください。

Template​

メッセージテンプレートの設定で、メッセージの見せ方を定義します。ボタン、画像、クイックリプライなど、より豊かな形式に使います。

Flush​

返信バッファを直ちに空にするかどうかです。既定値は false です。

返信バッファは複数の Push Message のメッセージを蓄積します。Push Message 1、Push Message 2、Push Message 3 と続き、ターンが完了してから初めて空になります。次の図のとおりです。


値挙動向いている場面
false途中のメッセージをすべて蓄積し、ターンの終わりにまとめて送出します既定の対話の挙動、および外部チャットプラットフォーム(LINE、Discord など)
true途中のメッセージごとにバッファを空にします即時の視覚的反応が必要な SDK 製のカスタム UI

注意: 外部チャットプラットフォームは reply token の仕組みが異なるため、これを有効にすると挙動が壊れる場合があります。各プラットフォームの公式ドキュメントを確認してください。

Payload​

メッセージに添えて送る追加の構造化データ(メタデータなど)で、フロントエンドが利用します。

Workflow CRD での設定​

- name: proc-push-error-msg
type: push-message
labels:
display_name: Push Error Message
configs:
- name: message
value: システムが混み合っています。しばらくしてからお試しください。
- name: flush
value: "false"
- name: template
expression: |-
(() => {
return { type: "HINT" };
})()
- name: payload
expression: |-
({ prevError })

flush は真偽値ですが、CRD では常に文字列の "true" / "false" で書きます。

Automation Tool 型のワークフローも type: push-message を使いますが、そちらでは payload のみを受け取り、Response の役割を担います。

接続関係​

Success​

メッセージの送信に成功すると、この接続点から次のプロセッサーへ進みます。

Failure​

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

実際の例​

前のノードが取得した結果をユーザーに返します。

項目値
MessageExpression:low_stock.length + ' 件が在庫僅少です'
Flushオフ

Message は Template モードで書けば、ボタンや画像を含むリッチなメッセージにもできます。

注意事項​

  • Message は Expression と Template の両方に対応し、どちらもフロー内の既存変数を参照できます。
  • Flush はトグルで、このメッセージを即座に送るかどうかを決めます。