リダイレクトページでは、CrowdHandlerの統合が必要です

ユーザーをリダイレクトする先ページでCrowdHandlerの統合機能が呼び出されない場合、ユーザーのセッションが切断され、ユーザーが「待機室」に戻されてしまうリスクがあります。

特に次のような場合には、これが問題となります:

  1. JavaScript 実装を使用しており、
  2. JavaScriptによる連携によってユーザーをサイトから待合室へ遷移させるのではなく、ユーザーを直接待合室へ誘導しています。

以下の統合機能でも、この問題が発生する可能性があります:

  1. サーバー上でカスタム統合機能を使用していますが、その統合が実行される前に、CDN や .htaccess ファイルなどでリダイレクトが設定されています。
  2. WordPressプラグインを使用していますが、.htaccessファイル、Nginxの設定、またはCDN上でリダイレクトが設定されています。

問題点

ユーザーがリダイレクト先ページに遷移すると、そのユーザーのトークンは「ch-id」パラメータにエンコードされ、URL を通じてサイトに渡されます。

CrowdHandlerとの連携機能は、このパラメータを取得し、ローカルストレージを使用してユーザーのブラウザに保存します。

ユーザーを最初にリダイレクトするページにCrowdHandlerが統合されておらず、ch-idを次のURLに転送しない場合、ch-idが設定される前にユーザーのセッションが失われてしまいます。これは通常、ユーザーをリダイレクトしたURLが直ちに別のURLへリダイレクトする場合に発生します。リダイレクトの際にトークンが渡されない場合、ユーザーには新しいトークンが発行され、キューに戻されてしまいます。

ソリューション

ご利用の用途に応じて、さまざまな解決策があります。

  1. ランディングページがユーザーを即座にリダイレクトする場合、そのリダイレクトで「ch-id」パラメータが確実に引き継がれるようにする必要があります。これは、例えば、インデックスページから特定の言語ページへ自動的にリダイレクトされる場合(例:/en が /en?ch-id=tok_xxxxxxxxxxx になる)などに発生する可能性があります。リダイレクトルールを設定して、すべてのクエリパラメータを引き継げるようにできる場合は、そうしてください。
  2. ランディングページがユーザーを即座にリダイレクトする場合(例:/ から /tickets へ)、かつ /tickets には CrowdHandler の統合機能が実装されているものの、ランディングページには実装されていない場合は、リダイレクト先を / ではなく /tickets にすることを検討してください。
  3. たとえば、ランディングページがhttps://your-domain.com/ticketsであるにもかかわらず、Webサーバーがユーザーをhttps://your-domain.com/tickets/に黙ってリダイレクトしてしまう場合は、リダイレクト先として、末尾にスラッシュをつけた完全なURLを入力してください。