Keyboard shortcuts

Press or to navigate between chapters

Press ? to show this help

Press Esc to hide this help

SOP ファンイン: AMQP

AMQP の配信は SOP の実行を開始できます。エイリアスが SOP ディスパッチモードで実行される場合、AMQP コンシューマーは各配信を SOP イベントに変換し(ルーティングキーがイベントトピックになり、メッセージボディがペイロードになります)、エンジンにディスパッチします。

トランスポート側(ブローカー接続、キュー、エクスチェンジ、TLS)は AMQP channel で設定します。このページではトリガーについて説明します。配信がエージェントループ、SOPエンジン、またはその両方を駆動するかを決定するディスパッチモードは、チャネルの dispatch フィールドです。

トリガー

AMQP 配信。ライブ: SOP ディスパッチ モードで AMQP コンシューマーによって配信されます。

フィールドdefault意味
conditionstring?null配信ボディに対して評価される任意の式。
routing_key*stringルーティングキーフィルター(トピックエクスチェンジのセマンティクス):.区切りの単語、

SOP を読み込んで検証する:

定義

Syntax の説明に従い、amqp トリガーで SOP を作成してください。上記のトリガーフィールドはサポートされているキーです。このページではファイル全体を順に説明します。

検証

zeroclaw sop validate

検査

zeroclaw sop list
zeroclaw sop show <name>

マッチング

routing_key は AMQP のトピックエクスチェンジのセマンティクスを使用します。キーは . で区切られた単語で、* は正確に1つの単語に一致し、# は0個以上の単語に一致します。配信本文は SOP イベントペイロードに転送され、オプションのトリガー condition で利用できます。ステップコンテキストは、上限が設定され、サニタイズされ、フレーム化された形式を受け取ります。$.value > 85 のような JSON パスの condition では、パブリッシャーが JSON 本文を送信する必要があります。

実行する

チャネルの dispatch フィールドを SOP モード(sop または sop_and_agent_loop)に設定し、SOP を読み込んでから、トリガーが一致するルーティングキーでメッセージをエクスチェンジにパブリッシュします。コンシューマーは配信をイベントに変換し(ルーティングキーをトピックに、ボディをペイロードに)、それをディスパッチします。読み込まれた各 SOP のうち、routing_key パターンが一致し、かつ(存在する場合)condition がボディに対して成立するものについて、実行が開始されます。

何も起動しない場合は、dispatch が SOP モードであること、キューがバインドされていてルーティングキーが実際にコンシューマーに届くこと、および condition が一致することを確認してください。fan-in 概要のトラブルシューティング表 を参照してください。

承認して観察する

チェックポイントに到達した実行は WaitingApproval として一時停止します。CLI(zeroclaw sop listzeroclaw sop approve)またはゲートウェイAPIの承認エンドポイント(GET /admin/sop/pendingPOST /admin/sop/approvePOST /admin/sop/deny)を介した帯域外操作で、これらをクリアまたは確認できます。

関連項目も参照してください