この記事では、マルチアプリサブスクリプションの基本的なアーキテクチャについて説明します。
サブスクリプションとアプリケーション
サブスクリプションは、アプリケーションの上のレベルです。すべてのPendoサブスクリプションにはデフォルトのアプリケーションがあり、そこにアプリケーションを追加できます。サブスクリプションにアプリケーションを追加する方法については、ウェブアプリを追加するを参照してください。
Pendoのアプリケーションは一般的に、単体プロダクト、またはより複雑なプロダクトの一部で、通常、ウェブ、iOS、Androidなどの単一プラットフォームに対応しています。このアプリケーションは、特定のプロダクトチームが所有している場合もあれば、独自のコードベースに存在する場合もあれば、プロダクトの他の部分とは別のマーケティング担当者や訪問者がいる場合もあります。
各アプリケーションには、インストールスクリプトに独自のPublic App IDがあります。 このキーの詳細については、「インストールスクリプトのコンポーネント」を参照してください。シングルアプリサブスクリプションは、1つのPublic App IDを使用します。マルチアプリサブスクリプションでは、アプリケーションごとにPublic App IDを持ちます。
マルチアプリサブスクリプションのユースケース
マルチアプリサブスクリプションは、データを総合的に、またはアプリケーションレベルで柔軟に確認したい場合に、プロダクト(アプリケーション)とPendoサブスクリプションを連携させるのに最適な方法と言えるでしょう。以下のような動作が可能です。
- クロスアプリビューから異なるアプリケーションを除外します。
- クロスアプリビューに特定のアプリケーションを含めて、そのサブセットのデータを表示します。
- 一度に1つのアプリケーションを選択して、アプリケーションデータを個別に表示します。
たとえば、プロダクトが複数のプラットフォームで構築されており、モバイルアプリケーションからのデータのみをダッシュボードで表示したい場合、[アプリ(Apps)]フィルターを追加して、複数のアプリケーションを個別に選択するか、特定のモバイルOS(Android、iOS、Windows)に関係なく、すべてのモバイルアプリケーションを表示することができます。
また、マルチアプリサブスクリプションでは、Pendoユーザーにアプリケーションごとに異なる権限を付与できます。これを行うには、サブスクリプション内のアプリケーションごとに異なるアプリレベルの役割を割り当てます。
たとえば、Pendoユーザーが1つのアプリケーションでのみガイドを作成および編集できるようにする場合、そのPendoユーザーには、そのモバイルアプリケーションに対してのみ[ガイド作成者(Guide Creator)]権限を付与し、他のアプリケーションに対しては付与しないようにすることができます。
アプリレベルの役割の詳細については、役割と権限を参照してください。アプリごとに異なる役割を割り当てる方法については、社内ユーザーの管理を参照してください。
始める前に
マルチアプリサブスクリプションには、開始する前に正しく設定しておくべき2つの要件があります:一貫した訪問者IDと、共有メタデータの計画です。
訪問者IDはアプリ間で一貫している必要があります
同じ訪問者IDは、すべてのアプリで常に同じエンドユーザーを識別する必要があります。1234というIDは、App1でもApp2でも同じ人物を意味する必要があります。
アプリがIDを個別に割り当てている場合(1234が2人の異なる人物を指す可能性がある場合など)、次のいずれかが必要です:
- アプリごとの個別のサブスクリプション、または
- 各訪問者を一意に保つための別の識別子。
注:同じユーザーを共有していないアプリ間でIDが重複している場合、あるアプリのメタデータが別のアプリのメタデータを上書きする可能性があります。
アプリ固有のメタデータの追跡
フィールドをアプリごとに一意に保つため、値が競合しないように、各アプリのフィールド名の先頭にアプリ名または略称を付けます。たとえば、すべてのアプリが共有のroleフィールドを送信するのではなく、各アプリが独自のフィールドを送信します:
appAcmeRole appBetaRole appCharlieRole
これらを使用するには、各アプリのPendoインストールコードを更新し、共有フィールドではなく接頭辞付きフィールドを送信するようにします。これにより、各アプリの値はメタデータページで個別に区別され、正確に維持されます。
サブスクリプションレベルで何が起こるか
訪問者、アカウント、プロダクトエリア、セグメント、レポート、内部ユーザー、インテグレーションは、サブスクリプションレベルで処理および保存されます。
サブスクリプションには、単一のデータソース、セキュリティ設定、ユーザー権限があります。各サブスクリプションには、基礎となるすべてのガイダンス、アナリティクス、フィードバックが含まれており、他の個別のサブスクリプションとは連携しません。次のことに注意してください。
- すべての設定、コンテンツ、サービスは、サブスクリプションごとに個別に管理されます。
- ユーザーはサブスクリプション間で共有されません。
- あるサブスクリプションのユーザーは、両方のサブスクリプションへのアクセス権を持っている場合にのみ、別のサブスクリプションのデータにアクセスすることができます。
サブスクリプションは、特定の地域(US、EUなど)を拠点とします。各地域には、さまざまなコンプライアンス要件をサポートする独自のデータセンターがあります。
異なるプロダクトを別々に管理できるようにデータを分離したい場合(例:部門、独自のユーザーアクセス、セキュリティ、コンプライアンス要件)、またはプロダクトのユーザーベースを別々に持っているためにデータを分離したい場合は、複数のサブスクリプションを持つことができます。
アプリケーションレベルで何が起こるか
イベント、ページ、フィーチャー、タグ、ガイド、フィードバックリクエストは、アプリケーションレベルで収集、処理、保存されます。サブスクリプション内の各アプリには、独自のリソースセンターもあります。各アプリのリソースセンターは、同じようにカスタマイズすることも、個別にカスタマイズすることもできます。リソースセンターの詳細については、リソースセンターの概要を参照してください。
サブスクリプション内の各アプリケーションは、[サブスクリプション設定(Subscription Settings)]の[アプリの詳細(App Details)]と[インストール設定(Install Settings)]にある独自の公開アプリIDで識別されます。
複数のサブスクリプションがある場合は、デザイナーを起動してアプリケーションにガイド、ページ、またはフィーチャーを作成する前に、正しいサブスクリプションを使用していることを確認してください。アプリケーション名はビジュアルデザインスタジオ(Visual Design Studio)の右上に表示されます。
機能
訪問者IDはアプリケーション間で保持できますが、Pendoの機能はアプリ固有です。次のことに注意してください。
- あるアプリ用に作成されたガイドは、他のアプリには表示されません。
- ページとフィーチャーは、タグ付けされているアプリにのみ対応します。
- Feedbackのエンドユーザーには、アクセスできる特定のアプリのフィーチャーリクエストのみが表示されます。
サブスクリプション内の1つ、一部、またはすべてのアプリでユーザーの行動を確認できます。つまり、1つのPendoサブスクリプションを複数のアプリケーションで運用しながら、必要に応じてアナリティクス、ガイド、フィードバックを特定のアプリケーションにフィルタリングできます。これは、次のような場合に役立ちます。
- 同じアプリのウェブ版とモバイル版がある場合
- 同じ訪問者を識別できる複数のウェブアプリがある場合
- フォーマットが重複しない一意のIDを渡す複数のアプリ間でデータを比較する必要がある場合
Pendoのドロップダウンメニューでアプリを切り替えることができます。この機能は、ダッシュボードウィジェットおよび行動ツールの高レベルのセグメント化としても使用できます。
セットアップ
各アプリケーションには、独自のパブリックアプリIDがあります。この値を使用して、Pendoサブスクリプションの各アプリケーションのイベントを区別します。これにより、さまざまなプロダクト間でアナリティクス、ガイド、Feedbackを分離し、より詳細に制御できるようになります。
開発チームは、Pendoサブスクリプションの各アプリに対応するアプリキーを使用する必要があります。アプリケーションのPublic App IDを確認するには:
- [設定(Settings)]>[サブスクリプション設定(Subscription Settings)]に移動します。
- [アプリケーション(Applications)]タブを開きます。
- [アプリケーション]リストから該当するアプリを見つけて開きます。デフォルトで[アプリの詳細]タブが開きます。
- [パブリックアプリID(Public App ID)]の行にある32桁の文字列を探してください。
パブリックアプリIDは[インストール設定(Install Settings)]タブでも確認できます。パブリックアプリIDは、インストールスクリプトの一番下に表示される文字列です。
サブスクリプションIDの検索
通常、サブスクリプションIDは、CNAME、CSP、その他のフィーチャーのセットアップに必要です。[サブスクリプション設定(Subscription Settings)]ページに移動した際のURLで、サブスクリプションIDを調べることができます。
その他のリソース
マルチアプリサブスクリプションのベストプラクティスについては、Pendo Academyに掲載している動画をご視聴ください。
マルチアプリサブスクリプションを利用するか、個別のサブスクリプションを複数利用するかの判断材料が必要な場合は、サブスクリプションのアーキテクチャに関する動画をご覧になることをお勧めします。