Wait for webhookステップは、webhookリクエストを受信するまでworkflowを一時停止し、外部入力が必要なプロセスに最適です。
workflowが外部システム(例えば本人確認のためのサードパーティアプリ)と連携する必要がある場合を想像してください。Wait for webhookでは、外部システムからwebhook応答が送信されるまでworkflowがこのステップで停止します。受信後、タスクは再開し、提供されたデータに基づいて処理を行います。Zendesk連携の場合、webhook応答によるステータス更新や解決が提供されるまで顧客対応を一時停止できます。スムーズなユーザー体験のために、このステップ前に案内メッセージを追加し、待機中に追加質問がある場合は新しい会話を開始するよう促すと良いでしょう。
例
本人確認: サードパーティサービスがユーザーの本人確認を完了するまでworkflowを一時停止します。
支払い確認: 取引を進める前に支払いプロバイダーからのwebhookを待ちます。
注文処理: 在庫システムからの在庫状況更新が届くまで一時停止します。
承認プロセス: サードパーティツールからの承認または拒否ステータスが送信されるまでworkflowを保留します。
Zendesk Customer Updates: webhook応答によるステータス更新やticket解決を待つ間、Zendesk ticketingシステム内でworkflowを一時停止します。
この機能により、workflowは外部システムとシームレスに同期し、手動介入を減らして効率的に保ちます!
workflowに「Wait for webhook」を追加する
workflowに「Wait for webhook」ステップを追加するには:
該当するdeployステップに移動し、workflowを開きます。
次にステップを追加をクリックし、Wait for webhookを選択します。
Wait for webhookブロックを選択して設定します。
workflowをライブに設定します。
Wait for webhookのベストプラクティス
ステップにわかりやすい名前を付けて、ステップ用に作成された一時変数を識別しやすくします。
webhookコールバックで受信するすべてのフィールドをdataオブジェクト内に含めて、Example requestを適切に設定します。
webhookがステップの構造に合ったJSONボディを返すことを確認してください。JSON構造が更新されるとデータは受信されません。設定に不足フィールドがあると、そのフィールドはタスクでアクセスできなくなります。
「コピー」ボタンをクリックしてwebhook URLをクリップボードにコピーします。webhookがトリガーされるサードパーティサイトでは、
conversationIdが期待通りに渡されていることを確認してください。webhook設定によりやり取りが一時停止する場合は、顧客に事前通知してください。待機中の混乱を避けるために案内メッセージを使用しましょう。
注意: webhookエンドポイントは冪等性をサポートしており、リクエストの安全な再試行と重複操作の防止が可能です。リクエスト送信時には一意の値を持つ「Idempotency-Key」ヘッダーを含めてください。UUIDの使用を推奨します。冪等性キーは24時間で期限切れになります。
Zendesk Sunshine Messengerの会話では、適切なSunshine webhookエンドポイントがFinに設定されていることを確認してください。このステップはメッセージをリアルタイムで処理するために重要です。

