Sirvoyウィジェットを含めるときに「data-callback」を指定することで、イベントをキャッチし、独自のカスタムスクリプトを実行できます(以下の例を参照してください)。通常の場合、「booking_completed」イベントのみに関心があることでしょう。

予約を入れる手順では、以下のイベントが発生します:

  • page_code_required – キーとしてクーポンコードを必要とする予約フォームを表示すると発生します。
  • page_search – 検索フォームを表示すると発生します。追加データ:「user_data」 (arrivalDate, departureDate, totalAdults, category)
  • page_results – 検索結果を表示すると発生します。追加データ:「user_data」 (page_searchと同じです)
  • page_details – ゲスト情報入力ページを表示すると発生します。追加データ:「user_data」 (page_searchと同じです)
  • page_pending – 確認ステップの前でオンライン決済プロバイダーから戻った後、もしくはオンライン決済プロバイダーを使用していない場合にはpage_detailsイベントの後に発生します。追加データ:「予約」(JSONの予約の表示)
  • page_confirmation – 確認ステップにて、オンライン決済プロバイダーから戻った後、もしくはオンライン決済プロバイダーを使用していない場合にはpage_detailsイベントの後に発生します。追加データ:「予約」(JSONの予約の表示)
  • booking_completed – 予約が確定し、確認ページで完了したときに発生します。このイベントは各予約に対して必ず1回のみ発生しますが、「page_confirmation」や「page_pending」のイベントはゲストが任意の支払いを行ってオンライン決済プロバイダーから再びリダイレクトされると、再度発生します。追加データ:「予約」(JSONの予約の表示)

「予約の確認」機能の手順の以下のイベントを追跡することができます

  • page_review_search – 「予約の確認」フォームを表示すると発生します。
  • page_review_booking – 予約の確認ページを表示すると発生します。追加データ:「予約」(JSONの予約の表示)
  • page_review_pending – 予約の確認ページから任意の支払いが行われた後に発生します。このイベントの後、予約の確認ページが再度表示され、「page_review_booking」イベントが再度発生します。追加データ:「予約」(JSONの予約の表示)

以下は、利用可能なさまざまなイベントと関連データを調査するために使用できる一例です。「data-form-id」は必ず貴施設の予約フォームIDに置き換えてください。


<html>
<head>
    <script>
        function customEventHandler(data)
        {
            console.log("Got Sirvoy custom JS event: " + data.event);
            console.dir(data);
        }
    </script>
</head>
<body>
<script async type="text/javascript" data-callback="customEventHandler" data-form-id="your-form-id-here" src="https://secured.sirvoy.com/widget/sirvoy.js"></script>
</body>
</html>

ご注意ください: gallery_init gallery_open イベントは、検索結果ページでフォトギャラリーが使用されたときにも発生します。詳細については、こちらの記事をご覧ください。