JavaScript 統合のユースケースと制限事項
CrowdHandlerのJavaScript統合機能は、ウェブサイトに待機室を追加するための最も迅速かつ簡単な方法ですが、いくつかの制限があります。この記事では、JavaScript統合機能のユースケースをいくつか紹介し、主な制限事項について説明した上で、今後の対応策を提案します。
主なポイント
JavaScriptの統合が正常に機能するためには、ユーザーがサイトにアクセスした際に最初に表示されるページが読み込まれた状態を維持する必要があります。
JavaScript 統合は、次のような場合に最適です:
- ダッシュボードを実際に操作して、CrowdHandlerという製品についてできるだけ早く詳しく理解する
- 待合室向けの概念実証(PoC)や社内向けデモの開発
JavaScript 統合は、以下の用途には適していません:
- サーバーの負荷を最優先事項とするプロジェクト
- キューの安全性と公平性が極めて重要なプロジェクト
JavaScriptによる連携が適さない場合は、他の連携方法もご用意しています。
JavaScript 統合の活用事例
当社は、ウェブサイトに待合室機能を追加するためのシンプルで使いやすい方法として、JavaScript統合機能を開発しました。これにより、プロダクトチームやサイト運営者は、CrowdHandlerを迅速かつ効率的にサイトに導入することができます。多くのチームにとって、開発者やエンジニアリングチームにチケットを発行する必要なく、数分でCrowdHandlerを稼働させることが可能です。
JavaScript 統合の最適な活用例をいくつかご紹介します
- 他の依存関係を先に確認することなく、基本的な待合室を設定する必要があります(エンジニアリング部門にチケットを発行する必要はありません!)。
- チームにCrowdHandlerを活用した提案をしたいのですが、彼らに見せるためのデモを、手間をかけずに作成する方法が必要です
- このプラットフォームを早く使い始めて、その仕組みを学びたいんです。完全な統合は後で行います
- 一部のユーザーの処理速度を少しだけ遅くすればいいだけです。これは機密性の高いキューではないため、ユーザーが「待機室」を迂回できることは問題ありません。
JavaScript 統合の制限事項
JavaScript 統合は、以下の条件が満たされている場合にのみ機能します:
- ユーザーはウェブページにアクセスできます(サーバーは稼働し続けていなければなりません)
- JavaScript を実行できます
当社はJavaScript統合機能を全面的に支持しており、可能な限り最高の待合室環境を提供できるよう開発してきましたが、いくつかの重要な制限事項については透明性を保ちたいと考えています。これらの制限はCrowdHandlerに限ったものではなく、待合室ソフトウェアにJavaScriptを使用する際の根本的な課題です。
JavaScriptの統合機能は、ウェブサイトが稼働し続けている場合にのみ機能します
JavaScript 統合機能では、待合室へのリダイレクトが行われる前に、サーバーがウェブサイトへの最初のアクセスに対応できる必要があります。CrowdHandler はランディングページ以降のページへのアクセスを管理できますが、ランディングページ自体へのトラフィックによってウェブサーバーが応答しなくなってしまうと、待合室がまったく機能しなくなってしまいます。
トラフィックのピーク時の管理が、お客様が当社の「Waiting Room」への導入をご検討いただく主な理由の一つであることを承知しております。こうした状況においてCrowdHandlerを最大限に活用していただくため、当社の他の連携機能についてもぜひご検討いただくことを強くお勧めいたします。
JavaScript 統合機能は、当社の JavaScript が実行できる場合にのみ動作します
JavaScript 統合機能を使用する際、JavaScript が実行できない場合、ユーザーは待合室をスキップしてしまいます。もちろん、ページの読み込みは JavaScript の読み込みにおける最大の障壁となります。以下に、CrowdHandler JavaScript が実行されないその他の理由をいくつか挙げます:
- 一部のウェブユーザーは、ウェブブラウザでJavaScriptを無効にしています。 JavaScriptを無効にしているユーザーの数は少ないものの、無視できないほど存在すると私たちは考えています。確かな数値は把握できていませんが、さまざまなオンライン情報源では0.2%から2.0%という数字が挙げられています。この数値は国によって、またユーザーの種類によっても異なるようです。例えば、TorのユーザーはJavaScriptを無効にして利用している可能性が高く、一部の職場ではJavaScriptの使用を禁止する方針を定めている場合もあります。
- 技術に詳しいユーザーは、あなたの「待合室」を迂回できる可能性があります。技術に詳しいユーザーが「待合室」に留まることを望まない場合、JavaScriptの統合機能を回避するために利用できる手法は多岐にわたります。
- JavaScriptの統合機能は、サードパーティ製アプリケーションによってブロックされる可能性があります。多くのユーザーは、JavaScriptの実行を妨げたり完全にブロックしたりする可能性のある、さまざまな補助アプリケーションやプラグインを実行しています。こうしたサービスは、プライバシーやセキュリティを重視している傾向があります。それらは、すでに認識されているスクリプトや、特定の一般的な特徴を持つスクリプトに対して動作します。 また、ユーザーはこれらのアプリ内で、特定のサービスをブロックリストに追加できる場合もあります。デフォルトでCrowdHandlerをブロックする具体的なサービスは現時点では把握していませんが、その可能性は残っており、考慮に値する点です。
こうしたシナリオに基づけば、待合室をスキップするユーザーはごく少数にとどまると予想されますが、実際には、いずれのシナリオもキューの公平性を損なうことになります。そのため、当社では他の連携機能を提供しているのです。
今後の手順
-
プロジェクトにおいてキューのセキュリティと公平性が極めて重要である場合は、JavaScript 統合は CrowdHandler を実行するための最適な方法ではありません。当社の他の統合方法をご検討ください。
-
プロジェクトでJavaScript統合を実行する必要がある場合は、トラフィックの急増に備えてウェブサイトの最適化に時間を割いてください:
- サイトへのアクセス元は、キャッシュが適切に保存されるようにすることをお勧めします。また、ユーザーを「待合室」へ誘導する専用のランディングページを設けることも検討してみてください。
- トラフィックを誘導するために使用しているキャンペーンリンクの中には、一意のユーザー追跡パラメータが追加されているものがあり、それがキャッシュ戦略の妨げになる可能性があることにご注意ください。
- 最良の結果を得るためには、CrowdHandlerのJavaScriptを早めに読み込む必要があります。つまり、ページのソースコードの早い段階で配置する必要があります。
- Googleタグマネージャー経由で読み込む場合は、GTMの呼び出しが行われるタイミングに注意してください。多くの開発者はGTMコンテナを最後に配置するため、そのような場合はCrowdHandlerスクリプトを手動でインストールした方が良い場合があります。
- マーケティング資料では、ウェブサイト上のページではなく「待合室」のリンクを使用してください。これにより、ユーザーが待機列に入るまで、ページへの負荷を軽減できます。
- ユーザーを「待機室」に誘導する上で重要な指標はTTFB(Time to first byte)であることに留意してください。これは、ウェブサーバーがユーザーにウェブページを送信するまでに要する時間です。