はじめにトリガーの仕組み

トリガーの仕組み

ページをコピーする

Shopify Flow トリガーの解説:Webhook、変更検知、ポーリング、およびそれぞれが遅延や設定に与える影響について。

トリガーが4つのメカニズムのうちどれを利用しているかを理解すれば、タイミングやセットアップに関するほぼすべての疑問、そしてなぜ発射されたのか、あるいは発射されなかったのかという理由も説明がつきます。

4つのメカニズム

メカニズム トリガー レイテンシー 基準値が必要です 配送
Shopify Webhook 26 ほぼリアルタイム いいえ 保証付き
Webhook + 変更検出 52 ほぼリアルタイム はい 保証付き
世論調査 6 1つの調査期間まで はい 保証付き
ストアフロントのピクセル 14 秒 いいえ 最善を尽くす

1. Shopify の Webhook

Shopify イベントが発生した瞬間にアプリに通知され、アプリはそれを直接 Shopify Flow に転送します。「**ディスカウントの作成」**と「**ロケーションの削除」**は、この仕組みで動作します。

これらのトリガーは、権限の設定以外に特別な設定は必要なく、それぞれ「**トリガー」**ページに個別の切り替えスイッチが用意されています。

2. Webhook と変更検出

これが最大のグループであり、このアプリが役立つ理由となっています。Shopifyのproducts/update Webhookは、商品の編集が行われるたびに発火しますが、何が変更されたかについては明示されません。そのため、このアプリでは:

  1. 必要なフィールドのスナップショットを保存し、
  2. 受信する各Webhookをそのスナップショットと照合し、
  3. その特定のフィールドが実際に変更された場合にのみ、その特定のトリガーを発火させます。

このようにして、「**Product Title Changed」**は、タイトルの編集時にはトリガーされ、価格の編集時にはトリガーされないようになります。これは、両方のイベントが同じ「Shopify」というWebhookとして送信されるにもかかわらずです。

3. ポーリング

Shopify ブログ、ブログ記事、ページ、注文の表示ステータス、ディスカウントの有効期限、および会社のロケーションに基づく税設定については、Webhookを発行しません。これら6つのトリガーについては、アプリがスケジュールに従って確認を行い、差異が検出された際に通知を発信します。

ポーリングトリガーは、他のトリガーと同様に「**トリガー」**ページから有効にできます。即座に発動するのではなく、1回のポーリングサイクル分のレイテンシを要します。

4. ストアフロント・ピクセル

Shopify 購入者の行動(商品ページの閲覧、カートへの商品追加、検索結果が何も表示されなかった場合、チェックアウト時のエラー表示など)については、Webhookは送信されません。これら14のトリガーについて、アプリはストアフロントにウェブピクセルをインストールし、購入者のブラウザからイベントを報告します。

そこから3つのことが導き出され、それらがこれらのトリガーを他の3つのメカニズムとは一線を画すものとしています:

  • **オプトイン。**ストアフロントの動作へのアクセス権限が必要であり、開始時にオンになっている必要があります。 オフ。これを使用するShopify Flowワークフローを有効にすると、他のトリガーと同様にオンになります。この 最初のものがオンになるとピクセルがインストールされ、何もオンになっていない間は何も送信しません。
  • **同意に基づく制限。**分析に関する同意をしていない買い物客は、 ブラウザでは、そのイベントが当方に届くことはなく、コストもかからず、ワークフローも開始されません。
  • **最善を尽くします。**タブが閉じられたり、接続が切断されたり、広告ブロッカーが動作したりすると、イベントは 決して完了せず、再試行もありません。これらをシグナルやリアクションには使用できますが、決して イベントを見逃してしまうことは、正確性の問題となります。

また、これらのイベントは管理イベントよりもはるかに発生件数が多くなります。有効にする前に、ストアフロントのトリガー をご確認ください。

ワークフローに何が届くのか

フィールドレベルのトリガーは、新旧両方の値を返すため、追加のルックアップを行うことなく、変更そのものを条件として分岐処理を行うことができます:

yaml
Old price: 19.99
New price: 24.99
SKU:       WIDGET-BLUE-M
Shopify Flowの「変数を追加」パネルに、oldPrice、newPrice、delta、percentChange、directionを表示するようにしてください
Shopify Flowには、価格変動に関する以下の情報が渡されます:変更前後の値、その差、パーセンテージ、および変動の方向です。

リスト形式の変更内容は、カンマ区切りのテキストではなく、構造化されたオブジェクトとして提供されるため、Shopify Flow内でそれらを反復処理したり、分岐処理を行ったりすることができます。注文ラインアイテムの変更、出版物の変更、および会社・ロケーションごとの免税措置は、すべてこの仕組みで処理されます。

注文と重複

  • イベントはShopifyのイベントIDに基づいて重複排除されるため、再配信があっても、あなたの ワークフローを2回実行します。
  • このアプリでは、ストアごとの処理速度に制限が設けられているため、数千件もの商品をまとめて編集することはできません ワークフローに過度な負担をかけることはありません。イベントはキューに入れられ、破棄されることはありません。
  • 5,000件の商品を変更する一括処理では、5,000件のイベントが発生し、5,000を消費します。 毎月の上限のうち。詳細は プランと利用方法 をご覧ください。
  • ストアフロントイベントでは、短い期間内に同じページビューが繰り返し発生した場合、それらを統合し、 2つの訪問トリガーにより、お客様または会社ごとの訪問全体が1つのイベントに集約されます。